Mijoz-server texnologiyasi. Mijoz-server texnologiyasio'rta yoki katta kompyuterlar asosida hisoblash jarayonini markazlashtirilgan boshqarish sxemasini almashtirdi (mainframe).
Arxitekturada mijoz-server Kompyuter terminal (mijoz) o'rnini egalladi va asosiy kadr ma'lumotni qayta ishlashning umumiy vazifalarini hal qilish uchun maxsus ajratilgan bir yoki bir nechta kuchli kompyuterlarni (server kompyuterlari) egalladi. Ushbu modelning afzalligi hisoblash tizimining yuqori omon qolish va ishonchliligi, masshtablash qulayligi, foydalanuvchilarning bir nechta dasturlar bilan bir vaqtning o'zida ishlash imkoniyati, yuqori darajadagi ma'lumotlarni qayta ishlash samaradorligi, foydalanuvchiga yuqori sifatli interfeys bilan ta'minlash va boshqalar.
E'tibor bering, bu juda istiqbolli va eskirgan texnologiya undan keyingi rivojlanishini oldi. Yaqinda texnologiya haqida gapira boshladi intranet , internet g'oyalarini korporativ tizimlar muhitiga o'tkazish natijasida paydo bo'ldi. Mijoz-server texnologiyasidan farqli o'laroq, ushbu texnologiya ma'lumotlarga emas, balki iste'mol uchun tayyor bo'lgan yakuniy shaklidagi ma'lumotlarga qaratilgan. Intranet texnologiyasi oldingi ikkita sxemaning afzalliklarini birlashtiradi. Uning asosida qurilgan hisoblash tizimlariga markaziy axborot serverlari va oxirgi foydalanuvchiga ma'lumotlarni taqdim etish uchun taqsimlangan komponentlar kiradi (brauzer dasturlari yoki brauzerlar). Ushbu texnologiyani batafsil muhokama qilish ushbu qo'llanmadan tashqarida.
Tarmoqdagi har qanday ikkita ob'ektning o'zaro ta'sirida siz har doim ma'lum bir resursni (xizmat, xizmat) ta'minlaydigan tomonni va ushbu manbani ishlatadigan tomonni ajratib olishingiz mumkin. Resurs iste'molchilari an'anaviy ravishda chaqiriladi mijoz tomonidan va etkazib beruvchi - server.
Resurs sifatida siz apparat tarkibiy qismlarini (disk, printer, modem, brauzer va boshqalar), dasturni, faylni, xabarni, ma'lumotni yoki umuman kompyuterni ko'rib chiqishingiz mumkin. Demak, ko'pgina atamalarning kelib chiqishi: fayl serveri yoki disk serveri, printer yoki bosma server, xabar serveri, SQL server (SQL-da tuzilgan ma'lumotlar bazasi so'rovlarini qayta ishlash dasturi), kompyuter serveri va boshqalar. ushbu serverlarning barchasida tegishli mijozlar mavjud.
Dasturiy ta'minot nuqtai nazaridan mijoz-server texnologiyasi mijoz dasturlari va server dasturlarining mavjudligini anglatadi. Mijoz dasturlari odatda so'z protsessorlari va jadval protsessorlari kabi dasturlardir. Ma'lumotlar bazasini boshqarish tizimlari eng ko'p ishlatiladigan server dasturlari hisoblanadi. "Mijoz-server" turidagi dasturlarning odatiy juftligi misolida ma'lumotlar bazasi ma'lumotlari bo'lgan jadvalni o'z ichiga olgan hujjatni qayta ishlaydigan so'z protsessor dasturi deb hisoblash mumkin.
Bitta dasturga nisbatan tarmoqda ishlaydigan ba'zi bir dasturlar mijoz va boshqa dasturlarning serveri bo'lishi mumkin. Bundan tashqari, ma'lum vaqt oralig'ida bir xil dasturlar orasidagi mijoz va serverning roli o'zgarishi mumkin.
Mijoz-serverning turli xil murakkab modellari uchta bog'lanish modeli "Ilova serveri" – AS modeli (Ilova serveri). Ushbu model ma'lumotlar bazalari yordamida tarmoqlarning ishlashini tavsiflaydi. Modelga ko'ra, uchta asosiy funktsiyaning har biri (ma'lumotlarni boshqarish, dasturni qayta ishlash va oxirgi foydalanuvchiga ma'lumotlarni taqdim etish) alohida kompyuterda amalga oshiriladi.
Turli xil arxitektura elementlarining nomuvofiqligini oldini olish uchun biz ikki bosqichli "Client - Server" arxitekturasining ikkita modifikatsiyasini yaratdik: "Qalin mijoz" ("ingichka server") va "yupqa mijoz" ("qalin server").
Ushbu arxitekturada ishlab chiquvchilar ma'lumotlarni ikki qismdan - mijoz tomonidan ("Thick Client") yoki serverda ("Thin Client") qayta ishlashga harakat qilishdi.
Har bir yondashuv o'zining muhim kamchiliklariga ega. Birinchi vaziyatda tarmoq keraksiz ravishda ortiqcha yuklanadi, chunki u orqali xom ma'lumotlar, ya'ni ortiqcha ma'lumotlar uzatiladi. Bundan tashqari, tizimni qo'llab-quvvatlash va uni o'zgartirish yanada murakkablashadi, chunki xatoni tuzatish yoki hisoblash algoritmini almashtirish barcha interfeys dasturlarini bir vaqtning o'zida to'liq almashtirishni talab qiladi, agar to'liq almashtirish amalga oshirilmasa, ma'lumotlar yoki xatolar nomuvofiqligi yuzaga kelishi mumkin. Agar barcha ma'lumotlarni qayta ishlash serverda amalga oshirilsa, unda o'rnatilgan protseduralarni tavsiflash va ularni tuzatish muammosi mavjud. Serverda ma'lumotlarni qayta ishlaydigan tizimni boshqa platformaga (OS) o'tkazish mutlaqo mumkin emas, bu jiddiy kamchilik.
Agar ikki darajali klassik arxitektura "Mijoz - server" yaratilgan bo'lsa, unda siz quyidagi faktlarni bilishingiz kerak:
Qalin server arxitekturasi yupqa mijozlar arxitekturasiga o'xshash
Mijozdan so'rovni serverga o'tkazish, so'rovni server tomonidan qayta ishlash va natijani mijozga yuborish. Shu bilan birga, arxitektura quyidagi kamchiliklarga ega:
- amalga oshirish murakkablashadi, chunki SQL kabi tillar bunday dasturiy ta'minotni ishlab chiqish uchun mos emas va disk raskadrovka uchun yaxshi vositalar mavjud emas;
- SQL kabi tillarda yozilgan dasturlarning ishlashi boshqa tizimlarga qaraganda ancha past, bu murakkab tizimlar uchun juda muhimdir;
- DBMS tillarida yozilgan dasturlar odatda qisman unchalik ishonchli emas ishlaydi; ulardagi xato butun ma'lumotlar bazasi serverining ishdan chiqishiga olib kelishi mumkin;
- Shunday qilib olingan dasturlar boshqa platformalar va tizimlarga mutlaqo ko'chirilmaydi.
- Thick Client arxitekturasi nozik server arxitekturasiga o'xshash
Talabga ishlov berish mijoz tomonidan amalga oshiriladi, ya'ni serverdan barcha xom-ashyolar mijozga o'tkaziladi. Bunday holda, arxitekturaning salbiy tomonlari bor:
- dasturiy ta'minotni yangilash yanada murakkablashmoqda, chunki uni butun tizim davomida bir vaqtning o'zida almashtirish kerak;
- vakolatlarni taqsimlash yanada murakkablashadi, chunki kirishni boshqarish harakatlarga emas, balki jadvallarga muvofiq amalga oshiriladi;
- xom ashyo ma'lumotlarini uzatish tufayli tarmoq haddan tashqari yuklangan;
- ma'lumotlarni zaif himoya qilish, chunki vakolatni to'g'ri taqsimlash qiyin.
Ushbu muammolarni hal qilish uchun ko'p darajali (uch yoki undan ko'p darajadagi) mijoz-server arxitekturasidan foydalanish kerak.
Uch darajali model .
O'tgan asrning 90-yillari o'rtalaridan boshlab mutaxassislar orasida mashhurlik uch bosqichli "Mijoz - server" arxitekturasini oldi, bu axborot tizimini funktsional imkoniyatlar bo'yicha uch qismga ajratdi: ma'lumotlarga kirish mantig'i, taqdimot mantig'i va biznes mantiqlari. Ikki pog'onali arxitekturadan farqli o'laroq, uch bosqichli qo'shimcha aloqaga ega - biznes mantig'ini amalga oshirish uchun mo'ljallangan dastur serveri, mijoz esa to'liq bo'shatiladi, bu esa o'rta dasturlarga so'rovlar yuboradi va serverning barcha imkoniyatlaridan maksimal darajada foydalaniladi.
Uch bosqichli arxitekturada mijoz, qoida tariqasida, ma'lumotlarni qayta ishlash funktsiyalari bilan ortiqcha ishlamaydi, lekin dastur serveridan keladigan ma'lumotlarni taqdim etish tizimi sifatida o'zining asosiy rolini bajaradi. Bunday interfeys standart veb-texnologiya vositalari - brauzer, CGI va Java yordamida amalga oshirilishi mumkin. Bu mijoz va ilova serverlari o'rtasida taqdim etiladigan ma'lumotlarning hajmini kamaytiradi, bu esa mijoz kompyuterlarini telefon kanallari kabi sekin tarmoqlarda ham ulashga imkon beradi. Shu munosabat bilan mijozning qismi shunchalik sodda bo'lishi mumkinki, ko'p hollarda u universal brauzer yordamida amalga oshiriladi. Ammo, agar siz hali ham uni o'zgartirishingiz kerak bo'lsa, unda bu protsedura tez va og'riqsiz bajarilishi mumkin.
Ilova serveri - bu server va mijoz o'rtasidagi oraliq qatlam bo'lgan dastur.
- Xabar yo'naltirilgan - MQseries va JMSning yorqin vakillari;
- Object Broker - CORBA va DCOMning yorqin vakillari;
- Komponent asosida - .NET va EJB ning yorqin vakillari.
Ilova serveridan foydalanish yanada ko'p funktsiyalarni taqdim etadi, masalan, mijoz kompyuterlarida yukni kamaytiradi, chunki dastur serveri yukni taqsimlaydi va buzilishlardan himoya qiladi. Biznes mantig'i dastur serverida saqlanganligi sababli, mijoz dasturiy ta'minoti hisobot yoki hisob-kitoblardagi har qanday o'zgarishlar bilan hech qanday zarar ko'rmaydi.
Sun, Oracle Microsystem, IBM, Borland kabi taniqli kompaniyalarning dasturiy serverlari juda oz va ularning har biri taqdim etilayotgan xizmatlar to'plamida farq qiladi (men bu holatda ishlashni hisobga olmayman). Ushbu xizmatlar dasturiy ta'minotni ishlab chiqarishga va korporativ dasturlarni joylashtirishga yordam beradi. Odatda, dastur serveri quyidagi xizmatlarni taqdim etadi:
- WEB Server - ko'pincha eng kuchli va ommabop Apache-ni o'z ichiga oladi;
- WEB konteyner - sizga JSP va servletlarni ishlatish imkonini beradi. Apache uchun bunday xizmat Tomcat;
- CORBA Agent - CORBA ob'ektlarini saqlash uchun tarqatilgan katalogni taqdim etishi mumkin;
- Xabarlar xizmati - xabarlar vositachisi;
- Transaction Service - nomidan bu operatsiya xizmati ekanligi ayon bo'ldi;
- JDBC - ma'lumotlar bazalariga ulanish uchun drayverlar, chunki bu ma'lumotlar bazalari bilan aloqa o'rnatishi kerak bo'lgan dastur serveri va u sizning kompaniyangizda ishlatiladigan ma'lumotlar bazasiga ulana olishi kerak;
- Java Mail - bu xizmat SMTP uchun xizmat ko'rsatishi mumkin;
- JMS (Java Messaging Service) - sinxron va asenkron xabarlarni qayta ishlash;
- RMI (Remote Method Invocation) - masofaviy protseduralarni chaqirish.
Ko'p darajali mijoz-server tizimlarini Web-texnologiyalarga osongina o'tkazish mumkin - buning uchun siz mijoz qismini ixtisoslashtirilgan yoki universal brauzer bilan almashtirishingiz, shuningdek dastur serverini veb-server va server protseduralarini chaqirish uchun kichik dasturlar bilan to'ldirishingiz kerak. Uchun
ushbu dasturlarni ishlab chiqishda Common Gateway Interface (CGI), shuningdek zamonaviy Java texnologiyalari sifatida foydalanish mumkin.
Uch darajali tizimda, dastur serveri va DBMS o'rtasidagi aloqa kanallari sifatida, siz minimal xarajatlarni talab qiladigan tezkor tarmoqlardan foydalanishingiz mumkin, chunki serverlar odatda bitta xonada (serverda) joylashgan va katta hajmdagi ma'lumot uzatilishi tufayli tarmoqni ortiqcha yuklamaydi.
Yuqoridagilarning barchasidan kelib chiqadiki, ikki darajali arxitektura ko'p darajali arxitekturadan ancha past, shuning uchun bugungi kunda uchta modifikatsiyani - RDA, DBS va ASni hisobga olgan holda faqat ko'p darajali mijoz-server arxitekturasidan foydalanilmoqda.
Client-Server texnologiyasining turli xil modellari
Mahalliy tarmoqlar uchun eng birinchi yadro texnologiyasi bo'lgan fayl serveri modeli (FS). O'sha paytda bu texnologiya FoxPro, Clipper, Clarion, Paradox va boshqalar kabi tizimlardan foydalanadigan mahalliy ishlab chiqaruvchilar orasida juda keng tarqalgan edi.
FS modelida barcha 3 komponentlarning funktsiyalari (taqdimot komponenti, dastur komponenti va manbaga kirish komponenti) bitta kodda birlashtirilgan bo'lib, u server kompyuterida (host) amalga oshiriladi. Ushbu arxitekturada mijozning kompyuteri mutlaqo yo'q, displey va ma'lumotlarni uzatish kompyuter yoki terminalning kompyuteridan foydalanib, terminalni taqlid qilish tartibida amalga oshiriladi. Ilovalar odatda to'rtinchi avlod tilida (4GL) tuziladi. Tarmoqdagi kompyuterlardan biri fayl serveri hisoblanadi va boshqa kompyuterlarga fayllarni qayta ishlash xizmatlarini taqdim etadi. U tarmoqdagi OT nazorati ostida ishlaydi va axborot manbalariga kirish komponenti sifatida muhim rol o'ynaydi. Tarmoqdagi boshqa shaxsiy kompyuterlarda amaliy dastur komponenti va taqdimot komponenti ulangan kodlarda ishlaydi.
Mijoz va server o'rtasidagi harakatlanish texnologiyasi quyidagicha: so'rov mijoz kompyuterida joylashgan ma'lumotlar bazasida joylashgan ma'lumotlar bazasini uzatuvchi fayl serveriga yuboriladi. Barcha ishlov berish terminalda amalga oshiriladi.
Almashish protokoli - bu dasturga fayl serveriga fayl tizimiga kirishni ta'minlaydigan qo'ng'iroqlar to'plamidir.
Ushbu texnologiyaning ijobiy tomonlari:
- ilovalarni ishlab chiqish qulayligi;
- ma'muriyatchilik va dasturiy ta'minotni yangilash qulayligi
- uskunalar ish joylarining arzonligi (terminallar yoki emulyatsiya rejimida ishlashi past bo'lgan arzon kompyuterlar har doim to'liq kompyuterlarga qaraganda arzonroq).
Ammo FS-modelning afzalliklari uning kamchiliklaridan ustundir:
Tarmoq orqali yuborilgan ma'lumotlarning ko'pligiga qaramay, javob berish vaqti juda muhim, chunki terminalda mijoz tomonidan kiritilgan har bir belgi serverga uzatilishi, dastur tomonidan qayta ishlanib, terminal ekraniga qaytarilishi kerak. Bundan tashqari, bir nechta kompyuterlar o'rtasida yuklarni muvozanatlash muammosi mavjud.
- qimmatbaho server uskunalari , barcha foydalanuvchilar o'z manbalarini baham ko'rganligi sababli;
- grafik interfeysning etishmasligi .
"Fayl-server" texnologiyasiga xos bo'lgan muammolarni hal qilish natijasida yanada zamonaviy texnologiyalar "Client-server" paydo bo'ldi.
Zamonaviy ma'lumotlar bazalari uchun mijoz-server arxitekturasi deyarli standart bo'lib qoldi. Agar ishlab chiqilgan tarmoq texnologiyasi "mijoz-server" arxitekturasiga ega bo'ladi deb taxmin qilinsa, bu uning ichida amalga oshirilgan amaliy dasturlar taqsimlangan xarakterga ega bo'ladi, ya'ni amaliy funktsiyalarning bir qismi mijoz dasturida, boshqasi esa dasturda amalga oshiriladi. server.
Mijoz-Server texnologiyasi doirasida dasturlarni amalga oshirishdagi farqlar to'rt omil bilan belgilanadi:
- mantiqiy tarkibiy qismlarga dasturiy ta'minotning qaysi turlari kiradi;
- mantiqiy komponentlarning funktsiyalarini amalga oshirish uchun qanday dasturiy mexanizmlardan foydalaniladi;
- tarmoqdagi kompyuterlar tomonidan mantiqiy tarkibiy qismlar qanday taqsimlanishi;
- tarkibiy qismlarni bir-biriga ulash uchun qanday mexanizmlardan foydalaniladi.
Shundan kelib chiqqan holda uchta yondashuv ajralib chiqadi, ularning har biri tegishli server-texnologiya modelida amalga oshiriladi:
- masofaviy ma'lumotlarga kirish modeli (Remote Date Access - RDA);
- ma'lumotlar bazasi serverining modeli (DateBase Server - DBS);
- Application Server Model (Application Server - AS).
RDA modelining muhim afzalligi - bu SQL-ga yo'naltirilgan MBBT bilan ishlaydigan ish stoli ilovalarining tezkor shakllanishini ta'minlaydigan dasturlarni ishlab chiqish vositalarining keng tanlovi. Odatda, vositalar OS bilan grafik interfeys interfeysini, shuningdek, taqdimot va dastur funktsiyalari aralashgan holda avtomatik kod yaratish vositalarini qo'llab-quvvatlaydi.
Keng tarqalishiga qaramay, RDA-model eng ilg'or DBS-modelga imkon beradi.
Do'stlaringiz bilan baham: |