سؤال

سؤالي يتعلق ببساطة بالفرق في الأداء بين المقبس في ج وفي بيثون. نظرا لأن بناء Python الخاص بي هو Cpython، أفترض أنه مماثل، لكنني فضولي إذا كان لدى شخص ما معايير "حقيقية"، أو على الأقل رأي أدلة على الأقل.

منطقتي على هذا النحو:

  • ج المقبس أسرع بكثير؟ ثم اكتب ملحق ج.
  • لا / بالكاد فرق؟ استمر في الكتابة في بيثون ومعرفة كيفية الحصول على التحكم في مستوى الحزمة (SCALAY؟ DPKT؟)

أنا متأكد من أن شخصا ما يريد أن يعرف إما السياق أو الفضول. أخطط لبناء نوع من الوكيل لنفسي (وليس لتصفح الإنترنت، عدم الكشف عن هويته، إلخ) وسيقوم بربط التطبيق الذي أريد استخدامه مع منفذ معين. ثم، سيتم وضع جميع الحزم على منفذ المذكور، ورأس العنوان المعدل، ثم أرسل، إلخ، إلخ.

شكرا مقدما.

هل كانت مفيدة؟

المحلول

بشكل عام، مقابس في بيثون أداء فقط. على سبيل المثال، يتم كتابة المرجع المرجعي لخادم Tracker Bittorrent في Python.

عند القيام بعمليات الشبكات، عادة ما تكون سرعة الشبكة عامل الحد. وهذا هو، أي اختلاف صغير ممكن في السرعة بين C و Python's Code مطمئن تماما من خلال حقيقة أنك تقوم بذلك الشبكات من نوع.

ومع ذلك، فإن وصفك لما تريد القيام به يشير إلى أنك تريد تفتيش وتعديل IP الفردي الحزم. وبعد هذا يتجاوز قدرات مكتبات الشبكات القياسية في بيثون، وهو في أي حال عملية تعتمد على نظام التشغيل للغاية. بدلا من السؤال "ما هو أسرع؟" سوف تحتاج إلى اسأل أولا "هل هذا ممكن؟"

نصائح أخرى

أعتقد أن C سيكون أسرع، لكن Python سيكون أسهل كثيرا في إدارة واستخدامه.

سيكون الفرق صغيرا جدا، فلن تحتاج إليه إلا إذا كنت تحاول إرسال كمية الكتلات من البيانات (شيء غبي مثل 1 مليون جيجابايت / ثانيا)

جو

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top