كيف؟: أكون جهة راعية لأحد أقسام مطور؟...التفاصيل أخبار مطور: مطور يدعم المطورين بإعلانات مجانية. BETA


||!¤*'~`(( إعلانات نصيه ))`~'*¤!||
برنامج المنظم لادارة الاستضافة
يغنيك عن عشرة موظفين!
http://www.almnzm.com
مميز لتطوير المنتديات
شروحات - دروس - تطوير - باختصار احترف إدارة منتداك في مميز.
http://www.support-vb.com
خانة تبادل اعلاني
عذرا للمواقع التطويرية فقط
برنامج ملفات
حاز على رضا أكثر من 360 موقعا حتى الان ..
http://www.mlffat.com

http://mtwer.com/vb/images/e3lan.gif

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

مطور عالم الاستضافة والخوادم شركات الاستضافة - ريسلر - VPS - الخوادم - النطاقات - مشاكل وحلول الاستضافة والخوادم وما يتعلق بهما.



إنشاء موضوع جديد  رد
 
أدوات الموضوع طرق مشاهدة الموضوع
  #1 (permalink)  
قديم 05-09-2008, 01:36 PM
مطور مشارك
تاريخ التسجيل: 02-04-2008
المشاركات: 8
Arrow الصمود أمام إعصار الزوار !! هل أخذت احتياطك؟




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

الأسباب متعددة فهي تشمل:
  • <LI _extended="true">طريقة تصميم وبرمجة الموقع. <LI _extended="true">مواصفات الجهاز المستضيف (كالذاكرة والسرعة). <LI _extended="true">إعدادات الخادم الشبكي.
  • وخادم قاعدة البيانات.
سأتناول في هذه التدوينة إعدادات الخادم الشبكي(أباتشي) لأنها الأساس لبقاء الموقع على قيد الحياة… يتبعها في تدوينات مستقبلية(بإذن الله) تحسين أداء قاعدة البيانات (ماياسكيوال) وطرق تحسين أداء الموقع عن طريق أفكار وأساليب برمجية.
إن كان موقعك مستضافاً في خادم مشترك (أي أنك لا تملك الصلاحية لتعديل إعدادات الخادم عن طريق سطر الأوامر) فلن تفيدك هذه النصائح كثيراً.
عندما يتم زيارة موقعك

لفهم المسألة التي نود إيجاد حل لها يتعين فهم الخطوات التي يقوم بها الخادم الشبكي لتلبية طلب الزائر لعرض صفحة ما، وهي كالتالي:
1. يستلم الخادم الشبكي (أباتشي) الطلب من المتصفح.
2. يتم التعرف على نوع الملف المطلوب وتوجيهه للبرامج الملحقة لتنفيذه (مثلا يتم إرسال صفحات بياتشبي لمترجم بياتشبي) أو يتم الإنتقال إلى الخطوة 5.
3. في حال صفحات بياتشبي يقوم مترجم بياتشبي بتنفيذ الأوامر البرمجية وما يشملها من استعلامات لقاعدة البيانات.
4. في حال الإتصال بقاعدة البيانات يتم انتظار النتيجة ثم يتم تكوين الصفحة وإرسالها للخادم الشبكي.
5. يقوم الخادم الشبكي بتسليم الصفحة للمتصفح ومن ثم يستقبل من المتصفح طلبات الملفات الأخرى كنصوص الجافاسكربت والسياساس والفلاش المرتبطة بالصفحة التي تم طلبها سابقاً.
الخطوة الثالثة والرابعة هي أكثر الخطوات تأثيراً على طاقة موقعك في خدمة أكثر من زائر في نفس اللحظة.
معلومة: الصفحات أو الملفات الجامدة تستغرق مابين 0.001 إلى 0.010 ثانية بينما الصفحات النشطة (صفحات بياتشبي) قد تستغرق من 0.03 ثانية إلى قيمة max_execution_time المعرفة في ملف إعدادات بياتشبي php.ini.

ملاحظة:
زمن إنتاج الصفحات سيقصر إن نقلت موقعك إلى مستضيف ذو معالج أحدث وأسرع.
كمثال فإن صفحات مدونتي تستغرق معدل 0.5 ثانية كي يتم إنتاجها وهذا يرجع للخطوتين 3 و 4 من الدورة المذكورة أعلاه.
لمعرفة الوقت الذي تستغرقه صفحة في موقعك بالتقريب، عليك بإضافة الأوامر التالية في بداية ونهاية صفحة بياتشبي
في بداية الملف

كود PHP:
 
<?  $time microtime(true);  ?>
وفي نهاية الملف

كود PHP:
 
<?      $time2 microtime(true);      $gentime $time2 $time;   echo "$gentime";   ?>
حسناً لننتقل الآن لحبيبنا الخادم الشبكي (أباتشي) وكيف نضمن قدر الإمكان خدمة العدد الهائل من الزوار قدر الإمكان، ولهذا لا بد من معرفة بعض القيم في ملف إعدادات أباتشي التي سنحتاج تعديلها لتناسب الموقع والجهاز المستضيف للموقع.
يوجد ملف إعدادات أباتشي في أغلب الأحيان في المسار التالي
/etc/httpd/conf/httpd.conf
ولكن قبل كل شي، احفظ نسخة احتياطية من ملف إعدادات أباتشي عن طريق الأمر التالي:
cp /etc/httpd/conf/httpd.conf /etc/httpd/conf/httpd.backup
اكتب السطر التالي كي تستعرض ملف إعدادات أباتشي عند الجزئية التي تهمنا
vi +/MaxClients /etc/httpd/conf/httpd.conf
الأمر السابق يعطيك نتيجة شبيهة بهذه الصورة



الجزئية التي تهمنا هي

  1. كود PHP:
     <ifmodule prefork.c>   StartServers       8   MinSpareServers    5   MaxSpareServers   20   ServerLimit      256   MaxClients         256   MaxRequestsPerChild  4000   </ifmodule
ملاحظة: هذه هي الإعدادات الافتراضية عند تنصيب خادم أباتشي الشبكي.
هذه الإعدادات بسيطة جداً
StartServers
عندما يبدأ أباتشي في العمل (سواء بعد تشغيل النظام أو عند إعادة تشغيل خادم أباتشي) يقوم تلقائيا بعمل 8 خوادم تابعة تظل في الاحتياط لحين استدعائها لتلبية الطلبات المتزايدة.
MinSpareServers
يقوم أباتشي بإنشاء 5 خوادم في الإنتظار كحد أدنى كي تلبي أي طلب جديد في حال انشغال الخوادم الأخرى بطلبات أخرى.
MaxSpareServers
الحد الأقصى للخوادم في الإنتظار. هذه القيمة تخبر أباتشي بأن يقتل الخوادم الغير مستخدمة الزائدة حتى يصبح لدينا 20 خادماً في الإنتظار كحد أقصى.
MaxClients
هو العدد الأقصى للخوادم التي سيتم إنشائها لخدمة الزوار مثال 256. وهي تعني أيضا أن خادم أباتشي الشبكي سيخدم 256 طلبية في نفس اللحظة.(هنا القشة التي قد تقصم ظهر البعير موقعك)
ServerLimit
هذه القيمة هي نفس قيمة MaxClients
MaxRequestsPerChild
حدد هنا عمر الخادم (عدد الطلبات التي سيلبيها في حياته) قبل أن يتم قتله. القيمة 4000 هي قيمة مناسبة.
انتبه … الإعدادات الإفتراضية سيئة جداً… لماذا؟

لأن حجم خادم أباتشي في الذاكرة هو 35 ميجا تقريباً، فلو افترضنا أن الخادم المستضيف يملك 1 جيجا من الذاكرة وتعرض لآلاف الطلبات في نفس اللحظة فهذا يعني أنه سيتم إنشاء 256 خادم أباتشي مساعد لتلبية الطلبات
معنى هذا أن الذاكرة المطلوبة هي:

35 ميجا * 256 = 8.9 جيجا
وبما أن الخادم المستضيف لموقعك لا يملك سوى 1 جيجا سيلجأ نظام التشغيل إلى نقل بعض العمليات الموجودة بالذاكرة إلى القرص الصلب ومن ثم يقوم بإرجاعها لتكمل عملها… لهذا سيصل نظام التشغيل إلى نقطة حرجة تؤدي في أغلب الأحيان إلى جمود النظام وتوقفه عن العمل وعدم تمكنه من تقديم أي خدمة.
الأسوأ من هذا هو أنك لن تتمكن من الاتصال بموقعك كي تعيد تشغيل النظام، حينها يجب عليك الإتصال بالشركة كي يعيدوا تشغيل النظام ليعمل من جديد.
بإمكانك إنقاذ موقعك من هذه الحالة بعد أن تتم إعادة التشغيل بنجاح عن طريق تغيير MaxClients إلى قيمة تناسب سعة الذاكرة لديك.
أنصحك أن تترك في الذاكرة 512 ميجا حرة لنظام التشغيل والبرامج الأخرى، وأن تسمح لخادم أباتشي الشبكي باستخدام المساحة المتبقية بأريحية.
مثال:
لو أنك تملك ذاكرة بسعة 1024 ميجا، فخصص 512 ميجا لأباتشي، وبالتالي سيمكنك هذا القرار من تحديد قيمة MaxClients بحسبة بسيطة فإن MaxClients تساوي
512 % 35 = 14
MaxClients = المساحة التي خصصتها لأباتشي % متوسط حجم عملية أباتشي في الذاكرة
الصورة التي بالأسفل هي إعدادات أباتشي التي استخدمها، وقد حددت قيمة MaxClients ب10 فقط لأنها تناسب مواصفات الجهاز المستضيف لموقعي.

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

ولكن لاتقلق فسوف يرون الصفحة المطلوبة إن حاولوا مرة أخرى.

تحياتي للجميع
رد مع اقتباس
  #2 (permalink)  
قديم 05-09-2008, 09:44 PM
مُطوِّرْ مسؤول
تاريخ التسجيل: 04-03-2008
المشاركات: 1,577
افتراضي


ما شاء الله مقال جدا رائع وممتاز

هل المقال من كتابتك ؟ ام منقول ؟ ارجو التوضيح اخي الجلاد

بانتظار المزيد من ابداعاتك

تقبل تحياتي
__________________
‏مُطوِّرْ
خطوتك الأولى من مستخدم إلى مطور
رد مع اقتباس
  #3 (permalink)  
قديم 05-09-2008, 10:24 PM
الصورة الرمزية ALSHRIS
مطور مشارك
تاريخ التسجيل: 05-09-2008
الدولة: egyot
المشاركات: 167
افتراضي

  #4 (permalink)  
قديم 05-09-2008, 11:16 PM
الصورة الرمزية Digi4Chat.CoM
مطور مشارك
تاريخ التسجيل: 08-08-2008
الدولة: Digi4Chat.CoM
المشاركات: 38
افتراضي


مشكور بآرٍك الله فيك
__________________
  • إسم الشركة : شركة ديجي فور شات
  • صاحب الشركة : عبدالله فضل عبد الله
  • خدمات الشركة : استضافة - حماية - تطوير الدردشة الكتابية
  • هاتف الشركة : من داخل مصر 0182501449 - من خارج مصر 0020182501449
  • بريد الشركة : admin@digi4chat.com - sales@digi4chat.com
  • روابط الشركة : WwW.Digi4Chat.Com
رد مع اقتباس
  #5 (permalink)  
قديم 06-09-2008, 06:26 AM
مطور مشارك
تاريخ التسجيل: 06-06-2008
المشاركات: 52
افتراضي


موضوع رائع

الف شكر عزيزي
رد مع اقتباس
  #6 (permalink)  
قديم 06-09-2008, 04:30 PM
مطور مشارك
تاريخ التسجيل: 02-04-2008
المشاركات: 8
افتراضي


مشكورين أخوانى على مروركم العذب

بالنسبة لسؤال الاخ مطور الموضوع منقول و اضفت اليه بعد النقاط الفنية لاظهاره بالشكل الحالى

تحياتي
رد مع اقتباس
  #7 (permalink)  
قديم 07-09-2008, 02:18 PM
مطور مشارك
تاريخ التسجيل: 07-09-2008
المشاركات: 87
افتراضي


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



أدوات الموضوع
طرق مشاهدة الموضوع

تعليمات المشاركة
لا تستطيع إضافة مواضيع جديدة
لا تستطيع الرد على المواضيع
لا تستطيع إرفاق ملفات
لا تستطيع تعديل مشاركاتك

BB code is متاحة
كود [IMG] متاحة
كود HTML معطلة
Trackbacks are متاحة
Pingbacks are متاحة
Refbacks are معطلة
الانتقال السريع إلى

المواضيع المتشابهه
الموضوع كاتب الموضوع المعهد مشاركات آخر مشاركة
هام قبل برمجة سجل الزوار aymax.net دورة برمجة الـ PHP (المستوى الأول) 34 23-09-2008 05:06 AM
كود الأرشفه أجذب محركات البحث لموقعك منتدى العاديات مطور منتديات الويب 1 22-09-2008 01:15 AM
سجل الزوار...الدرس الثالث aymax.net 2 دورة برمجة الـ PHP (المستوى الأول) 0 23-08-2008 08:01 PM
هاك اخفاء عن الزوار ( غير معرب ) s y s t e m مطور منتديات الويب 0 14-06-2008 12:25 PM
[product] سجل الزوار v2.0.2 للنسخة 3.7.0 محب الحكمة مطور منتديات الويب 0 13-06-2008 10:23 PM


توقيت مطور + 3 على جرينتش حسب توقيت مكة المكرمة.
الساعة الآن: 11:39 AM


Powered by vBulletin® Version 3.7.4
Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
Search Engine Optimization by vBSEO 3.1.0
الحقوق محفوظة لكل المواقع العربية
عزيزي المطور ابتعد عن النقل، ولتكن مواضيعك جديدة وقيمة تعبر عن إبداعك وتميزك
 خريطة الموقع