Twitter: mohdulblog

كيف تختار الخدمات المناسبه لك بعنايه ؟

 

 


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


أولا: تحليل متطلبات السكربت (البرنامج) :

السكربت سواء تم برمجته بشكل مسبق ومكتمل او انه في طور
البرمجة ,يجب أن تؤخذ بعين الاعتبار العناصر التالية :
1. عدد زوار الموقع(بشكل تقريبي ).

2. نوع الخدمات المقدمة للزائر.

3. لغة البرمجة المستخدمة.

4. وقت تسليم المشروع.

5. تكلفة المشروع(المبلغ المخصص له).

 توجد عدة عناصر اخرى سيتم شرحها لاحقا مرورا بالخطوات التالية

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

ثانيا: اختيار الهاردوير للسيرفر

 (العتاد كما يسميه البعض)



استنادا للعناصر التي تم ذكرها  سابقا ,يمكننا تحديد جميع مواصفات السيرفر في
هذه المرحلة بشكل مبدئي و ليس بدرجة عالية من الدقة لأنه كلما كثرت المواصفات
وزادت زاد مستوى الأداء .وقد نصل لمرحلة معينة لا يزداد فيها مستوى الأداء
لاعتماده على عناصر أخرى غير الهاردوير ومواصفاته .   نوع المعالج , سرعه
المعالج , نوع وسرعه الرام , نوع وسرعه الهاردسك , سرعه كرت ألشبكه وسرعه
الاتصال جميعها يتم اختيارها بناء على العناصر التي تم ذكرها في الخطوة الأولى
. على سبيل المثال لو افترضنا أننا نملك شركه استضافه بسيطه مكونه من 50 موقع من مواقع صغيره – متوسطه الحجم من حيث الزوار والضغط
وتقدم خدمات بسيطه اشبهه بكونها صفحات ثابته , في هذه الحاله نحتاج معالج من المعالجات المتوسطه القوه مثال Core 2 Duo ليس بالضروره i7 او i5 , بالنسبه للرام فهي العامل الاساسي وتم ذكر تفاصيل اختيارها في القسم التالي بالنسبه لسرعه الرام قد يخفى على بعضكم ان الرام تختلف بالسرعه حيث بعض الانواع تكون بسرعات مختلفه 66 , 100 , 133 MHz تختلف اختلاف جذري من ناحيه الاداء في حالتنا هنا المتوسط يعتبر معقول وهو 100
الهاردسك , الهاردسك انواع كثيره حاليا يوجد نوعان منتشره وهم SATA,SAS ساضع بجدول الفروق الجوهريه بين الاثنين :

 

 

\ SAS SATA
السرعه 15000 RPM 7200RPM
التأخير 5.7 جزء من الثانيه 13 جزء من الثانيه
الكتابه\القراءه اما كتابه او قراءه كتابه وقراءه بنفس الوقت


للمثال المذكور ممكن استخدام ساتا يفي بالغرض لكن لاداء افضل نستخدم ساس لنظام التشغيل ونستخدم ساتا للتخزين الكبير لانه ارخص بالسعر

واكثر بالحجم
 .

 

ثالثا: اختيار الويب سيرفر

 ( خادم الويب )

وذلك بناء على عاملين مهمين هما عدد الزوار ونوع الخدمة المقدمة
, بالنسبة لعدد الزوار للموقع , لو افترضنا أن موقعا عدد زواره اكثر من
1000 في نفس الوقت ,إذا تم اختيار سيرفر أباتشي سيكون خيارا متعب من ناحية
الرام حيث ان كل مستخدم يحتاج قرابة 2 ميغا من الرام فاقل رام نحتاجها في
هذه الحالة هي 3-4 جيجا رام , بالنسبة لنوع الخدمة المقدمة ينبغي أن نتساءل
أولا عن نوع صفحات الانترنت المقدمة هل هي بسيطة و ثابتة ؟,هل ستقدم خدمات
تقوم بحسابات واسترجاع بيانات ؟ ,هل ستقوم بتوفير محتوى فيديو أو صوتي
كاليوتيوب وغيرهم ؟   للاجابة على هذه الاسئلة ينبغي ذكر نوعين رئيسين
من الويب سيرفر الاول يخدم الملفات المتغيره ( الداينمك ) كصفحات الـ بي اتش بي وغيرها والاخر يخدم الملفات الثابته ( الستاتك ) كملفات الفيديو والصوت والصور , الاباتشي يعتبر من افضل السيرفرات بخدمه الملفات المتغيره , في هذا الجدول فروقات بالاداء والمميزات بين بعض انواع الخوادم:

 

Apache

Nginx

Lighttpd

IIS

/

process-based server

لكل طلب يتم فتح نسخه جديده من البرنامج

asynchronous server

نسخه واحده من البرنامج لكل الطلبات

asynchronous server

نسخه واحده من البرنامج لكل الطلبات

Architectureالبناء

1000req/sec

10,000req/sec

10,000req/sec

143req/sec

concurrent requests

الطلبات في نفس الوقت

Memory consuming

يستهلك الذاكره

Save Memory

يقلل استخدام الذاكره

Save Memory

يقلل استخدام الذاكره

Performance

الاداء

  • Static file serving

    يخدم الملفات الثابته

  • SSL/TLS support

    يخدم بروتوكول التشفير

  • Virtual hosts
  • Reverse proxying
  • Load balancing

    توزيع الضغط

  • Compression

    ضغط الملفات

  • Access controls
  • URL rewriting
  • Custom logging
  • Server-side includes
Including Apache and Lighttpd featuresيحتوي على مميزات اللايتباد والاباتشي
  • IPv6

    يدعم اي بي الاصدار 6

  • Backends
  • Memcached
  • X-Sendfile
  • Separated error logging per virtual server
  • Including some Apache features
Serving ASP filesيخدم ملفات الاي اس بي

Feature

المميزات

Easy of conf

سهل التركيب

Easy of conf

سهل التركيب

Easy of Conf

سهل التركيب

Medium

متوسط الصعوبه

Ease of Use

سهوله التركيب

Very High

مشهور جدا

High

مشهور

High

مشهور

Very High

مشهور جدا

Popularity

الشهره


رابعا: اختيار خادم قواعد البيانات


( داتابيس سيرفر )

وذلك بناء على عده عوامل منها:

1.السعر

2.الحجم

3.استخدام الموارد ( رام , هاردسك ومعالج وغيرها )

4.الفهرسه

في هذا الجدول مميزات بعض الخوادم لقواعد البيانات :


MySQL

MongoDB

SQLlite

/

Oracle

10gen

Leadership

الشركه المنتجه

Typical: replication and clustering

Typical: replication and sharding

Scaling

الحجم

  • B-Tree (default)
  • Hash (Memory tables and NDB only)
  • B-Tree (default)
  • Geospatial 2D

File System

Index Systems

نظام الفهرسه

  • Disk Space, MyISAM: Marginally larger than the data plus indexes
  • Disk Space, InnoDB: Somewhat larger than the data plus indexes
  • RAM: Allocates as much RAM as available; even more with memory tables.
  • CPU: Allocates a reasonable amount of CPU, relative to the task
  • Disk Space: between 2x and 10x data size, minimum active-database size of 50mb
  • RAM: Allocates a reasonable amount of RAM
  • CPU: Marginal, relative to the task

يستخدم الملفات كقاعد بيانات وعاده يكون خفيف وللاستعمالات الخفيفه مثال فعال على استخدامه في انظمه الاندرويد

Resource Utilization

استخدام الموارد

Very High

مشهور جدا

Very low

غير مشهور

High

مشهور

Popularity

الشهره



خامسا
: اختيار لغه البرمجه وبيئه العمل

 ( الفريم ورك )

 يعتمد اختيارك للغه على اختيارك للبيئه التشغيل ( الاوبريتنج سستم ) حيث تعمل بعض اللغات على بعض الانظمه والانظمه الاخرى لاتعمل عليها بالشكل المناسب مثال لغه ASP.Net تعمل بشكل ممتاز مع انظمه ويندوز ولكن تعمل بشكل ضعيف على انظمه لينكس وتحتاج اضافات على الابتاتشي وقد لاتؤدي اداء قوي كما تؤديه في انظمه وندوز. *هذا القسم ممكن تكمله الحديث فيه لاحقا *

سأتوقف هنا لكي لا تصبح التدوينه ثقيله وتقل فائدتها ..
في حال وجود اي استفسار يمكنكم التواصل بالرد على التدوينه او التواصل معي عبر الايميل من صفحه اتصل بي
سعدت بوجودكم وان شاء الله ان التدوينه مفيده لكم
مصادر اضافيه:
موقع لعرض انواع المعالجات وسرعتها والمقارنه بينها

http://www.cpubenchmark.net/high_end_cpus.html

 

5 تعليقات على: كيف تختار الخدمات المناسبه لك بعنايه ؟

أضف تعليقاً

لن يتم نشر عنوان بريدك الإلكتروني. الحقول الإلزامية مشار إليها بـ *