Middleware

تدوين: شهناز پيروزفر

Middleware در يك سيستم محاسباتی توزيع شده به عنوان لايه نرم‌افزاری تعريف می‌شود كه بين سيستم عامل و برنامه‌ها قرار می‌گيرد و اجرای چند فرايند را بر روی يك يا چند ماشين در شبكه امكان پذير می‌سازد.

Middleware برای انتقال برنامه‌های mainframe به برنامه‌های كلاينت / سرور ضروری است. اين تكنولوژی در سال‌های 1990 تكامل يافت. تكنولوژی‌های Middleware با رشد برنامه‌های مبتنی بر شبكه اهميت پيدا كردند. از سوی ديگر تعداد سيستم‌هايی كه از مجموعه‌ای از ديوايس‌ها تشكيل شده بودند افزايش يافت. هر ديوايس عملكردی را انجام می‌داد كه در شبكه با ساير ديوايس‌ها نظير تلفن‌های هوشمند، كامپيوترهای شخصی، PDA تعامل داشت.

 

عملكردهای Middleware

در هر يك از حالات فوق، برنامه‌ها از نرم‌افزار ميانجی و پروتكل‌های ارتباطی برای انجام عملكردهای زير استفاده می‌كنند:

اين لايه‌های نرم‌افزاری ميانجی، Middleware ناميده می‌شوند.

Middleware با فراهم آوردن محيط برنامه‌نويسی مشترك، پنهان سازی ناهمگونی‌ها، توزيع سخت‌افزار و سيستم عامل زيربنايی و پنهان‌سازی جزييات و برنامه‌نويسی سطح پايين، توسعه برنامه‌ها را آسانتر می‌سازد.

 

برخی‍ از انواع Middleware

Middleware بازتابی: اينگونه Middleware از تكنيك‌های بازتابی برای رسيدن به انعطاف‌پذيری و انطباق با پلاتفرم‌ها استفاده می‌كند.

Middleware رويدادگرا: اين Middleware مفاهيم، طراحی، پياده‌سازی و سرويس‌هايی را در بر می‌گيرد كه از سيستم‌های رويدادگرا پشتيبانی می‌كنند.

Middleware شی‌گرا: Middleware شی‌گرا پارادايم برنامه‌نويسی شی‌گرا را برای سيستم‌های توزيع شده بسط می‌دهد.

Middleware پيام گرا: اين Middleware در لايه‌های پايين مدل شبكه OSI به كار گرفته می‌شود. Middleware‌های مختلف از مدل‌های بربرنامه‌نويسی متفاوت پشتيبانی می‌نمايند. Middleware شی‌گرا متداول‌ترين Middleware است كه در آن برنامه‌ها به صورت آبجكت‌هايی ساخته می‌شوند. CORBA و COM از جمله اين Middleware هستند. Middleware رويدادگرا برای ساخت برنامه‌های توزيع شده غيرمتمركز مناسب است. كنترل فرايند، شبكه‌های خبری اينترنتی از زمره اينگونه Middleware‌ها هستند.

Middleware پيام‌گرا برای برنامه‌هايی كه در آنها پيام‌ها به صورت دائمی ذخيره می‌شوند، مناسب است. برنامه‌های پيام‌رسانی و گردش كار نمونه‌هايی از اينگونه Middleware هستند.

 

طراحی Middleware

Middleware به عنوان واسط بين بخش‌های مختلف برنامه يا بين برنامه‌ها عمل می‌كند. لذا قواعد به كار رفته در معماری نقش اساسی در طراحی Middleware دارند. در اينجا منظور از معماری، معماری كلی سازمان‌ها و الگوهای ارتباطی در زمينه برنامه‌ها و خود Middleware است. هر سيستم Middleware به لايه ارتباطی بستگی دارد. اين لايه امكان عمل بينابينی بخش‌های مختلف را فراهم می‌آورد.

 

چالش‌های فراروی Middleware

هزينه‌ها: هزينه  بكارگيری تكنولوژی Middleware در توسعه سيستم‌ها كاملا به سيستم عامل‌ها و پلاتفرم‌های مورد نياز بستگی دارد. پياده‌سازی Middleware منحصر به فروشنده آن است. لذا به پشتيبانی و نگهداری از جانب فروشنده وابسته است. اين وابستگی تاثير منفی بر انعطاف‌پذيری و قابليت نگهداری سيستم دارد.

پيچيدگی برنامه‌ها: هر چه برنامه‌ها ارتباط درونی بيشتری با هم داشته باشند. تعداد آبجكت‌ها با كاربران و ديوايس‌ها افزايش می‌يابد. اين امر مديريت آبجكت‌ها و پيچيدگی اداره نمودن سيستم را دشوار می‌سازد.

مديريت برنامه‌ها: مديريت برنامه‌های بزرگ، ناهمگون و توزيع شده با مشكلات متعددی از قبيل مسائل امنيتی، نظارتی، وابستگی به چندين زير سيستم، تعريف و پياده سازی خط مشی‌های مديريت منابع روبرو خواهد بود.

 

Copyright 2005, PC World Iran, All rights reserved.