Kliyent - server arxitekturasi asosidagi ilova mantiqan bo‘linishining tipik
sxemasi
Kliyent-server arxitekturasida ilova quyidagi mantiqiy sathlarga bo‗linadi:
Foydalanuvchi interfeysi sathi. Interfeys
odatda kliyent kompyuterida
amalga oshiriladi;
Qayta ishlash sathi (ilova mantig‗i). Ushbu sathda ilovada ko‗zda tutilgan
asosiy jarayon (―biznes-mantig‗i‖) amalga oshiriladi (funksionallik);
Ma‘lumotlar sathi. Ma‘lumot qayta ishlaydigan ilovalarga kerakli
ma‘lumotlarni taqdim etadigan dasturlarni saqlaydi.
Bu ma‘lumot saqlash sathning asosiy xususiyatlaridan biri hisoblanadi
(persistence).
Ushbu sath server kompyuterida bajariladi.
Odatda ma‘lumotlar sathi relyatsion ma‘lumotlar bazasi shaklida tuziladi.
Bunday yondoshuv ma‘lumotlarni ilovalarga bog‗liq bo‗lmasligini
hamda
mijoz-kliyent modelida qayta ishlash sathini ma‘lumotlar sat-hidan ajratilishga
imkon yaratadi.
Server – bu boshqa tarmoq ob‘ektlariga ularning iltimosiga binoan xizmat
ko‗rsatadigan ob‘ektdir.
Xizmat - bu mijozlarga xizmat ko‗rsatish jarayoni.
Mijozlar - bu server resurslaridan foydalanadigan va foydalanuvchi uchun
qulay interfeys-larni ta‘minlaydigan ish stansiyalari.
Foydalanuvchi interfeysi - foydalanuvchi yoki tizim bilan o‗zaro
ishlash
protseduralari.
Сервер
бўлими
Иш станцияси
(Мижоз)
Иш станцияси
(Мижоз)
Алоқа
Tizimni uchta mantiqiy sathlariga bo‗linishida ilovalar alohida
kompyuterlarda taqsimlanadi. Bunda eng sodda yo‗l - kompyuterlarni ikki turga
bo‗lish:
1) Kliyent kompyuterlari (ishchi stansiyalar) – ularga interfeys vazifasini
bajaradigan mijoz dasturlari o‗rnatiladi;
2) server kompyuterlari – ularda qayta ishlash va ma‘lumot sathlarining
vazifalari bajariladi.
Bunday tashkil etishda tizim taqsimlangan sharoitda faoliyat ko‗rsata
olmaydi, hamma
masalalar serverda yechiladi, mijoz kompyuteri faqat oddiy
terminal sifatida ishlatiladi.
Kliyent - server arxitekturasining variantlari.
Ikki zvenoli dasturiy arxitektura. Amaliyotda tizimning har xil
foydalanuvchilarini bir xil ma‘lumotlarga kirish holatlari ko‗p uchraydi.
Buni amalga oshirish uchun mijoz-server tizimining funksiyalarini bir necha
Kliyent kompyuterlari orasida ajratish kerak bo‗ladi.
Buning nisbatan sodda yo‗li, ilovalarning mantiqiy sathlarini server
qismining ma‘lumotlarga kirishni ta‘minlaydigan
bir ilovasi doirasida
taqsimlanishini amalga oshirish hisoblanadi.
Ikki zvenoli kliyent-server arxitekturasining sxemasi
Shunday qilib, dasturiy yechim Kliyent kompyuteri interfeys funksiyalarini
minimallashtirishdan (―ingichka‖ Kliyent (tonkiy kliyent)), foydalanuvchi
interfeysining hamma vazifasini Kliyent kompyuteriga topshirishgacha (―yo‗g‗on‖
Kliyent (tolstiy kliyent)) o‗zgar-tirib boriladi. Ikkala holatda ham server
kompyuterida joylashgan xususan ilovaga tegishli
protokol yordamida tashqi
interfeys serverdagi ilovadan ajratiladi. Bunday arxitektura asosida tuzilgan model
ikki zvenoli mijoz-server modeli deb nomlanadi.
Kliyent-server modelining rivojlanishi oqibatida uch zvenoli arxitektura.
yaratildi. Bu variantda foydalanuvchi interfeysi ilova mantig‗i (qayta ishlash
jararyoni) va ma‘lumotlarga kirish qismlar tizimning mustaqil komponentasi
sifatida ajratiladi va u mustaqil kompyuterlarda ishlash qobiliyatiga ega bo‗ladi.
Dasturlar, qayta ishlash sathining asosiy qismi alohida serverga o‗tkaziladi, uning
nomi ilovalar serveri deyiladi. Bu tizimda foydalanuvchining so‗rovlari ketma-ket
tizimning kliyent qismida, ilovalar mantig‗i (qayta ishlash dasturlari) serverida va
ma‘lumotlar bazasi serverida qayta ishlanadi.
Uchta zvenoli mijoz-server arxitekturasining sxemasi
Ko‗p zvenoli mijoz-server arxitekturalari ilovalarni foyda-lanuvchi
interfeysi, qayta ishlash va ma‘lumotlar komponentalariga bo‗linishlarining
to‗g‗ridan-to‗g‗ri davomi hisoblanadi. Bunday taqsimlanish turi vertikal
taqsimlanish deyiladi. Ularning aosiy xususiyati mantiqan harxil komponentalarni
har xil kompyuterlarda joylashishi hisoblanadi. Kliyent - server tizimlarining
zamonaviy aritekturalari. Tashkilot faoliyatini avtomatlashtirish ilovalari nuqtai
nazaridan tizimni
taqsimlangan deb yuritiladi, agar uning tarkibidagi mantiqiy
ilovalar (qayta ishlash dasturlari) tizimning bir nechta komponentalari orasida
taqsimlangan bo‗lib, har biri alohida kompyuterlarda bajarilishi mumkin bo‗lsa.
Bunda foydalanuvchining so‗rovlari foydalanuvchi interfeysidan,
to yagona
ma‘lumotlar serverigacha ketma-ket o‗tib bormaydi. Bu ma‘noda ko‗p zvenoli
arxitekgaturani eniga kengayishi kuzatiladi. Kliyent va serverlarni bunday
taqsimlanishi gorizontal taqsimlanish deyiladi. Kliyent yoki server mantiqan bir xil
turdagi modullarning taqsimlangan qismlarini o‗z tarkibida saqlashi mumkin,
ularning
ishlashi mustaqil, bir-biriga bog‗liq bo‗lmagan holda amalga oshiriladi.
Masalan, lokal tarmoqda bir necha web-server kompyuterlari mavjud bo‗lsin. Agar
Web – sahifa o‗zgartirilsa, bu o‗zgarishlar boshqa serverlarga ham jo‗natiladi.
Kelgan so‗rov uchun ma‘lum bir server ―karusel‖ usuli asosida tanlanadi. Bunday
formada taqsimlash ommabop Web-saytlar o‗rnatilgan serverlardagi yuklamalarni
tekislash maqsadida qo‗llaniladi.