حوسبة موزعة
الحوسبة الموزعة هي مجال من مجالات هندسة الحاسبات، يدرس ما يسمى بالأنظمة الموزعة distributed system. وهي عبارة عن نظام برمجيات يتألف من مجموعة من أجهزة الحواسيب التي تتصل مع بعضها البعض من خلال شبكة موصلة فيما بينها. يكون التواصل والتفاعل بين هذه الاجهزة من خلال تمرير رسائل passing messages . ،وتتفاعل هذه المكونات مع بعضها البعض من أجل تحقيق هدف مشترك. تسمى برامج الحاسوب التي تعمل على الأنظمة الموزعة برامج موزعة.
في الحوسبة الموزعة، يتم تقسيم المشكلة إلى مشاكل صغيرة، ثم يتم توزيعها على الحواسيب ليتم حل هذه المشكلة. كلمة وزعت في مصطلحات مثل "نظام توزيع"، "البرمجة الموزعة"، و "خوارزمية توزيع" يشير أصلا إلى شبكات الكمبيوتر حيث تم توزيع أجهزة الكمبيوتر الفردية جسديا في بعض المناطق الجغرافية. تستخدم المصطلحات في الوقت الحاضر في نطاق أوسع من ذلك بكثير المعنى، حتى في إشارة إلى عمليات مستقلة التي تعمل على نفس الكمبيوتر الفعلي والتفاعل مع بعضها البعض من خلال تمرير الرسالة وبينما لا يوجد تعريف واحد للنظام توزيع، وتستخدم الخصائص المعرفة التالية شيوعا:
غالباً ما لا نستعمل كل طاقة المعالج المتاحة لنا. نقوم في الأحوال الطبيعية ياستعمال عدد معين من البرامج التي تستدعي قسم معين من طاقة المعالج لدينا ويبقى قسم كبير غير مستخدم. الفكرة من وراء الحوسبة الموزعة هي استعمال هذه الطاقة المتاحة بطريقة ما. ببساطة يتم ربط عدد معين من الكمبيوترات على شكل شبكة بحيث يحتاج الامر لوجود برنامج معين على كل جهاز ضمن هذه الشبكة ويتم توزيع بعض المهام على الأجهزة التي لا يتم استخدام طاقاتها من قبل مستخدمها الرئيسي. تقوم معالجات هذه الأجهزة بدورها بمعالجة الوظائف المرسلة لها عبر هذه الشبكة غالباً من دون ملاحظة هذا العمل الإضافي من قبل مستخدم الجهاز الرئيسي.
1-طبيعة الطلب قد تتطلب استخدام شبكة الاتصالات التي تربط العديد من أجهزة الكمبيوتر: على سبيل المثال، أنتجت البيانات في مكان واحد موجودوتكون مطلوبة في موقع آخر.
2-هناك العديد من الحالات التي يكون فيها استخدام جهاز كمبيوتر واحد سوف يكون من الممكن من حيث المبدأ، ولكن استخدام نظام توزيع هو مفيد لأسباب عملية. على سبيل المثال، قد يكون أكثر فعالية من حيث التكلفة للحصول على المستوى المطلوب من الأداء باستخدام مجموعة من العديد من أجهزة الكمبيوتر المنخفضة نهاية، بالمقارنة مع جهاز كمبيوتر الراقية واحد. ويمكن لنظام توزيع توفر أكثر موثوقية من نظام غير الموزعة، وليس هناك نقطة واحدة من الفشل. وعلاوة على ذلك، قد يكون نظام توزيع أسهل لتوسيع وإدارة من نظام أحادي المعالجة المتجانسة.
تتميز الأنظمة الموزعة بالعديد من المميزات نذكر منها:هي عبارة عن طريقةو كيفية ربط الشبكات مع بعضها البعض من خلال:
العميل / نظام الخادم(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).
التطبيق الموزع هو تطبيق مكون من أكثر من مكون يمكن نشرها بشكل مستقل وعلى آلات مختلفة مرتبطة بشبكة، وتتخاطب فيما بينها باستعمال البرمجيات الوسيطة. يتألف التطبيق الموزع من طبقتين هما تطبيقات مخدم والمستخدم) أو من ثلاث طبقات هي تطبيقات زبون والبرمجيات الوسيطة والمخدم أو من عدة طبقات هي الزبون وعدة برمجيات وسيطة وعدة مخدمات.
هناك بعض التطبيقات التي تفرض على المستخدم أن تكون موزعة (جغرافياً :مثل فروع بنك معين)
يوجد العديد من الأسباب التي نحتاج من أجلها التطبيقات الموزعة: