تحيه طيب
جالس اشتغل على برنامج
distributing system
وهو صورة مبسطه لنظام بنكي
الكود جزئين
جزء على
client side
وفي هذا الجزء
العميل يطلب بعض العمليات
كالايداع
والسحب
والتحويل من حساب الى آخر
اما جزء
Server side
نعم العميل مثلا يطلب ايداع من جهته لكن الـ
method
فعليا موجوده على السيرفر
كيف يمكن عمل ذلك ؟
هنا طريقتين شائعتين
الاولى عن طريق
RMI
Remote Method Invocation
الثانيه عن طريق
corba
الطريقه الاولى لا تعمل الا مع الجافا
يعني السيرفر والكلاينت لازم كلهم جافا
لكن الثانيه ممكن تستخدم كـ
middleware
بين اي
platform
يعني مثلا العميل مشغل جافا والسيرفر مثلا برنامج بالسي او غيره
--------------------------
ان شاء الله المعلومات السابقه تكون مفيده لأحد ,...ماحبيت يكون موضوعي فقط سؤال
--------------------------
السؤال
بالنسبه لبرنامجي انا مستخدم
corba
ولا عندي اي مشاكل فيها
خصوصا في العمليات
ايداع
سحب
استعلام عن الرصيد
لأنها على نفس الحساب وفي نفس الفرع
لكن مثلا لو طلب العميل تحويل من حساب الى حساب آخر
ممكن الحساب الثاني يكون على سيرفر مختلف
طبعا برنامجي غير تجاري وجالس اشتغل عليه في جهاز واحد
لكن بافترض نظريا انه في مثلا حسابين كل واحد على سيرفر لوحده
طبعا السيرفرات عندي اتبعت طريقة انه كل فرع على سيرفر مختلف
نرجع لعملية التحويل
لو مثلا عميل اراد التحويل من حساب الى حساب وكل حساب في فرع مختلف
راح اضطر اسوي قناة اتصال بين السيرفرين
والطريقه االاسلم اللي وجدت عن طريق
UDP
طريقة استخدمها عارفها مشكلتي ما اعرف فين احد الكود
اقصد هل احطها في كلاس لوحدها مع
main
حقتها
والا ممكن بـ
method
وانادي عليها اذا احتجتها
المشكله انه نفس السيرفر ممكن يكون كلاينت وسيرفر بنفس الوقت فلازم احط الارسال والاستقبال
اعيدصياغة السؤال مع توضيح ونظرة اشمل للمشكله
في اول صوره راح تشوفو الكود اللي اسوي فيه الربط حق الـ
corba
وفي هذا الجزء راح انشئ ثلاثة فروع
المفروض كل فرع على سيرفر منفصل
في الصوره الثانيه
المكان اللي انفذ فيه اغلب العمليات مثل السحب والايداع وهذي الكلاس يتم مناداتها في كل مره انشئ فرع جديد
اذا كان ايداع او سحب ماعندي فيه اي مشكله لأنه ما احتاج الا
corba
لكن اذا بحول من حساب لحساب وكل حساب في فرع منفصل لازم اسوي بينهم قناة اتصال
المشكله المواجهتني انه اولا
كل الفروع عندى على
host
واحد
لكن ابغى افرق بينهم عن طريق رقم الفرع بحيث يكون رقم الفرع هو رقم الـ
port
فصراحه ما اعرف فين ممكن احط للكود حق
UDP
هل بـ
method
زي ما انتم شايفين بالصوره الثانيه
والا بكلاس لوحده
وفرضا انحلت هذي المشكله
كيف اربط كل فرع بالـ
port
حقه
بحيث انه اذا جاه طلب يعرف اي فرع يتنفذ
الصورة الاولى

الصورة الثانيه

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