هيكل الدليل المثالي لتطبيق الويب
-
27-09-2019 - |
سؤال
أنا على وشك إنشاء موقع ويب قائم على المستخدم وسيتعين عليه تخزين الصور والمستندات والبيانات الأخرى لكل مستخدم.
إذا أخذت رقمًا سخيفًا مثل 1000 000 000 مستخدم ، فأنا أعتقد أن من مجلد واحد مع 1000 000 000 لن يكون أسرع شيء في العالم! لذلك كنت أفكر في خلق شيء مثل
المستوى الأول: [AZ] المستوى الثاني: [AZ] المستوى الثالث: [AZ
لذلك سيكون بوبي في/ب/س/ب/بواسطة
ولكن هذا يعني أيضًا أنه لن يتم نشره على equaly ، لأنه سيكون هناك عدد قليل جدًا من المستخدمين بدءًا من AZ وغيرها الكثير مع AM و S و L ...
لذلك كنت أفكر في استخدام معرف المستخدم مثل "000000000001" ، "000000000001" إلخ ...
المستوى الأول: [000-999] المستوى الثاني: [000-999] المستوى الثالث: [000-999
لذلك ، سيتم تخزين بيانات المستخدم 000000000001 في/000/000/000/001 ، ثم سأكون متأكدًا من حصوله على مجلد 1000 في كل مستوى كحد أقصى.
ماذا تفكر يا رفاق في الأمر ، ماذا يجب أن أفعل أو لا أفعل؟
سيقوم الخادم بتشغيل CentOS 5.4 مع ext3 على RAID 1 ، إذا كان I/O سيئًا جدًا ، فمن المحتمل أن أذهب إلى RAID 10.
المحلول
توفر وظيفة التجزئة وسيلة لتوزيع كميات كبيرة من البيانات عبر بنية يمكن البحث بها بسهولة.
انظر هذا السؤال ذي الصلة: لماذا تستخدم التجزئة لإنشاء أسماء مسارات لمجموعات كبيرة من الملفات؟
وأيضًا محاولة النظر من خلال نتائج Google دليل التجزئة.