بيثون / الملتوية الخادم متعددة - ما هو أكثر كفاءة؟

StackOverflow https://stackoverflow.com/questions/471660

  •  19-08-2019
  •  | 
  •  

سؤال

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

وA) عملية مدير (واحد الذي يحمل اتصالات مأخذ التوصيل الفعلي) يضع تلقي الحزم في قائمة انتظار المشتركة (واحد من وحدة المعالجة المتعددة)، والعمليات المنفذة سحب الحزم من قائمة الانتظار، وعملية لهم وإرسال يؤدي مرة أخرى إلى العميل.

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

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

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

المحلول

وأعتقد أن B إشكالية. إن موضوع تشغيل فقط على وحدة المعالجة المركزية واحدة، وحتى لو كان يدير العملية، وموضوع لا يزال قيد التشغيل. (أ) قد يكون من الأفضل.

فمن الأفضل في محاولة لقياس سواء من حيث الوقت ومعرفة أي واحد هو أسرع واحد الذي موازين جيدا. ومع ذلك، وأنا أكرر أنني أشك جدا أن B سوف النطاق أيضا.

نصائح أخرى

وأعتقد أن "A" هو الجواب الذي تريده، ولكن لم يكن لديك لتفعل ذلك بنفسك.

هل تعتبر أمبولة ؟

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