Komponentlar orasida o‘zaro aloqani ta’minlashda oraliq muhitning o‘rni
Middleware (Oraliq muxit) - turli ilovalar, tizimlar va komponentlar orasida o‘zaro aloqani ta’minlash uchun qo‘llaniluvchi, texnologik dasturiy ta’minotlar majmuasi yoki qatlamini anglatuvchi termin hisoblanadi. U taqsimlangan tizimlar komponentlarining o‘zaro aloqasini ta’minlashda asosiy vazifani bajaradi. Middleware termini birinchi bo‘lib, 1968 yili qo‘llanilgan. Korporativ ilovalarni integratsiyalash texnologiyasi sifatida XX asrning 80-yillarida yangi ilovalarni, mavjud tizim bilan va bir-biri bilan bog‘lanish muammosini echishda foydalanilgan. Hozirgi kunda "middleware" termini shaxsiy kompyuterdagi foydalanuvchi ilovalari orasida va taqsimlangan ma’lumotlar bazalarini boshqarish tizimlarida joylashgan ixtiyoriy dasturiy komponentlarga nisbatan qo‘llanilish mumkin. Bugungi kunda taqsimlangan tizimlar turli muxitlarda ishlaydi, chunki, turli tugunlarda turli xil qurilmalar va operatsion tizimlar o‘rnatilgan bo‘ladi. Masalan, Windows operatsion tizimidan foydalanuvchi klient UNIX boshqaruv tizimlarida ishlaydigan serverlarga bog‘lanishi mumkin. Umumiy xolda taqsimlangan tizimlar foydalanuvchilar uchun yagona tizim bo‘lgan, ammo bir-biriga bog‘liq bo‘lmagan va fizik joylashuvi turli geterogen tugunlarda bo‘lgan turli komponentlarni bog‘lash uchun kerak bo‘lgan apparat-dasturiy echimdir.
Taqsimlangan tizimlarda komponentlarni va ilovalarni o‘zaro bog‘lashda, turli dasturiy plotformalar orasida aloqa hosil qilish va ma’lumot almashishda asosiy rolni middleware o‘ynaydi (1.4-rasm)
Turli apparat va dasturiy ta’minotlarning birga ishlashini ta’minlash;
Taqsimlangan tizimlar uchun umumfoydalanish servislarni ta’minlash;
Taqsimlangan dasturlash uchun yuqori darajadagi interfeyslar yoki foydalanuvchi dasturlash interfeyslarini(API) ta’minlash.
Ta’kidlash joizki, taqsimlangan tizimlarda oraliq muxitlarning asosiy vazifasi - taqsimlangan tizimlarni dasturlashni osonlashtirish hisoblanadi. U taqsimlangan tizimlarda ilovalar kodlarining qayta qo‘llash, rivojlantirish, plotformalararo ilovalar yaratish, turli ilovalar o‘rtasida o‘zaro aloqani ta’minlash kabi vazifalarni bajaradi.
Bugungi kunda keng tarqalgan middleware paketlariga quyidagilarni misol qilib keltirishimiz mumkin:
Sun JVM;
CORBA;
Microsoft .NET;
Sun J2EE / EJB.
Taqsimlangan tizimlardagi ixtiyoriy bir kompyuter uchun uzoq masofada joylashgan barcha klient kompyuterlarga hisoblash yoki xizmat ko‘rsatish tizimi hisoblanadi. Bunda oraliq muhitning asosiy vazifasi ochiq, kengayuvchan va barqator taqsimlangan tizimlarni yaratishda ishlab chiqaruvchilarga yordam berishdir. Uning vazifalariga quyidagilar kiradi:
Bir dasturiy komponent xizmatlarini operatsion tizim mexanizmiga bog‘lamagan holda boshqa komponentlarga ham foydalanish imkoniyatini yaratish;
Taqsimlangan tizimlarda xavfsizlikni ta’minlash: barcha foydalanuvchilarga taqdim etilayotgan xizmatlarni va komponentlar orasidagi uzatiladigan axborotlarni buzilishidan hamda uchinchi tomonni xabar topishidan himoya qilish uchun autentifikatsiya va avtorizatsiyalaydi;
Ma’lumotlarni yaxlitligini ta’minlash: Uzoq masofada joylashgan tizim komponentlari orasida taqsimlangan tranzaksiyalarni boshqarish;
Dasturiy komponentlardagi va serverdagi yuklanishlarni nazorat qilish;
Uzoq masofada joylashgan komponentlarni topish va boshqalar.
Bitta taqsimlangan tizimlar chegarasida bir necha ko‘rinishdagi oraliq muhitdan foydalanish mumkin.
Umumiy holatda taqsimlangan tizimlar apparat-dasturiy ishlanmalar bo‘lib, o‘zaro mustaqil bo‘lgan masofadagi turli fizik tugunlarda joylashgan, foydalanuvchilarga yagona birlashgan tizimi ko‘rinishida xizmat ko‘rsatishni ta’minlovchi komponentlardan tashkil topadi. Geterogen tugunlararo o‘zaro aloqada talab qilinadigan shaffoflik, masshtabi jihatidan kengayuvchanlik, va ochiqlilikni ta’minlash uchun OSI modelining transport va amaliy pog‘onalari orasida joylashgan maxsus oraliq pog‘ona qo‘llaniladi().
1.5-rasm. OSI modelining transport va amaliy pog‘onalari orasida joylashgan maxsus oraliq pog‘onaning tavsirlanishi
Endi oraliq dasturiy ta’minotlarning tavsifini ko‘rib chiqamiz. Oraliq dasturiy ta’minot – dasturiy ta’minotlar sinfi bo‘lib, taqsimlangan klient server ilovalarining komponentlarini birlashtirish yoki yagona axborot tizimiga tarmoq ilovalarini birlashtirish uchun qo‘llaniladi. Oraliq dasturiy ta’minotlar turli plotformalarda ishlovchi, o‘zaro aloqa qiluvchi turli ilovalarga murojaat qilish xizmatlari to‘plami hisoblanadi. Oraliq dasturiy ta’minotlarning umumiy amaliy interfeyslari(API) geterogen tarmoqlarni realizatsiya qilish vositalari va infrastrukturalariga bog‘liq bo‘lmagan holda ilovalar o‘rtasida o‘zaro aloqa tashkillashtirishga imkon beradi, tarmoqning tarkibiy tuzilishidagi o‘zgartirishlar ilovalarni o‘zgartirishni talab etmaydi.
CORBA, COM va Java Beans kabi ob’ektlarning o‘zaro aloqasini yagona ko‘rinishda taqdim etuvchi oraliq muxit texnologiyalari komponentlardan qayta foydalanishni ta’minlaydi va shu sababli ular komponentlar texnologiyalari deb nomlanadi. Lokal tarmoqlardan boshlab katta taqsimlangan tizimlarda qo‘llaniluvchi har qanday klient server muhitlari bunday texnologiyalar asosida quriladi. Ma’lumki, har doim klient serverga so‘rov jo‘natadi yoki ma’lumotlar bazasidan ma’lumotlarni ilova yuklab oladi. Bunda klient server aloqasida oraliq dasturiy ta’minot vositachi bo‘lib hizmat qiladi. Kommunikatsion protokollar ma’lumotlar bazasiga so‘rov yuborish tillari, dasturiy ilovalar va operatsion tizimlar nomuvofiqligini oraliq dasturiy ta’minot orqali bartaraf etiladi. Aytish mumkinki, oraliq dasturiy ta’minot klient-server muhitlarining asosiy qismi hisoblanadi, agar u to‘g‘ri ishlamasa, ma’lumot almashish tizimi butunlay ishlamaydi. O‘zaro bog‘lanish tizimi ishlamaydi.
Odatda amaliy dasturlash interfeysi deb ta’rif beriluvchi oraliq dasturiy ta’minot klient va server yoki serverlararo yuqori darajali kommunikatsiyani ta’minlashda vositachi vazifasini bajaradi. U tarmoq yoki transport pog‘onasi ustida ishlaydi va quyidagi kommunikatsion xizmatlarga bog‘liq bo‘lmaydi. Masalan, klient qismida joylashgan ilovaga tarmoqning boshqa qaysidir qismida joylashgan boshqa operatsion tizimdan foydalanuvchi serverdagi xizmat yoki ma’lumot zarur bo‘lishi mumkin. Kerakli ma’lumotlarni izlash bilan shug‘ullanuvchi klient server ilovasining qismi oraliq dasturiy ta’minotga so‘rov jo‘natadi. Oraliq dasturiy ta’minot ma’lumotga so‘rov jo‘natadi va olingan natijani qayta ishlab ilovaga qayta yuboradi.
Middleware xizmatlari operatsion tizimlar va tarmoq xizmatlari bilan taqqoslanganda keng qamrovli turli ko‘rinishdagi API funksiyalarini tavsiflaydi va quyidagilarni ta’minlaydi:
boshqa tarmoq xizmatlariga va ilovalariga bevosita kirish;
boshqa tarmoq servislariga bog‘liq emas;
yuqori darajadagi ishonchlilik va doimiy tayyorgarlik.
Ta’kidlash joizki, operatsion tizimlarning va oraliq dasturiy ta’minotlar funksiyalarining qisman farq qilish shartli hisoblanadi. Avval oraliq dasturiy ta’minotlarda realizatsiya qilingan imkoniyatlar xozirda operatsion tizimlar yadrosida amalga oshirilmoqda. Masalan, TCP/IP steki bugungi kunda barcha operatsion tizimlarning tarkibiy qismi hisoblanadi. Oraliq dasturiy ta’minotlar bajaradigan barcha funksiyalar, turli plotformalardagi ilovalarga va axborotlarga kirish, protokollar va tarmoqlash funksiyalari, oson va konfliktsiz amalga oshiriladi.
Oraliq dasturiy ta’minot bir vaqtda klient va server operatsiyalari bilan aloqa qiladi. Uni Web-ilovalar va meynfraym bazasidagi eski tizimlar kabi turli tizimlarni bog‘lovchi modul sifatida qarash mumkin. Ushbu dasturiy ta’minot kompaniyalarga o‘zlarining eski tizimlarini saqlab qolish va ularni yangi tizimlarga bog‘lash imkonini beradi, shuningdek, yangi ilovalarda qo‘llaniluvchi oxirgi ishlanmalardan foydalanish imkonini beradi.
1.6-rasm. Taqsimlangan tizimlarda komponentlarni bog‘lashda oraliq dasturiy ta’minotning o‘rni
SHunday qilib, Middleware tizimlari taqsimlangan tizimlarda komponentlar orasida o‘zaro aloqani ta’minlashda muxim ahamiyat kasb etadi. Ular turli ilovalar, foydalanuvchi dasturlari uchun yagona oraliq interfeys vazifasi bajaradi. Oraliq muhit texnologiyalaridan foydalanish taqsimlangan tizimlarning apparat va dasturiy qurilmalarining har xilligini ta’minlaydi.