Скачиваний:
0
Добавлен:
23.04.2025
Размер:
460.02 Кб
Скачать

1-ámeliy sabaq. “Programmalıq támiynat arxitekturası” páninen ámeliy jumıslardıń alıp barılıwı haqqında kirisiw hám dáslepki maǵlıwmatlar

Jobası:

1.Programmalıq támiynat arxitekturasınıń tiykarǵı túsinikleri hám principleri

2.Arxitekturalıq modeller hám úlgiler

3.Arxitekturalıq qararlardı analizlew hám qabıl etiw

4.Programmalıq támiynat arxitekturasın jobalaw processi

5.Praktikalıq tapsırma: ápiwayı arxitekturanı jobalaw

Jumıstıń maqseti:

Programmalıq támiynat arxitekturası haqqında tiykarǵı túsiniklerdi úyreniw, arxitekturalıq sheshimlerdi qabıl etiw principlerin ózlestiriw hám ámeliy jobalaw tájiriybesin alıw.

Programmalıq támiynat arxitekturası túsinigi

Programmalıq támiynat arxitekturası - bul programmalıq sistemanıń qurılımı hám dizaynı bolıp, onıń komponentlerin, olardıń arasındaǵı baylanıslardı hám olardı basqaratuǵın principler hám nızamlardı anıqlaydı.

Jaqsı arxitekturanıń tiykarǵı ózgeshelikleri:

Modullik: Sistema anıq bólingen, bir-birine baylanıslı bolmaǵan komponentlerden quraladı

Keńeytiw múmkinshiligi: Jańa funkcionaldı qosıw ańsat

Masshtablanıw: Júklemeniń artıwı menen sistema ónimliligin saqlaydı

Qayta qollanıw múmkinshiligi: Komponentler basqa joybarlarda qollanıla aladı

Testlew múmkinshiligi: Sistema komponentlerin izolyaciyada testlew ańsat

Programmalıq támiynat arxitekturasınıń tiykarǵı komponentleri

1.Strukturalıq elementler - moduller, komponentler, klasslar, paketler

2.Baylanıslar hám interfeysler - komponentler arasındaǵı qatnasıqlar

3.Arxitekturalıq stiller hám úlgiler - ónimli sheshimler hám dizayn úlgileri

4.Kóz-qaraslar - arxitekturanı hár qıylı táreplerden kóriw (logikalıq, fizikalıq, process)

5.Non-funkcional talaplar - ónimlilik, qáwipsizlik, masshtablanıwshılıq

Ámeliy bólim

Tapsırma 1: Arxitekturalıq modellerdi salıstırıw

Monolit arxitekturası

Monolit arxitektura - bul barlıq komponentler bir processte jumıs isleytuǵın hám bir birligi sıpatında jaylastırılatuǵın arxitekturalıq stil.

+---------------------------------------------

 

 

 

 

 

 

+

|

 

Monolit qosımsha

 

 

|

|

 

 

 

 

 

 

|

| +-------------

 

+

+-------------

 

+

+-------

+ |

| |

Biznes-

|

|

Derek

|

| UI

| |

| |

logika

|

|

qatlamı

|

|qatlamı| |

| +-------------

 

+

+-------------

 

+

+-------

+ |

|

 

 

 

 

 

 

|

| +-------------

 

+

+-------------

 

+

 

|

| |

Servisler

|

|

Utilita

|

 

|

| |

 

|

|

klasslar |

 

|

| +-------------

 

+

+-------------

 

+

 

|

+---------------------------------------------

 

 

 

 

 

 

+

Artıqmashlıqları:

Islenbe hám jaylastırıw ápiwayı

Test jazıw hám ótkeriw ańsat

Komponentler arasında tez baylanıs

Kemshilikleri:

Masshtablanıw qıyın

Bir bólimdegi qáte pútkil qosımshaǵa tásir etedi

Úlken kodtı túsiniw hám qollaw qıyın

Klient-server arxitekturası

Klient-server arxitekturası - bul jumıstı eki bólekke bóletuǵın arxitektura: klient (paydalanıwshı interfeysi) hám server (biznes-logika hám maǵlıwmatlar bazası).

+

---------------

+

HTTP/REST

 

+---------------

+

|

 

|<

--------------------

>|

 

|

|

Klient

|

soraw/juwap

|

Server

|

|

(Frontend)

|

 

|

(Backend)

|

|

 

|

 

|

 

|

+---------------

 

+

 

+

---------------

+

 

 

 

 

 

|

 

 

 

 

 

 

|

 

 

 

 

 

+

---------------

+

 

 

 

 

|

 

|

| Maǵl. bazası

|

|

|

+---------------

+

Artıqmashlıqları:

Jaqsı masshtablanıw

Klient hám serverdi óz-ara ózbetinshe ózgertiw múmkin

Hár qıylı klientler (veb, mobil) ushın bir serverdi qollanıw múmkin

Kemshilikleri:

Monolitke salıstırǵanda quramalı infrastruktura

Tarmaq baylanısına ǵárezlik

API dizaynı hám versiyalawdı talap etedi

Tapsırma 2: Onlayn-dúkan ushın arxitektura jobalaw

Komponentler diagramması

+

------------------

+

+------------------

 

 

+

+

---------------

---+

 

 

 

 

 

 

 

|

 

|

|

 

 

|

|

 

|

 

 

 

 

 

 

 

 

|

Paydalanıwshı

|

|

Ónimlerdi

 

|

|

Buyırtpa

|

 

 

 

 

 

 

 

 

|

interfeysi

|

|

basqarıw

|

|

 

basqarıw

|

 

 

 

 

 

 

 

 

|

 

|

|

 

 

|

|

 

|

 

 

 

 

 

 

 

 

+------------------

 

+

+------------------

 

 

+

+---------------

 

---+

 

 

 

 

 

 

 

 

|

 

 

|

 

 

 

|

 

v

 

 

v

 

 

 

v

+----------------------------------------------------------

 

 

 

 

 

 

 

+

|

 

 

 

 

 

 

 

|

|

API Gateway / Load Balancer

 

 

|

|

 

 

 

 

 

 

 

|

+----------------------------------------------------------

 

 

 

 

 

 

 

+

 

|

 

 

|

 

 

 

|

 

v

 

 

v

 

 

 

v

+------------------

 

+

+------------------

 

 

+

+---------------

 

---+

 

 

 

 

 

 

 

|

 

|

|

 

 

|

|

 

|

 

 

 

 

 

 

 

 

| Autentifikaciya

|

|

Katalog

 

|

|

Tólem

|

 

 

 

 

 

 

 

 

| hám avtorizaciya

|

|

servisi

 

|

|

servisi

|

 

 

 

 

 

 

 

 

|

 

|

|

 

 

|

|

 

|

 

 

 

 

 

 

 

 

+------------------

+

+------------------

 

+

+

---------------

---+

 

 

 

 

 

 

|

 

 

|

 

 

|

v

 

 

v

 

 

v

+------------------

+

+------------------

 

+

+---------------

 

---+

 

 

 

 

 

 

|

|

|

 

|

|

 

|

 

 

 

 

 

 

| Paydalanıwshılar

|

|

Ónimler

|

|

Buyırtpalar

|

 

 

 

 

 

 

| maǵl. bazası

|

|

maǵl. bazası

|

|

maǵl. bazası

|

 

 

 

 

 

 

|

|

|

 

|

|

 

|

 

 

 

 

 

 

+------------------

+

+------------------

 

+

+---------------

 

---+

 

 

 

 

 

 

Komponentler arasındaǵı baylanıslar hám juwapkershilikler

1. Paydalanıwshı interfeysi (UI)

o Funkciyaları: Paydalanıwshı menen óz-ara tásir, formalardı kórsetiw hám validaciyalaw

o Baylanıslar: API Gateway arqalı barlıq servisler menen baylanısadı

2. API Gateway / Load Balancer

o Funkciyaları: Sorawlardı marshrutizaciyalaw, júklemeni teńlestiriw, autentifikaciya

oBaylanıslar: Barlıq mikroservisler menen baylanısadı

3.Autentifikaciya hám avtorizaciya servisi

oFunkciyaları: Paydalanıwshılardı tekseriw, ruqsatlardı basqarıw

oBaylanıslar: Paydalanıwshılar maǵlıwmatlar bazası

4.Katalog servisi

oFunkciyaları: Ónimlerdi izlew, filtrlew hám sortlaw

oBaylanıslar: Ónimler maǵlıwmatlar bazası

5.Tólem servisi

oFunkciyaları: Tólemlerdi qabıl etiw hám óndiriw

oBaylanıslar: Buyırtpalar maǵlıwmatlar bazası, sırtqı tólem shlyuzları

6.Maǵlıwmatlar bazaları

oFunkciyaları: Maǵlıwmatlardı saqlaw hám olarǵa qatnasıwdı

támiyinlew

o Baylanıslar: Tiyisli servisler menen baylanısadı

Arxitekturalıq sheshimlerdi tiykarlaw

1. Mikroservisler arxitekturası tańlandı, sebebi:

o Hár bir komponentti óz-ózinshe masshtablaw múmkinshiligi o Hár qıylı texnologiyalardı qollanıw múmkinshiligi

o Durıs bólingen juwapkershilikler

o Komanda arasında jumıstı bólistiriw ańsat

2. API Gateway qollanıldı, sebebi:

oPaydalanıwshı interfeysi tárepinen jiberilediǵan sorawlardı birlestiriw

oJúklemeni teńlestiriw hám kesh qollanıw arqalı ónimlilikti arttırıw

oOraylastırılǵan autentifikaciya hám avtorizaciya

3.Bólek maǵlıwmatlar bazaları qollanıldı, sebebi:

oHár bir servis óz maǵlıwmatlarına iye boladı

o Bir maǵlıwmatlar bazasına júkleme joqarılawı keri tásir etpeydi o Hár qıylı maǵlıwmatlar bazası túrlerin qollanıw múmkinshiligi

Alternativ arxitekturalıq modeller

1. Monolit arxitektura

o Artıqmashlıǵı: Islenbe baslamasında tezirek hám ápiwayıraq

oKemshiligi: Júkleme artqanda masshtablanıw hám qollaw qıyın

2.Serverless arxitektura

oArtıqmashlıǵı: Infrastrukturanı basqarıw shárt emes

o Kemshiligi: Funkciyalar arasındaǵı baylanıslar quramalı, joqarı keshigiwler

3. Monolit bekend + ayırım frontend

o Artıqmashlıǵı: Bekendti islenbe qılıw ápiwayı, biraq hár qıylı klient túrlerin qollaydı

o Kemshiligi: Monolitke tán masshtablanıw máseleleri

Arxitekturanı tekseriw ushın kriteriyler

1. Ónimlilik

o Sorawlarǵa juwap beriw waqtı (200ms-tan kem bolıwı kerek)

o Bir waqıtta qayta isley alatuǵın sorawlar sanı (keminde 1000 soraw/sekund)

2. Masshtablanıw

oJúkleme artqan jaǵdayda avtomatik túrde jańa ekzemplyarlardı qosıw múmkinshiligi

oResurslardı tiyimli qollanıw

3.Isenimlilik

oKomponentlerdiń birewi islemey qalǵan jaǵdayda sistema jumısın dawam ete alıwı

oMaǵlıwmatlardıń saqlanıp qalıwı hám pútinligi

4.Qáwipsizlik

oBarlıq trafiktiń shifrlanǵan bolıwı (HTTPS)

o Parollardı hesh-funkciyalar menen saqlaw

o SQL-inekciyalarǵa, XSS hám CSRF hújimlerine qarsı qorǵanıw

Bul ámeliy jumısta biz programmalıq támiynat arxitekturasınıń tiykarǵı túsiniklerin úyrendik, hár qıylı arxitekturalıq modellerdi salıstırdıq hám onlayndúkan ushın arxitekturanı jobaladıq. Mikroservisler arxitekturasınıń

artıqmashlıqların hám kemshiliklerin analizledik hám arxitekturalıq sheshimlerdi tiykarladıq.

Jobalanǵan arxitektura joqarı júklemelerde de isenimli hám masshtablanatuǵın bolıp tabıladı, hám keleshekte jańa funkcionaldı qosıw ushın keńeytiw múmkinshiligine iye.

Máseleniń qoyılıwı, ámeliy tapsırmalar:

1-tapsırma: Programmalıq támiynat arxitekturasınıń tiykarǵı komponentlerin anıqlaw

Programmalıq támiynat arxitekturasınıń anıqlamasın beriw

Jaqsı arxitekturanıń tiykarǵı ózgesheliklerin atap ótiw

Programmalıq támiynat arxitekturasınıń tiykarǵı komponentlerin sanap shıǵıw

2-tapsırma: Ápiwayı hám eki qatlamlı arxitektura modellerin salıstırıw

Monolit arxitekturanı sızılma túrinde kórsetiw

Klient-server arxitekturanı sızılma túrinde kórsetiw

Hár birewiniń artıqmashlıqların hám kemshiliklerin analizlew

3-tapsırma: Praktikalıq jobalaw

Ápiwayı onlayn-dúkan sisteması ushın arxitekturanı jobalaw

Tómendegilerdi óz ishine alıw kerek:

o Komponentler diagramması

o Komponentler arasındaǵı baylanıslar o Hár bir komponenttiń juwapkershiligi

4-tapsırma: Jobalanǵan arxitekturanı prezentaciya qılıw

Saylanǵan arxitekturalıq sheshimlerdi tiykarlaw

Alternativ arxitekturalıq modellerdi atap ótiw

Arxitekturanı tekseriw ushın kriteriylerdi atap ótiw

Ámeliy jumıstı orınlaw izbe-izligi:

1.Teoriyalıq materialdı úyreniw

2.Ápiwayı sızılmalardı sızıw

3.Praktikalıq tapsırmanı orınlaw

4.Nátiyjelerdi analizlew hám juwmaqlaw

5.Orınlanǵan jumıstıń esabatın tayarlaw

Соседние файлы в предмете Архитектура вычислительный машин и систем