سؤال

أرغب في نشر موقع ويب على خوادم Amazon ، ذلك:

  1. يدير Cakephp
  2. يستخدم MySQL لتخزين البيانات
  3. يتيح للمستخدمين تحميل الصوت من خلال Flash (حاليًا باستخدام خادم وسائط الفلاش المستضافة) ، والاستماع إلى الملفات لاحقًا

هل أحتاج إلى EC2 من Amazon للموقع ، RDS لقاعدة بيانات MySQL ، و CloudFront لـ FMS؟ أود حقًا تجول في الخدمات التي يجب أن أستخدمها.

شكرًا.

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

المحلول

بادئ ذي بدء ، تحتاج إلى خدمة EC2 من أجل الحصول على جهاز افتراضي ، حيث يمكنك تثبيت Apache و PHP وتطبيق الويب الخاص بك.

ثم تحتاج أيضًا إلى خادم قاعدة بيانات ومستودع بيانات لملفات الوسائط. الطريقة الموصى بها هي بالضبط ما تقترحه: RDS لـ MySQL و CloudFront كمستودع للملفات.

في البداية لم تتوفر أي من الخدمات المذكورة أعلاه (RDS و CloudFront وحتى EBS). ليس لدى المطورين أي وسيلة لاستخدام قاعدة بيانات MySQL ، لأنه حتى لو تم تثبيتها في مثيل EC2 ، فإن المثيل غير مضمون للبقاء مستيقظًا وإذا فقدت المثيل ، يتم أيضًا فقدان البيانات. لهذا السبب تم تقديم EBS. لقد أنشأت مساحة تخزين مثبتة مع ثبات مضمون يمكنك الوصول إليه من مثيل EC2. من الناحية النظرية ، يمكنك تثبيت MySQL هناك واستخدامه لتخزين ملفات الفلاش. إذا كنت ترغب فقط في تقديم الملفات من خلال بروتوكول HTTP ، فلا توجد مشكلة في استخدام EBS.

ومع ذلك ، فإن CloudFront لديه بعض المزايا:

  • يتم توجيه المستخدمين تلقائيًا إلى أقرب موقع حافة للتسليم عالي الأداء للمحتوى الخاص بك.
  • يمكنك أيضًا استخدامه لدفق المحتوى من خلال بروتوكول RTMP.
  • لا داعي للقلق بشأن حجم التخزين. مع EBS ، تقوم بإنشاء تخزين بحجم محدد. قد تكون هذه مشكلة إذا اكتشفت لاحقًا أنك بحاجة إلى مزيد من التخزين. مع CloudFront ، يتم تثبيت الملفات في S3 ولا داعي للقلق بشأن حجمها.
  • لا تضيع سعة خادم الويب. إذا كنت تستخدم EBS ، فسيتم تقديم الملفات بواسطة الخادم في EC2.

يمكنك أيضًا استخدام S3 ، لكنك لن تتمكن من استخدام بروتوكول RTMP وستحتاج إلى إنشاء روابط لملفاتك يدويًا. أيضًا ، لن يكون من الممكن استخدام اسم المجال الخاص بك للملفات.

يتمتع RDS أيضًا ببعض المزايا على تثبيت MySQL في EC2 ، EBS:

  • النسخ الاحتياطية لقاعدة البيانات الآلية
  • يمكنك مراقبة قاعدة البيانات الخاصة بك باستخدام Amazon CloudWatch (خدمة مجانية)

نصائح أخرى

تحتاج إلى EC2 لإطلاق المثيل وإنشاء خادم المصباح الخاص بك. RDS جيدة إذا لم تكن بحاجة إلى إدارة MySQL DB بنفسك ، ولكن عامل الحد من RDS هو أنه لا يمكنك الحصول على تكرار DB.

للتخزين المستمر ، يمكنك استخدام EBS أو S3 لملف البيانات.

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

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