خادوم ويب
مزود وب أو خادوم وب أو وب سيرفر (web server) هو البرنامج الذي يسمح لك بالتجول في شبكة إنترنت باستخدام متصفح وب ورؤية الصفحات كالتي تراها الآن، وذلك عن طريق توفير الصفحات بصيغة HTML أو غيرها من الصيغ المستخدمة.
و من أمثلة مزودات وب المشهورة:
وصلات خارجية
خادم الشبكة (Web server):
هو برنامج الحاسوب الذي يسلم (يخدم) المحتوى، مثل الصفحة على الشبكة (الإنترنت )، وذلك باستخدام بروتوكول نقل النص التشعبي ((Hypertext Transfer Protocol (HTTP), وعلى المدى فإن خادم الشبكة يمكن أن يشيرإلى الحاسوب أو الجهاز الظاهري (Virtual machine) بتشغيل البرنامج.
نبذة عامه:
الوظيفة الأولى لخادم الشبكة هي تقديم صفحات الويب (وثائق لغة توصيف النص التشعبي)(HTML Document)وما يرتبط بها من محتوى (صور، أوراق الأنماط (style sheet), جافا سكريبت) للعملاء. العميل هو متصفح شبكة (Web) أو زاحف على شبكة الإنترنت، يطلب الحصول على مورد معين باستخدام النص المتشعب (HTTP)وإذا سارت الامور بشكل جيد، يستجيب الخادم (Server) مع مضمون تلك الموارد. المورد هو عادة ملف حقيقي على الخادم في الذاكرة الثانوية، ولكن هذا ليس صحيحا بالضرورة، ولكن يعتمد على كيفية تنفيذ خادم الشبكة لها. في حين أن وظيفتها الأساسية هي خدمة المحتوى، فإن التنفيذ الكامل للمتشعب (Http)يشمل أيضا وسيلة لتلقي المحتوى من العملاء. هذه الميزة تستخدم لتقديم الاستمارات على شبكة الإنترنت، بما في ذلك تحميل الملفات. وهناك كثير من خوادم الشبكة العامة تدعم جانب الخادم النصي (مثل النص المتشعب الخادم أباتشي). وهذا يعني أن سلوك خادوم الشبكة يمكن كتابته في ملفات منفصلة، في حين أن برنامج الخادم الفعلي لم يتغير. عادة، يتم استخدام هذه الوظيفة لإنشاء مستندات لغة توصيف النص التشعبي (Html)مقابل عودة وثائق ثابتة. هذا ويشار إلى الدينامية والمحتوى الثابت على التوالي. ويمكن العثور على خادم الشبكة في أجهزة مثل الطابعات وأجهزة التوجيه من أجل تسهيل الإدارة وذلك باستخدام واجهة مستخدم مألوفة في شكل صفحة على شبكة الإنترنت.
تاريخ خوادم الشبكة:
- خادم الشبكة الأول بالعالم.
في عام 1989 اقترح تيم بيرنرز لي على صاحب العمل سيرن (Cernالمنظمة الأوروبية للبحوث النووية) مشروعا جديدا، والذي كان الهدف منه تسهيل تبادل المعلومات بين العلماء باستخدام نظام هايبرتكست.
نتيجة لتنفيذ هذا المشروع، في عام 1990 كتب بيرنرز لي برنامجين :
مستعرض (Browser) أسماه الشبكة العالمية (World Wide Web) : فهو أول خادم شبكة في العالم، عرف فيما بعد باسم سيرن Httpd والتي امتدت بتصميمه.
وبين عامي 1991 و 1994 وبالرغم من بساطة وفعالية التقنيات المستخدمة في وقت مبكر لتصفح وتبادل البيانات من خلال الشبكة العالمية فقد ساعدت وأشارت لهم بالعديد من أنظمة التشغيل المختلفة والتي انتشر استخدامها بين الكثير من الفئات الاجتماعية المختلفة من الناس، فكانت الأولى في المنظمات العلمية، ثم في الجامعات، وأخيرا في مجال الصناعة.
وفي عام 1994 قرر تيم بيرنرز لي تشكيل اتحاد لشبكة ويب العالمية وذلك لتنظيم وتطوير العديد من التقنيات المعنية (المتشعب، أتش تي أم أل، الخ) وذلك من خلال عملية التوحيد.
السمات المشتركة:
1-الاستضافة الظاهرية(Virtual hosting) لخدمة العديد من المواقع باستخدام معالجة ملكية فكرية واحدة(IP address).
2-الملف كبير الدعم يكون قادر على خدمة ملفات حجمها أكبر من 2 غيغابايت (GB) على نظام تشغيل 32 قطعة(Bit).
3-التحكم بعرض النطاق الترددي للحد من سرعة الاستجابة وتشبع الشبكة وبذلك تكون قادرة على خدمة المزيد من العملاء.
أصل المحتوى العائد:
أصل المحتوى التي بعث بها الخادم كما هو معروف.
- ثابت(Static).
-دينامية(Dynamic)اذا كان المولد ديناميكيا من قبل بعض البرامج الأخرى أو النصي (Script) أو واجهة برمجة التطبيقات (API) والتي سميت من قبل خادم الشبكة.
خدمة المحتوى الثابت عادة ما تكون أسرع بكثير (من 2 إلى 100 مرة) من خدمة المحتوى الديناميكي، وخاصة إذا كان الأخير يعتمد على سحب البيانات من قاعدة بيانات.
مسار الترجمة:
خوادم الشبكة قادرة على رسم خارطة طريق عنصر محدد موقع المعلومات (URL) إلى :
- موارد نظام الملف المحلي (للطلبات الثابته).
-اسم برنامج داخلي أو خارجي (للطلبات الدينامية).
للطلب الثابت يكون مسار موقع المعلومات محدد من قبل العميل وهو نسبة إلى الدليل الجذري (Root directory)لخادم الشبكة.وهذا هوالعنوان الذي سيطلب من قبل العميل :
http://www.example.com/path/file.html
سيترجم متصفح الإنترنت (Web browser) للعميل ذلك إلى اتصال www.example.com بما يلي النص المتشعب HTTP 1.1 طلب
GET /path/file.html HTTP/1.1
Host: www.example.com
خادم الويب على www.example.com سيلحق المسار المعطى بمسار دليل الجذر (Directory root)وفي آلآت يونيكس هذا هو الشائع /var/www والنتيجة هي مورد نظام الملف المحلي : /var/www/path/file.html سيقرأ خادم الشبكة الملف، إذا كان موجود ،ومن ثم يرسل الاستجابة إلى متصفح الإنترنت للعميل.وسيصف الرد محتوى الملف واحتواء الملف نفسه.
حدود السعة:
خادم الشبكة (البرنامج) قد وضع حدود للسعة، لأنه يستطيع التعامل مع عدد محدود من اتصالات العميل المتزامنة (عادة ما بين 2 و 80,000 وافتراضيا بين 500 و1,000) لكل عنوان، ويمكن أن يخدم فقط الحد الأقصى لعدد معين من الطلبات في الثانية اعتمادا على ما يلي :
- إعداداته الخاصة.
- نوع طلب المتشعب(HTTP).
- محتوى الأصل (ثابت أو متحرك)
- الواقع بأن محتوى الخادم يتم أو لا يتم مؤقتا.
- تعمل الأجهزة والبرمجيات بالحد من عمل نظام التشغيل.
عندما يكون خادم الشبكة قريب من أو على حدوده، يصبح زائد عن طاقته، وبالتالي لا يستجيب.
وضع النواة ووضع المستخدم لخوادم الشبكة (Kernel –mode and user-mode web servers):
ومن الممكن أن ينفذ خادم الشبكة إما في نواة نظام التشغيل (OS kernel)أو في فضاء المستخدم (User space)
مثل التطبيقات العادية الأخرى.وضع النواة لخادم الشبكة (مثل التكس TUX في الينكس أو الآي آي إس IIS في مايكروسوفت ويندوز) عادة ما يعمل بشكل أسرع لأنه، جزء من النظام، وبذلك يمكنه مباشرة استخدام جميع الموارد التي تحتاجها الأجهزة، مثل :
- الذاكرة الغير مقسمة إلى صفحات (Non-paged memory).
- شرائح الوقت لوحدة المعالجة المركزية(CPU time-slice).
- مخازن محولات الشبكة(Network adapter’s buffers).
خوادم الشبكة التي تعمل في وضع المستخدم لابد أن تطلب الإذن من النظام بالحصول على المزيد من الذاكرة أوالمزيد من موارد وحدة المعالجة المركزية. ليس فقط الطلبات إلى النواة هي التي تستغرق وقت طويلا، ولكنها ليست دائما راضية لأنها تتحمل موارد احتياطي النظام الخاص بها وكذلك تتحمل المسؤولية لتقاسم موارد الأجهزة مع جميع التطبيقات التي تكون قيد التشغيل. كما أنه لا يمكن للتطبيقات الوصول إلى المخازن الداخلية للنظام، الامر الذي يتسبب في نسخ عازل عديم الفائدة والذي يخلق عائق في وضع المستخدم لخادم الشبكة. ونتيجة لذلك، فإن الطريقة الوحيدة لجعل وضع المستخدم لخادم الويب مماثل لوضع النواة في الأداء هي طريقة رفع جودة رمز المعايير أعلى بكثير من الرموز المستخدمة في خادم شبكة آخر والذي يعمل في النواة. هذا هو أكثر صعوبة في ويندوزعنه في لينكس حيث أن وضع المستخدم أقل 6 مرات تحت ويندوز.
أسباب الحمل الزائد:
من الممكن أن تكون خوادم الشبكة زائدة الحمل وذلك بسبب :
- الكثير من حركة المرور على الشبكة.هناك الآلاف أو حتى الملايين من العملاء يستطيعون الوصول إلى مواقع عديدة على شبكة الإنترنت في فترة زمنية قصيرة. (على سبيل المثال تأثير سمبي e.g. Slashdot effect).
- هجمات الخدمة التي أنكرت دوس (Dos) توزيعها.
- طفيليات الكمبيوتر(Computer worms) التي تسبب حركة غير طبيعية في بعض الأحيان وذلك لأن الملايين من أجهزة الكمبيوتر المصابة (غير منسقة فيما بينها).
- فايروسات إكس إكس إس(XX S)يمكن أن تسبب ارتفاع في حركة المرور بسبب إصابة الملايين من متصفحات الإنترنت \ أوخوادم الشبكة بها.
- روبوتات الشبكة العالمية. الحركة لا تكون محدودة في مواقع شبكة الإنترنت الواسعة مع العدد القليل جدا من الموارد (عرض النطاق الترددي، الخ).
- التباطؤ في شبكة الإنترنت. حيث يتم تقديم طلبات العميل ببطء شديد وبذلك يزيد عدد الروابط إلى أن يتم التوصل إلى حدود الخادم.
- عدم توفر جزئية خوادم الويب. ومن الممكن أن يحدث هذا بسبب الصيانة المطلوبة أو لأمر عاجل أو لترقية أو بعض الأخطاء وحالات الفشل (قاعدة البيانات Data Base)وغيرها، وفي مثل هذه الحالات المتبقية تكون خوادم الشبكة في حالة حركة مما يؤدي إلى زيادة الحمل عليها.
أعراض الحمل الزائد :
- تخدم الطلبات طويلة التأخير من (ثانية واحدة إلى المئات من الثواني).
-500، 502، 503، 504 أخطاء المتشعب (HTTP) التي تعود إلى العملاء، وفي بعض الأحيان لا يكون الخطأ 404 و 408 له علاقه بعملية الارجاع.
- ترفض برامج التعاون الفني (TCP)وتوقف الطلبات قبل أن ترسل المحتويات إلى العملاء.
-وفي حالات نادرة جدا، يتم إرسال محتويات جزئية فقط (ولكن هذا السلوك قد يكون للنظر في الشوائب، حتى وإن كان عادة لا يعتمد على موارد نظام غير متوفر).
التقنيات المضادة للحمل الزائد:
محاولة التغلب جزئيا ومنع حدوث الحمل الزائد، فأكثر مواقع الويب الشعبية تقوم باستخدام التقنيات الشائعة مثل :
-إدارة حركة المرور في الشبكة باستخدام :
1-الجدران النارية(Firewalls) لعرقلة حركة المرور الغير مرغوب فيها والقادمة من مصادر الملكية الفكرية سيئة أو وجود أنماط سيئة.
2-يوجه المتشعب (HTTP) مديري المرور إلى الانخفاض، وتكون إعادة التوجيه أو إعادة الكتابة تتطلب وجود أنماط متشعب سيئة.
3-عرض النطاق الترددي (Bandwidth) لإدارة وتشكيل حركة المرور، من أجل السلاسة استخدام الشبكة.
-نشر تقنيات التخزين المؤقت على الشابكة ( الإنترنت ).
-استخدام أسماء نطاقات مختلفة لخدمة مختلف المحتويات (الثابتة والمتحركة) من خوادم الشبكة المنفصلة، أي :
http://images.example.com
http://www.example.com
- استخدام أسماء نطاقات مختلفة و/ أو حواسيب لفصل الملفات الكبيرة من الصغيرة والمتوسطة الحجم، والفكرة هي أن تكون قادرة تماما على تخزين الملفات الصغيرة والمتوسطة الحجم بكفاءة وذلك لتقديم خدمة كبيرة أو ضخمة (أكثر من 10—1000 ميغابايت) وذلك باستخدام إعدادات مختلفة.
-استخدام العديد من برامج خوادم الشبكة في حاسوب واحد، وكل واحد منها يتجه إلى بطاقة الشبكة الخاصة به وعنوان الملكية الفردية (IP address).
-استخدام العديد من حواسيب خوادم الشبكة والتي يتم تجميعها معا بحيث يتم التصرف بها والنظر إليها وكأنها خادم شبكة كبير (واحد).
-إضافة مزيد من الموارد المعدنية (ذاكرة الوصول العشوائي(RAM)، والأقراص) على كل حاسوب.
- ضبط نظام التشغيل للأجهزة وقدراتها واستخداماتها.
-استخدام العديد من برامج الحاسب الأكثر كفاءة لخوادم الشبكة، إلخ.
-استخدام الحلول الأخرى، خصوصا إذا كان المحتوى الديناميكي هو المعني.
af:Webbediener bg:Уеб сървър bs:Web server ca:Servidor web cs:Webový server da:Webserver de:Webserver Web server]] eo:Retservilo es:Servidor web et:Veebiserver fa:سرور وب fi:WWW-palvelin fr:Serveur HTTP he:שרת HTTP hi:वेब सर्वर hr:Web server hu:Webkiszolgáló ia:Servitor web id:Server web is:Vefþjónn it:Server web ja:Webサーバ ko:웹 서버 lv:Tīmekļa serveris mhr:Web-сервер mk:Веб опслужувач mn:Вэб сервер ms:Pelayan web nl:Webserver no:Webserver pl:Serwer WWW pt:Servidor web ru:Веб-сервер sh:Web server simple:Web server sk:Webový server sl:Spletni strežnik sv:Webbserver th:เว็บเซิร์ฟเวอร์ tr:Web sunucusu uk:Веб-сервер ur:معیل الحبالہ uz:WEB Server zh:網頁伺服器