Čo je to N-Tier?
N-Tier Aplikačný program, je ten, ktorý je rozdelený na tri alebo viac samostatných počítačov v distribuovanej siete.
Najbežnejšou formou úrovne n je aplikácia s tromi úrovňami a je klasifikovaná do troch kategórií.
- Programovanie užívateľského rozhrania v počítači užívateľa
- Obchodná logika v centralizovanejšom počítači a
- Povinné údaje v počítači, ktorý spravuje databázu.
Tento model architektúry umožňuje vývojárom softvéru vytvárať opakovane použiteľné aplikácie / systémy s maximálnou flexibilitou.
V N-vrstve „N“ označuje množstvo vrstiev alebo vrstiev, ktoré sa používajú, ako napríklad - dvojvrstvová, trojvrstvová alebo štvorvrstvová atď . Nazýva sa tiež „ viacvrstvová architektúra“ .
Architektúra n-tier je priemyselne osvedčený model softvérovej architektúry. Je vhodné podporovať aplikácie typu klient-server na podnikovej úrovni poskytovaním riešení škálovateľnosti, bezpečnosti, odolnosti proti chybám, opätovnej použiteľnosti a udržiavateľnosti. Pomáha vývojárom vytvárať flexibilné a opakovane použiteľné aplikácie.
V tomto návode sa naučíte
- Čo je to N-Tier?
- Architektúra N-tier
- Typy architektúr N-úrovne
- 3-vrstvová architektúra
- 2-vrstvová architektúra
- Jednoúrovňová alebo jednoúrovňová architektúra
- Výhody a nevýhody viacvrstvových architektúr
- Tipy a vývoj architektúry N-tier
Architektúra N-tier
Je tu zobrazené schematické znázornenie systému n-tier - vrstvy prezentácie, aplikácie a databázy.

Tieto tri vrstvy je možné ďalej rozdeliť na rôzne podvrstvy v závislosti od požiadaviek.
Niektoré z populárnych webov, ktoré uplatnili túto architektúru, sú
- MakeMyTrip.com
- Podniková aplikácia Sales Force
- Indické železnice - IRCTC
- Amazon.com atď.
Niektoré bežné pojmy, ktoré si treba pamätať, aby ste koncept pochopili jasnejšie.
- Distribuovaná sieť: Jedná sa o sieťovú architektúru, kde komponenty umiestnené v sieťových počítačoch koordinujú a komunikujú svoje akcie iba odovzdávaním správ. Je to súbor viacerých systémov umiestnených na rôznych uzloch, ale používateľom sa javí ako jeden systém.
- Poskytuje jednu dátovú komunikačnú sieť, ktorú je možné spravovať osobitne rôznymi sieťami.
- Príklad distribuovanej siete - kde sú na jednej strane pripojení rôzni klienti v rámci architektúry LAN a na druhej strane sú pripojení k vysokorýchlostným prepínačom spolu so stojanom serverov obsahujúcich servisné uzly.
- Architektúra klient-server: Jedná sa o model architektúry, kde klient (jeden program) požaduje službu od servera (iný program), tj ide o službu reagujúcu na požiadavky poskytovanú cez internet alebo cez intranet.
V tomto modeli bude klient slúžiť ako jedna sada programu / kódu, ktorá vykonáva sadu akcií v sieti. Zatiaľ čo Server je na druhej strane množinou iného programu, ktorý podľa potreby odosiela výsledné množiny do klientskeho systému.
- V tomto prípade klientský počítač poskytuje koncovému používateľovi rozhranie na vyžiadanie služby alebo zdroja zo servera a na druhej strane server potom spracuje požiadavku a zobrazí výsledok koncovému používateľovi.
- Príklad modelu klient-server - bankomat. Banka je serverom na spracovanie aplikácie v rozsiahlych zákazníckych databázach a bankomatom je klient, ktorý má užívateľské rozhranie s jednoduchým spracovaním aplikácie.
- Platforma: V informatike alebo softvérovom priemysle je platforma systém, na ktorom je možné spustiť aplikačný program. Skladá sa z kombinácie hardvéru a softvéru, ktoré majú zabudovanú inštrukciu pre procesory / mikroprocesory na vykonávanie konkrétnych operácií.
- Jednoduchšie povedané, platforma je systém alebo základňa, kde môžu bežať a spúšťať akékoľvek aplikácie s cieľom získať konkrétnu úlohu.
- Príklad platformy - osobný počítač so systémom Windows 2000 alebo Mac OS X ako príklad 2 rôznych platforiem.
- Databáza: Je to súbor informácií organizovaným spôsobom, ktorý umožňuje ľahký prístup, správu a aktualizáciu.
- Príklady databáz - MySQL, SQL Server a Oracle Database sú niektoré bežné databázy.
Typy architektúr N-úrovne
Existujú rôzne typy N-úrovňových architektúr, napríklad 3-stupňová architektúra, 2-stupňová architektúra a 1-stupňová architektúra.
Najskôr uvidíme trojvrstvovú architektúru, ktorá je veľmi dôležitá.
3-vrstvová architektúra
Pri pohľade na nasledujúci diagram môžete ľahko zistiť, že trojvrstvová architektúra má tri rôzne vrstvy.
- Prezentačná vrstva
- Vrstva obchodnej logiky
- Databázová vrstva
Tu sme si vzali jednoduchý príklad študentskej formy na pochopenie všetkých týchto troch vrstiev. Obsahuje informácie o študentovi, napríklad - meno, adresa, e-mail a obrázok.
Vrstva používateľského rozhrania alebo prezentačná vrstva
Prezentačná vrstva
private void DataGrid1_SelectedIndexChanged(object sender, System.EventArgs e){// Object of the Property layerclsStudent objproperty=new clsStudent();// Object of the business layerclsStudentInfo objbs=new clsStudentInfo();// Object of the dataset in which we receive the data sent by the business layerDataSet ds=new DataSet();// here we are placing the value in the property using the object of the//property layerobjproperty.id=int.Parse(DataGridl.SelectedItem.Cells[1].Text.ToString());// In this following code we are calling a function from the business layer and// passing the object of the property layer which will carry the ID till the database.ds=objbs.GetAllStudentBsIDWise(objproperty);// What ever the data has been returned by the above function into the dataset//is being populate through the presentation laye.txtId.Text=ds.Tables[0].Rows[0][0].ToString();txtFname.Text=ds.Tables[0].Rows[0][1].ToString();txtAddress.Text=ds.Tables[0].Rows[0][2].ToString();txtemail.Text=ds.Tables[0].Rows[0][3].ToString();
Vysvetlenie kódu
- Vyššie uvedený kód definuje základné navrhovanie čelného pohľadu na aplikácie, ako aj volanie funkcií ďalších vrstiev, aby ich bolo možné navzájom integrovať.
Vrstva obchodného prístupu -
Toto je funkcia obchodnej vrstvy, ktorá prijíma údaje z aplikačnej vrstvy a odovzdáva ich do dátovej vrstvy.
- Obchodná logika funguje ako rozhranie medzi vrstvou klienta a vrstvou prístupu k údajom
- Celá obchodná logika - ako je validácia údajov, výpočty, vkladanie / úprava údajov sú zapísané pod vrstvu obchodnej logiky.
- Uľahčuje a uľahčuje komunikáciu medzi klientskou a dátovou vrstvou
- Definuje správnu činnosť pracovného toku, ktorá je nevyhnutná na dokončenie úlohy.
// this is the function of the business layer which accepts the data from the//application layer and passes it to the data layer.public class clsStudentInfo{public DataSet GetAllStudentBsIDWise(clsStudent obj){DataSet ds=new DataSet();ds=objdt.getdata_dtIDWise(obj);// Calling of Data layer functionreturn ds;}}
Vysvetlenie kódu
Kód využíva funkciu obchodnej vrstvy, ktorá prijme údaje pre aplikačnú vrstvu a odovzdá ich do dátovej vrstvy. Kódy podnikovej vrstvy fungujú ako sprostredkovateľ medzi funkciami definovanými v prezentačnej vrstve a dátovej vrstve a volanie funkcií naopak.
Vrstva prístupu k údajom
Toto je funkcia dátovej vrstvy, ktorá prijíma údaje z obchodnej vrstvy a vykonáva potrebné operácie do databázy.
// this is the datalayer function which is receiving the data from the business//layer and performing the required operation into the databasepublic class clsStudentData // Data layer class{// object of property layer classpublic DataSet getdata_dtIDUise(clsStudent obj){DataSet ds;string sql;sql="select * from student where Studentld=" +obj.id+ "order by Studentld;ds=new DataSet();//this is the datalayer function which accepts the sql query and performs the//corresponding operationds=objdt.ExecuteSql(sql);return ds;}}
Vysvetlenie kódu
Tento kód definuje vo vrstve množiny údajov vyššie akceptuje celú požiadavku: požadovanú systémom a vykonaním požadovaných operácií do databázy.
2-vrstvová architektúra:
Je to ako architektúra klient-server, kde prebieha komunikácia medzi klientom a serverom.
V tomto type softvérovej architektúry sa prezentačná vrstva alebo vrstva používateľského rozhrania spúšťa na strane klienta, zatiaľ čo sa vrstva dátových množín vykonáva a ukladá na strane servera.
Medzi klientom a serverom nie je žiadna vrstva obchodnej logiky ani okamžitá vrstva.
Jednoúrovňová alebo jednoúrovňová architektúra:
Je to najjednoduchší, pretože je to ekvivalent spustenia aplikácie na osobnom počítači. Všetky požadované komponenty na spustenie aplikácie sú na jednej aplikácii alebo serveri.
Prezentačná vrstva, vrstva obchodnej logiky a dátová vrstva sú umiestnené na jednom stroji.
Výhody a nevýhody viacvrstvových architektúr
Výhody |
Nevýhody |
|
|
|
|
| |
| |
| |
|
Preto je súčasťou programu, ktorý šifruje obchodné problémy v reálnom svete a určuje, ako je možné údaje aktualizovať, vytvárať, ukladať alebo meniť, aby bolo možné dokončiť celú úlohu.
Tipy a vývoj architektúry N-tier
Vzhľadom na to, že softvéroví profesionáli musia mať úplnú kontrolu nad všetkými vrstvami architektúry, tipy na architektúre n-tier sú uvedené nižšie.
- Pokúste sa čo najviac oddeliť vrstvy od inej vrstvy pomocou techniky, ako je mydlo XML.
- Pomocou niektorých automatizovaných nástrojov môžete generovať mapovanie medzi vrstvou obchodnej logiky a vrstvou relačnej databázy (dátová vrstva). Nástroje, ktoré môžu pomôcť pri modelovaní týchto mapovacích techník, sú - Entity Framework a Hibernate for .Net atď.
- Vo vrstve prezentujúcich klientov vložte čo najviac spoločný kód pre všetkých klientov do samostatnej knižnice. Takto sa maximalizuje opätovná použiteľnosť kódu pre všetky typy klientov.
- Na urýchlenie výkonu je možné do existujúcej vrstvy pridať vrstvu vyrovnávacej pamäte.
Zhrnutie:
Architektúra N-tier pomáha spravovať všetky komponenty (obchodnú vrstvu, prezentačnú vrstvu a databázovú vrstvu) aplikácie pod jednou strechou.
Aplikácie využívajúce malý počet používateľov v lokálnej sieti môžu ťažiť z architektúry n-tier.
Takýto architektonický dizajn zaručuje efektívne udržiavanie, rozširovanie a nasadenie aplikácie na internete.