ما المقصود بـ Middleware؟

Middleware هو البرنامج الذي تستخدمه التطبيقات المختلفة للتواصل مع بعضها. توفر هذه البرامج وظائف للربط والاتصال بين التطبيقات بطريقة ذكية وذات كفاءة وبالتالي يُمكنك الابتكار بشكل أسرع. يعمل Middleware كجسر بين مختلف التقنيات والأدوات وقواعد البيانات بحيث يمكنك دمجها بسلاسة في نظام واحد. وبعد ذلك يوفر هذا النظام الواحد خدمةً موحدةً لمستخدميه. على سبيل المثال، يُرسل أحد تطبيقات الواجهة الأمامية بنظام Windows البيانات ويستقبلها من خادم Linux بالواجهة الخلفية، ولكن لا يُدرك مستخدمو التطبيق الاختلاف.

لماذا يعد Middleware مهمًا؟

بدأ Middleware كجسر بين التطبيقات الجديدة والأنظمة القديمة قبل أن يكتسب شعبية في الثمانينيات. واستخدمه المطورون في البداية لدمج البرامج الجديدة مع الأنظمة السابقة من دون إعادة كتابة الرمز السابق. لقد أصبح Middleware أداة مهمة لإدارة الاتصالات والبيانات في الأنظمة الموزعة.

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

ما حالات استخدام Middleware؟

فيما يأتي حالات استخدام Middleware الأكثر شيوعًا:

تطوير الألعاب

يستخدم مطورو الألعاب Middleware كمحرك للعبة. بغية عمل أي لعبة، يجب أن يتصل البرنامج بخوادم الصور والصوت والفيديو المختلفة إلى جانب أنظمة الاتصال. يعمل محرك اللعبة على تسهيل هذا الاتصال ويجعل تطوير اللعبة أكثر كفاءة.

الإلكترونيات

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

تطوير البرامج

يستخدم مطورو البرامج Middleware لدمج مكونات البرامج المختلفة في تطبيقات أخرى. يوفر Middleware واجهة برمجة تطبيقات (API) قياسية لإدارة المدخلات والمخرجات المطلوبة للبيانات من المكون. الارتباط الداخلي بالمكون مخفي عن المستخدم. يستخدم المطورون واجهات برمجة التطبيقات لطلب الخدمات التي يحتاجون إليها من مكونات البرامج. 

نقل البيانات

تستخدم التطبيقات البرمجية Middleware لإرسال تدفقات المعلومات واستقبالها بشكل موثوق. تدفقات المعلومات هي عملية نقل عالية السرعة للبيانات المستمرة. حيث تعد مهمة لتدفق الفيديو والصوت بشكل موثوق.

التطبيقات الموزعة

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

ما المقصود بهندسة Middleware؟

تتكون هندسة Middleware من العديد من المكونات التي تتواصل لإنشاء مسار تدفق البيانات. تنتقل البيانات من تطبيق متصل واحد إلى الآخر من خلال Middleware. كما يعمل Middleware على معالجة البيانات للتوافق. فيما يأتي المكونات الشائعة لـ Middleware:

وحدة التحكم في الإدارة

توفر وحدة التحكم في الإدارة لمطوري البرامج نظرة عامة عن أنشطة نظام Middleware وقواعد البرنامج والتكوينات.

واجهة العميل

واجهة العميل هي الجزء الخارجي من Middleware الذي يتصل بالتطبيقات. يستخدم المطورون الوظائف التي توفرها واجهة العميل للتفاعل مع التطبيقات أو قواعد البيانات أو الخدمات المصغرة الأخرى.

الواجهة الداخلية لـ Middleware

تعمل الواجهة الداخلية لـ Middleware كأداة ربط برمجية تربط المكونات المختلفة معًا. تستخدم مكونات Middleware الواجهة الداخلية لتعمل بشكل متناسق مع البروتوكول الخاص بها. 

واجهة المنصة

تضمن واجهة Middleware أن يكون البرنامج الوسيط متوافقًا مع العديد من المنصات. حيث تتضمن مكونات البرنامج التي تعمل مع أنواع مختلفة من أنظمة التشغيل. 

إدارة العقود

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

إدارة الجلسات

تنشئ إدارة الجلسات قناة اتصال آمنة بين التطبيقات وMiddleware. فهي تضمن أن يتدفق الاتصال بسلاسة ويخزن سجلات نشاط البيانات لإعداد التقارير. 

إدارة قاعدة البيانات

تتضمن كذلك بعض أنواع البرامج الوسيطة (Middleware) إدارة قاعدة بيانات. تعد إدارة قاعدة البيانات مسؤولة عن التكامل مع أنواع قواعد البيانات المختلفة، حسب الحاجة. 

مراقبة مدة العرض

توفر مراقبة مدة العرض مراقبة مستمرة لحركات البيانات في Middleware. فهي تكتشف الأنشطة غير العادية للمطورين وتبلغ بها. 

كيف يعمل Middleware؟

يجرد Middleware عملية الاتصال الأساسية بين المكونات. وهذا يعني أن تطبيق الواجهة الأمامية يتصل فقط بـ Middleware ولا يتعين عليه معرفة لغة مكونات برامج الخلفية الأخرى. 

الإطار العام للمراسلة

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

  • JavaScript Object Notation (JSON)
  • نقل الحالة التمثيلية (REST API)
  • لغة التوصيف القابلة للتوسعة (XML)
  • خدمات الشبكة
  • بروتوكول الوصول البسيط إلى الأجسام (SOAP) 

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

مثال على Middleware

على سبيل المثال، يعد خادم الشبكة برنامجًا وسيطًا (Middleware) يربط مواقع إلكترونية بقاعدة بيانات الخلفية. عندما ترسل نموذجًا على موقع إلكتروني، يرسل حاسوبك الطلب بلغة XML أو JSON إلى خادم الشبكة. وبعد ذلك، يقوم خادم الشبكة بتشغيل منطق الأعمال بناءً على الطلب أو يسترد المعلومات من قواعد البيانات أو يتصل بالخدمات المصغرة الأخرى باستخدام بروتوكولات مختلفة.

وظائف Middleware الأخرى

إلى جانب كونها وسيطًا بين التطبيقات البرمجية، تقوم البرامج الوسيطة أيضًا بما يأتي:

  • توفر قناة اتصال آمنة بين التطبيقات الموزعة بحيث ترسل المواقع الإلكترونية معلومات حساسة إلى تطبيقات الخلفية بأمان. 
  • تدير تدفق البيانات وتتجنب إغراق تطبيق أو خادم ملفات معين.
  • تعمل على أتمتة الاستجابات للطلب وتخصيصها. على سبيل المثال، يقوم Middleware بفرز النتائج وفلترتها قبل إرسالها إلى تطبيق الواجهة الأمامية.

ما المقصود بـ Middleware المنصة؟

يدعم Middleware المنصة تطويرَ التطبيقات عن طريق توفير نظام من الأدوات والموارد المُدارة. يستخدم المطورون Middleware المنصة لمشاركة الموارد أو نقلها بين التطبيقات. وفيما يلي بعض الأمثلة على موارد Middleware الخاصة بالمنصة:

بيئات التشغيل

بيئة التشغيل تشبه نظام تشغيل صغيرًا يسمح بتشغيل برنامج ما. على سبيل المثال، يجب تشغيل تطبيقات Java في بيئة تشغيل Java. يمكن للمطورين استخدام AWS Lambda في إعداد بيئة تشغيل لأي لغة برمجة. 

خوادم الشبكة

خادم الشبكة هو برنامج حاسوب يستقبل الطلبات من المواقع الإلكترونية ويعالجها ويستجيب لها. يستخدم مطورو الشبكة Amazon Lightsail في استضافة خوادم الشبكة للتطبيقات البسيطة وإدارتها. 

أنظمة إدارة المحتوى

نظام إدارة المحتوى هو برنامج ينشئ المعلومات الرقمية ويعدلها ويخزنها وينشرها. على سبيل المثال، WordPress هو نظام إدارة محتوى مفتوح المصدر لإنشاء مواقع إلكترونية. 

الحاويات

تعد الحاوية حزمة من رموز التطبيقات والموارد الضرورية جاهزة للنشر. يستخدم المطورون Amazon Elastic Container Service (Amazon ECS) في نشر تطبيقات الحاوية وإدارتها وتوسيع نطاقها. 

ما المقصود بـ Middleware المنصة؟

يدعم Middleware المنصة تطويرَ التطبيقات عن طريق توفير نظام من الأدوات والموارد المُدارة. يستخدم المطورون Middleware المنصة لمشاركة الموارد أو نقلها بين التطبيقات. وفيما يلي بعض الأمثلة على موارد Middleware الخاصة بالمنصة:

بيئات التشغيل

بيئة التشغيل تشبه نظام تشغيل صغيرًا يسمح بتشغيل برنامج ما. على سبيل المثال، يجب تشغيل تطبيقات Java في بيئة تشغيل Java. يمكن للمطورين استخدام AWS Lambda في إعداد بيئة تشغيل لأي لغة برمجة. 

خوادم الشبكة

خادم الشبكة هو برنامج حاسوب يستقبل الطلبات من المواقع الإلكترونية ويعالجها ويستجيب لها. يستخدم مطورو الشبكة Amazon Lightsail في استضافة خوادم الشبكة للتطبيقات البسيطة وإدارتها. 

أنظمة إدارة المحتوى

نظام إدارة المحتوى هو برنامج ينشئ المعلومات الرقمية ويعدلها ويخزنها وينشرها. على سبيل المثال، WordPress هو نظام إدارة محتوى مفتوح المصدر لإنشاء مواقع إلكترونية. 

الحاويات

تعد الحاوية حزمة من رموز التطبيقات والموارد الضرورية جاهزة للنشر. يستخدم المطورون Amazon Elastic Container Service (Amazon ECS) في نشر تطبيقات الحاوية وإدارتها وتوسيع نطاقها. 

ما المقصود بـ Middleware في الحوسبة السحابية؟

تتضمن الحوسبة السحابية إنشاء تطبيقات السحابة الأصلية ونشرها عبر البنى الأساسية المختلفة. يستخدم المطورون Middleware للوصول إلى موارد السحابة من دون أن يسيطر عليهم تعقيد إدارة البنيات الأساسية. ينشر المطورون تطبيقات السحابة في حاويات على استضافة قائمة على السحابة وقابلة للتوسع مثل Amazon Elastic Compute Cloud (Amazon EC2).

كيف تدعم AWS تقنية Middleware؟

تكامل التطبيقات على AWS هو مجموعة من الخدمات التي تعد بديلاً في المتناول لـ Middleware التقليدي للحوسبة السحابية. يستخدم المطورون الخدمات لإيصال المكونات المنفصلة داخل الخدمات المصغرة والأنظمة الموزعة والتطبيقات بلا خادم ببعضها. على سبيل المثال:

  • تعد AWS Step Functions خدمة تدفق سير عمل مرئية تسمح للمطورين بإنشاء تطبيقات موزعة، وأتمتة عمليات تكنولوجيا المعلومات وعمليات الأعمال، وإنشاء مسارات للبيانات وتعلّم الآلة عن طريق استخدام خدمات AWS.
  • تعد خدمة Amazon Simple Notification Service (Amazon SNS) بديلاً عن Middleware الموجه للرسائل. حيث توفر خدمات المراسلة للتطبيقات.
  • Amazon EventBridge هو ناقل أحداث بلا خادم يستخدمه المطورون في دمج تطبيقات السحابة مع خدمات AWS.  

ابدأ استخدام Middleware على AWS عن طريق إنشاء حساب AWS اليوم.

الخطوات التالية لـ Middleware

تحقق من الموارد الإضافية المتعلقة بالمنتج
تعرف على المزيد حول AWS Support لتقنية Middleware 
سجل الاشتراك للحصول على حساب مجاني

الوصول الفوري إلى طبقة AWS المجانية.

أنشئ حسابًا مجانيًا 
بدء الإنشاء في وحدة التحكم

بدء الإنشاء في وحدة إدارة تحكم AWS.

تسجيل الدخول