ما المقصود بـ 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 لتكامل التطبيق الخاص بالمؤسسات

يوصل Middleware لتكامل التطبيق الخاص بالمؤسسات جميع أنظمة البرامج والخدمات ومصادر البيانات داخل المنظمة. تستخدم التطبيقات الخاصة بالمؤسسات هذا Middleware لإرسال المعلومات إلى بعضها من دون تغيير تكوينات الشبكة أو قاعدة البيانات. 

Middleware الموجه لقاعدة البيانات

يسهل Middleware الموجه للبيانات أو الموجه لقاعدة البيانات نقل البيانات بين التطبيقات والأنواع المختلفة من قواعد البيانات.

Middleware الموجه للرسائل

يمكن لـ Middleware الموجه للرسائل (MOM) دعم الاتصال بين مكونات البرنامج على نظام الحوسبة الموزعة.

Middleware للمعاملات

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

Middleware الذي يركز على المحتوى

تستخدم التطبيقات Middleware الذي يركز على المحتوى لنشر المحتوى أو استرداده من دون إنشاء آلية تخزين أساسية.

Middleware لاستدعاء الإجراء عن بُعد

يستخدم البرنامج Middleware لاستدعاء الإجراء عن بُعد (RPC) لاستخدام خدمة برنامج آخر داخل الشبكة نفسها.

Middleware للجهاز

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

Middleware لطلب كائن

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

Middleware لخادم التطبيق

يستخدم المطورون Middleware لخادم التطبيق لإنشاء التطبيقات الخاصة بالمؤسسات ونشرها وإدارتها وتوصيلها بخوادم تطبيقات الخلفية.

Middleware المضمن

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

Middleware لإدارة API

يستخدم المطورون Middleware لإدارة API لإنشاء واجهات API وتسهيل استخدامها من قبل المطورين الآخرين. 

Middleware لتدفق المعلومات غير المتزامنة

يدعم Middleware لتدفق المعلومات غير المتزامنة تدفق المعلومات في الوقت الفعلي بين الأنظمة الموزعة.

Middleware الآلي

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

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

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

مقدمة إلى Amazon EC2

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

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

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

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

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

Standard Product Icons (Features) Squid Ink
تحقق من الموارد الإضافية المتعلقة بالمنتج
تعرف على المزيد حول AWS Support لتقنية Middleware 
Sign up for a free account
سجل الاشتراك للحصول على حساب مجاني

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

أنشئ حسابًا مجانيًا 
Standard Product Icons (Start Building) Squid Ink
ابدأ الإنشاء في وحدة التحكم

ابدأ بالإنشاء باستخدام Amazon EC2 في وحدة إدارة تحكم AWS.

سجل الدخول