سؤال

بالنسبة لموقع ويب مثل reddit الذي يحتوي على الكثير من الأصوات لأعلى/لأسفل والكثير من التعليقات لكل موضوع، ما الذي يجب أن أتبعه؟

Lighttpd/Php أو Lighttpd/CherryPy/Genshi/SQLAlchemy؟

وبالنسبة لقاعدة البيانات، ما الذي يمكن أن يكون أفضل/أسرع في MySQL (4.1 أو 5؟) أو PostgreSQL؟

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

المحلول

لا أستطيع أن أتكلم على السؤال / كيو الخلية كما لدي خبرة محدودة مع بوستجرس، ولكن مشروع بحث الماجستير نظري حول المواقع عالية الأداء مع CherryPy، وأنا لا أعتقد أنك سوف تكون بخيبة أمل إذا كنت تستخدم CherryPy لموقعك. يمكن أن حجم بسهولة إلى الآلاف من المستخدمين في وقت واحد على الأجهزة السلعية.

وبطبيعة الحال، فإن الشيء نفسه يمكن أن يقال عن PHP، وأنا لا أعرف من أي معايير معقولة مقارنة PHP والأداء CherryPy. ولكن إذا كنت أتساءل عما إذا CherryPy يمكن التعامل مع موقع حركة المرور العالية مع عدد كبير من الطلبات في الثانية، فإن الجواب هو بالتأكيد نعم.

نصائح أخرى

والإعداد المثالي أن تكون قريبة من <لأ href = "http://www.igvita.com/2008/02/11/nginx-and-memcached-a-400-boost/" يختلط = "نوفولو noreferrer" > هذا :

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

وهذا كله ينطبق تماما ليس فقط لصفحات الويب، ولكن لAJAX الاستعلام / الردود.

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

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

وفيما يتعلق بمسألة DB، وانا اقول كيو المقاييس افضل ويحتوى على سلامة البيانات أفضل من الخلية. لموقع صغير قد يكون الخلية أسرع، ولكن من ما سمعت أنه يبطئ بشكل كبير من حيث حجم قاعدة البيانات ينمو. ( ملاحظة: أنا لم تستخدم الخلية لقاعدة بيانات كبيرة، لذلك ربما يجب عليك الحصول على رأي ثان حول قابلية لل) ولكن بالتأكيد كيو جداول جيدا، وسيكون خيارا جيدا لارتفاع حركة المرور الموقع.

سوف تحتاج إلى مزيد من البيانات.كان لدى جيف بعض المقالات حول نفس المشكلات وكان الجواب هو الانتظار حتى تواجه مشكلة في الأداء.

لنبدأ - من يستضيف وما هو المتاح لديه؟ما هي مجموعات مهاراتك الموهوبة في المنزل؟هل ستتعاقد مع شركة خارجية؟ماذا يوصون؟مشروع جديد تمامًا مع فريق يرغب في تعلم إطار عمل جديد؟

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

بمجرد أن يكون لديك فكرة أفضل عن متطلبات البيانات وتدفقها، اعمل على تصميم قاعدة البيانات.هناك الكثير من القواعد التي يجب اتباعها ولكن أحد أفضلها هو اتباع قواعد التطبيع (نعم أنا رجل قواعد بيانات، لماذا؟)

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

واود ان اذهب مع إنجن إكس + PHP + xcache + كيو

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