سؤال

أنا أقوم ببناء WebApp الذي يحتوي على الخصائص التالية:

  1. إنه يحتوي فقط على عدد صغير من الصفحات، والمنزل، اتصل بنا، عن، الغناء، إلخ.
  2. يحتوي كل مستخدم على صفحة مستندة واحدة مستندة تسمح لهم بسحب / إسقاط / معالجة عناصر DOM.
  3. عندما ينتهي المستخدم من المعالجة بالعناصر، يمكن أن يتم إرسال العناصر التي يتم بها إرسال العناصر والعناصر عبر JSON إلى البرنامج النصي PHP على الخادم. يمكنهم أيضا تحميل JSON المحفوظة مسبقا.

أساسا: عدد قليل جدا من الصفحات مع معلومات ثابتة بنسبة 90٪. صفحة واحدة مع عمل جانب العميل والحكم على الكثير من الحصول على / نشر JSON.

لقد بنيت POC من هذا باستخدام PHP / SMARTY، JQUERY و MYSQL. يتم تخزين تفاصيل المستخدم في MySQL وما هي بيانات JSON. يتم تخزين صفحات الويب مؤقتا بواسطة Smarty على القرص.

الآن أفكر في قابلية التوسع والسؤال الواضح يجب أن أقوم بتخزين بيانات JSON التي تم تغييرها غالبا في MySQL أو يجب أن أستخدم memcachedb أو بعض مخزن القيمة الرئيسية الأخرى؟ هل تذهب للحصول على خيار MySQL سهل أو إدخال مخزن قيمة رئيسية الآن أو هل تنتظر لمعرفة ما إذا كانت مشكلة النطاق تنشأ؟ هل سأوصل إلى حد بعيد إلى حد ما حيث mysql هو عنق الزجاجة؟

أخطط لاستضافة هذا على slicehost لتبدأ ثم نقله إذا لزم الأمر.

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

المحلول

السؤال هو، هل ستكون هناك أي عمليات بحث بناء على هذه القيم أم لا؟ هل ستكون هناك تحديثات لقيم محددة في مستوى قاعدة البيانات أم لا ... ستكون البيانات الصوتية أو JSON أسرع وأكثر كفاءة (حكيمة تخزين) إذا كان كل ما تفعله هو سحب السلسلة بأكملها وليس لديك متطلبات للاستعلام أو تعديلها هو - هي.

بناء على كيفية توفير نطاق، قد ترغب في الاحتفاظ بنية مفتاح / قيمة جنبا إلى جنب مع تمثيل بيانات مسطح لغرض البحث.

ضع في اعتبارك أيضا استخدام Apache AB لبعض المعايير والحصول على الأفكار حول كيفية تأثير التغييرات الخاصة بك إخراجك المتزامن.

حظ سعيد :)

نصائح أخرى

بقدر ما يتعلق الأمر JSON، فلن يحدث فرقا: لا أرى كيف يمكنك تحسين تخزين هذه البيانات. أعتقد أن السؤال يتلخص إلى "مدى تعقيد بيانات المستخدم؟". إذا كان هناك رسم بياني اجتماعي ضخم متصل بمفاتيح RDBMS الأجنبية، فمن الصعب جدا تعيين هذه البيانات إلى متجر قيمة رئيسية، بل لن أقدم الجهد الآن. ومع ذلك، إذا كانت بيانات المستخدم هي معلومات ملف تعريف مسطحة فقط، فسأفضل الانتقال إلى مخزن قيمة رئيسية الآن، من أحدث، قبل استخدام العديد من ميزات RDBMS.

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