حوسبة موزعة

من ويكيبيديا، الموسوعة الحرة
اذهب إلى: تصفح، ‏ ابحث

الحوسبة الموزعة هي مجال من مجالات هندسة الحاسبات، يدرس ما يسمى بالأنظمة الموزعة distributed system. وهي عبارة عن نظام برمجيات يتألف من مجموعة من أجهزة الحواسيب التي تتصل مع بعضها البعض من خلال شبكة موصلة فيما بينها. يكون التواصل والتفاعل بين هذه الاجهزة من خلال تمرير رسائل passing messages [1]. ،وتتفاعل هذه المكونات مع بعضها البعض من أجل تحقيق هدف مشترك. تسمى برامج الحاسوب التي تعمل على الأنظمة الموزعة برامج موزعة.

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

  • هناك العديد من الكيانات الحسابية مستقلة، كل منها له الذاكرة المحلية الخاصة بها.[4]
  • الكيانات التواصل مع بعضهم البعض من خلال تمرير الرسالة.[5]

الفكرة من وراء الحوسبة الموزعة[عدل]

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

أسباب استخدام الحوسبة الموزعة[عدل]

1-طبيعة الطلب قد تتطلب استخدام شبكة الاتصالات التي تربط العديد من أجهزة الكمبيوتر: على سبيل المثال، أنتجت البيانات في مكان واحد موجودوتكون مطلوبة في موقع آخر.

2-هناك العديد من الحالات التي يكون فيها استخدام جهاز كمبيوتر واحد سوف يكون من الممكن من حيث المبدأ، ولكن استخدام نظام توزيع هو مفيد لأسباب عملية. على سبيل المثال، قد يكون أكثر فعالية من حيث التكلفة للحصول على المستوى المطلوب من الأداء باستخدام مجموعة من العديد من أجهزة الكمبيوتر المنخفضة نهاية، بالمقارنة مع جهاز كمبيوتر الراقية واحد. ويمكن لنظام توزيع توفر أكثر موثوقية من نظام غير الموزعة، وليس هناك نقطة واحدة من الفشل. وعلاوة على ذلك، قد يكون نظام توزيع أسهل لتوسيع وإدارة من نظام أحادي المعالجة المتجانسة.[6]

مميزات الانظمة الموزعة[عدل]

تتميز الأنظمة الموزعة بالعديد من المميزات نذكر منها:

  • لا وجود لنبضات ساعة مشتركة بين الأجهزة، أي كل جهاز له نبضات الساعة مستقلة عن الأجهزة الأخرى.
  • لا يوجد ذاكرة مشتركة، وكما قلنا يتم تبادل المعلومات عن طريق تمرير الرسائل.
  • القدرة على تحمل الفشل tolerate failures.
  • القدرة على التوسع في بنية المنظومة (الشبكة، عدد الأجهزة).
  • اتاحة التفاعل والحفاظ على استقتلاليةالاجهزة.
  • تحسين اداء الاجهزة, لانه بوجود عدة معالجات يكون انجاز المهام افضل سرعة.
  • كل جهاز أو عقدة يرى جزء بسيط من المنظومة، ويتعامل مع جزء محدد من الدخل (نوع محدد من المعطيات).
  • حل مشكلة التباعد الجغرافي بين الاجهزة والموارد.
  • يتمكن عدة مستخدمين من مشاركة قاعدة بيانات واحدة, ومشاركة الموارد مثل صفحات الويب والملفات وموارد مادية اخرى قد تكون باهظة الثمن مثل الطابعات الليزرية.

هيكلية النظم الموزعة[عدل]

هي عبارة عن طريقةو كيفية ربط الشبكات مع بعضها البعض من خلال:

العميل / نظام الخادم(client\server): بنية خدمة العملاء هو وسيلة لتقديم خدمة من مصدر مركزي. هناك خادم واحد يقدم خدمة، والعديد من العملاء يتم التواصل مع الخادم تستهلك منتجاتها. في هذه الهيكيلة مراكز خدمة العملاء لديهم وظائف مختلفة. وظيفة الخادم هو للرد على طلبات الخدمة من العملاء، في حين أن وظيفة العميل لاستخدام البيانات المقدمة استجابة من أجل تنفيذ بعض المهام.

الند للند النظام(peer_to_peer): مصطلح يستخدم الند للند لوصف النظم الموزعة التي يتم فيها تقسيم العمل بين جميع مكونات النظام. كافة أجهزة الكمبيوتر بإرسال واستقبال البيانات، وأنهم جميعا تساهم بعض قوة المعالجة والذاكرة. كما يزيد نظام توزيع في الحجم، وقدرته على زيادة الموارد الحاسوبية. في نظام الند للند، جميع مكونات النظام تسهم بعض قوة المعالجة والذاكرة إلى حساب الموزعة.

اساسيات للحصول على نظام موزع مثالي[عدل]

◦Concurrency of components: يعني ان وجود جهاز على الشبكة لا يؤثر في الأجهزة الآخرى بمعنى يمكن ان اقوم بالعمل على جهازي بينما شخص آخر في نفس الوقت يعمل على جهازه .

◦ No global clock : لا يكون هناك اوقات معينه للدخول على النظام بمعنى يكون مفتوح تماماً دون اي قيود في الوقت ◦ Independent failures: عطل في جهاز واحد لا يؤثر على الاجهزة الآخرى اي يكون الوضع تحت السيطرة

الصعوبات و التحديات التي نواجهها للحصول على نظام موزع[عدل]

1/ التغاير ( hetrogeneity ) : اي اختلاف نوع الأجهزة و البرامج و الأنظمة و نوع الشبكة ولحل ذلك نستخدم بعض البروتوكولات ( protocols ), أو استخدام البرمجيات الوسيطة ( middleware ) وهي مجموعة من السوفت وير توضع في الطبقات الداخلية للشبكة, أو استخدام الجهاز الظاهري ( virtual machine ) جعل ملف يفتح على جهاز آخر وهذا الجهاز لا يمتلك البرنامج الرئيسي .

2/ الإنفتاحية ( openess ) : عدد الأجهزة غير محدود .

3/ السرية (security).

4/ التوسع (scalablitity).

5/ التعامل مع الفشل (failure handling).

6/ التزامن (conurrency).

7/ الشفافية (transparency).

انظر أيضا[عدل]

ليست مادة هندسة

وصلات خارجية[عدل]

ّّ

  1. ^ Coulouris, George; Jean Dollimore; Tim Kindberg; Gordon Blair (2011). Distributed Systems: Concepts and Design (5th Edition). Boston: Addison-Wesley. ISBN 0-132-14301-1
  2. ^ Lynch (1996), p. 1
  3. ^ Ghosh (2007), p. 10.
  4. ^ Andrews (2000), p. 8–9, 291. Dolev (2000), p. 5. Ghosh (2007), p. 3. Lynch (1996), p. xix, 1. Peleg (2000), p. xv.
  5. ^ Andrews (2000), p. 291. Ghosh (2007), p. 3. Peleg (2000), p. 4.
  6. ^ Elmasri & Navathe (2000), Section 24.1.2.