N tasand (mitmetasandiline), 3-tasandiline, 2-tasandiline ArchiTektuur koos EXAMPLE'iga
โก Nutikas kokkuvรตte
N-taseme arhitektuur, mida nimetatakse ka mitmetasemeliseks arhitektuuriks, jaotab rakenduse kolme vรตi enama eraldi kihi vahel, nรคiteks esitlus, รคriloogika ja andmed. See mudel parandab ettevรตtte tasemel klient-server rakenduste skaleeritavust, turvalisust ja korduvkasutatavust.

Mis on N-Tier?
An N-taseme rakendus programm on selline, mis on jagatud kolme vรตi enama arvuti vahel hajutatud vรตrgus.
N-taseme kรตige levinum vorm on 3-tasandiline rakendus ja see jaguneb kolme kategooriasse.
- Kasutajaliidese programmeerimine kasutaja arvutis
- รriloogika tsentraliseeritud arvutis ja
- Nรตutavad andmed andmebaasi haldavas arvutis.
See arhitektuurimudel pakub tarkvaraarendajatele vรตimaluse luua korduvkasutatavaid rakendusi/sรผsteeme maksimaalse paindlikkusega.
In N-tasand, "N" viitab mitmele kasutatavale tasemele vรตi kihile, nรคiteks โ 2-, 3- vรตi 4-astmeline jne. Seda nimetatakse ka "Mitmetasandiline Architektuur".
N-tasandi arhitektuur on tรถรถstuses tรตestatud tarkvaraarhitektuurimudel. See sobib ettevรตtte tasemel klient-server rakenduste toetamiseks, pakkudes lahendusi skaleeritavuse, turvalisuse, rikketaluvuse, korduvkasutatavuse ja hooldatavuse osas. See aitab arendajatel luua paindlikke ja korduvkasutatavaid rakendusi.
N-tasand Architektuur
Siin on kujutatud n-tasandi sรผsteemi skemaatiline esitus โ esitus-, rakendus- ja andmebaasikihid.

Need kolm kihti saab vastavalt nรตudmistele veelgi jagada erinevateks alamkihtideks.
Mรตned populaarsed saidid, mis on seda arhitektuuri rakendanud, on:
- MakeMyTrip.com
- Mรผรผgijรตudude ettevรตtte rakendus
- India raudtee โ IRCTC
- Amazon.com jne.
Mรตned levinud terminid, mida meeles pidada, et kontseptsioonist selgemini aru saada:
- Hajutatud vรตrk: See on vรตrguarhitektuur, kus vรตrguarvutites asuvad komponendid koordineerivad ja edastavad oma tegevusi ainult sรตnumite edastamise teel. See on mitme sรผsteemi kogum, mis asuvad erinevates sรตlmedes, kuid paistab kasutajale รผhtse sรผsteemina.
- See pakub รผhtset andmesidevรตrku, mida erinevad vรตrgud saavad eraldi hallata.
- Hajutatud vรตrgu nรคide โ kus erinevad kliendid on รผhelt poolt รผhendatud LAN-arhitektuuriga ja teiselt poolt kiirete kommutaatoritega koos teenindussรตlmi sisaldavate serverite riiuliga.
- Klient-server ArchiStruktuur: See on arhitektuurimudel, kus klient (รผks programm) taotleb teenust serverilt (teine โโprogramm), st see on interneti vรตi intraneti kaudu pakutav pรคringu-vastuse teenus. Selles mudelis klient toimib รผhe programmi/koodi komplektina, mis teostab vรตrgu kaudu toiminguid. Kuigi server, teisest kรผljest on teise programmi komplekt, mis saadab tulemuskomplektid kliendisรผsteemi nรตudmisel.
- Selles pakub klientarvuti lรตppkasutajale liidest teenuse vรตi ressursi taotlemiseks serverilt ning teisalt tรถรถtleb server seejรคrel pรคringu ja kuvab tulemuse lรตppkasutajale.
- Klient-server mudeli nรคide โ sularahaautomaat. Pank on server, mis tรถรถtleb rakendusi suurtes kliendiandmebaasides, ja sularahaautomaat on klient, millel on kasutajaliides lihtsa rakenduste tรถรถtlemiseks.
- platvorm: Arvutiteaduses vรตi tarkvaratรถรถstuses on platvorm sรผsteem, millel rakendusprogramm saab tรถรถtada. See koosneb riist- ja tarkvara kombinatsioonist, millel on sisseehitatud juhised protsessorile/mikroprotsessorile teatud toimingute sooritamiseks.
- Lihtsamalt รถeldes on platvorm sรผsteem vรตi baas, kus mis tahes rakendus saab konkreetse รผlesande tรคitmiseks tรถรถtada ja seda tรคita.
- Platvormi nรคide โ isiklik masin, mis on laaditud Windows 2000 vรตi Mac OS X nรคitena kahest erinevast platvormist.
- Andmebaas: See on organiseeritud teabekogu, et sellele oleks lihtne juurde pรครคseda, seda hallata ja vรคrskendada.
- Andmebaasi nรคited - MySQL, SQL Server ja Oracle Database on mรตned levinud andmebaasid.
N-taseme tรผรผbid Architektuurid
N-tasemeid on erinevat tรผรผpi Architektuurid, nagu 3-tasand ArchiTektuur, 2-astmeline Architekstuur ja 1-tasand Architektuur.
Esiteks nรคeme 3-tasandilist Architektuur, mis on vรคga oluline.
3-astmeline Architektuur
Allolevat diagrammi vaadates saate selle hรตlpsalt tuvastada 3-astmeline arhitektuur sellel on kolm erinevat kihti.
- Esitluskiht
- รriloogika kiht
- Andmebaasi kiht

Siin oleme vรตtnud lihtsa nรคite รตpilase vormist, et mรตista kรตiki neid kolme kihti. See sisaldab รตpilase kohta kรคivat teavet, nรคiteks nimi, aadress, e-posti aadress ja pilt.
Kasutajaliidese kiht vรตi esitluskiht
Esitluskiht
private void DataGrid1_SelectedIndexChanged(object sender, System.EventArgs e) { // Object of the Property layer clsStudent objproperty=new clsStudent(); // Object of the business layer clsStudentInfo objbs=new clsStudentInfo(); // Object of the dataset in which we receive the data sent by the business layer DataSet ds=new DataSet(); // here we are placing the value in the property using the object of the //property layer objproperty.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();
Code Selgitus
- รlaltoodud kood defineerib rakenduste esiotsa vaate pรตhidisaini ja teiste kihtide funktsioonide kutsumise, et neid saaks omavahel integreerida.
Ettevรตtte juurdepรครคsukiht โ
See on รคrikihi funktsioon, mis vรตtab vastu rakendusekihi andmed ja edastab need andmekihile.
- รriloogika toimib liidesena kliendikihi ja andmepรครคsukihi vahel.
- Kogu รคriloogika โ nรคiteks andmete valideerimine, arvutused, andmete sisestamine/muutmine โ on kirjutatud รคriloogika kihi alla.
- See muudab kliendi ja andmekihi vahelise suhtluse kiiremaks ja lihtsamaks.
- Mรครคratleb รตige tรถรถvoo tegevuse, mis on vajalik รผlesande tรคitmiseks.
// 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 function return ds; } }
Koodi selgitus
Kood kasutab รคrikihi funktsiooni, mis vรตtab vastu rakenduskihi andmed ja edastab need andmekihile. รrikihi koodid toimivad vahendajana esitluskihis ja andmekihis mรครคratletud funktsioonide vahel ning kutsuvad funktsioone vastupidi.
Andmejuurdepรครคsukiht
See on andmekihi funktsioon, mis vรตtab รคrikihilt andmed vastu ja sooritab vajalikud toimingud andmebaasi.
// this is the datalayer function which is receiving the data from the business //layer and performing the required operation into the database public class clsStudentData // Data layer class { // object of property layer class public 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 operation ds=objdt.ExecuteSql(sql); return ds; } }
Koodi selgitus
รlaltoodud andmestiku kihis mรครคratletud kood aktsepteerib kogu sรผsteemi poolt esitatud pรคringu ja teeb andmebaasis vajalikud toimingud.
2-astmeline Architektuur
See on nagu klient-server arhitektuur, kus suhtlus toimub kliendi ja serveri vahel.
Seda tรผรผpi tarkvaraarhitektuuris tรถรถtab esitluskiht vรตi kasutajaliidese kiht kliendi poolel, samal ajal kui andmestiku kiht kรคivitatakse ja salvestatakse serveri poolel.
Kliendi ja serveri vahel puudub รคriloogika kiht ega vahekiht.
รhetasandiline vรตi 1-tasandiline Architektuur
See on kรตige lihtsam, kuna see on samavรครคrne rakenduse kรคitamisega personaalarvutis. Kรตik rakenduse kรคitamiseks vajalikud komponendid asuvad รผhes rakenduses vรตi serveris.
Esitluskiht, รคriloogikakiht ja andmekiht asuvad kรตik รผhes masinas.
Mitmetasandilise eelised ja puudused Architektuurid
Nagu iga disainivaliku puhul, toob mitmetasandiline lรคhenemine kaasa selgeid eeliseid koos mรตne kompromissiga, mis on kokku vรตetud allpool.
| Eelised | Puudused |
|---|---|
| Skaalautuvus | Pingutuse suurenemine |
| kuupรคev Integrity | Keerukuse suurenemine |
| Korduvkasutatavus | |
| Vรคhendatud levitamine | |
| Parem turvalisus | |
| Tรคiustatud saadavus |
Seega on see osa programmist, mis krรผpteerib tegelikke รคriprobleeme ja mรครคrab, kuidas andmeid saab vรคrskendada, luua, salvestada vรตi muuta, et รผlesanne oleks tรคielik.
N-tasand Architecture Tips and Development
Arvestades, et tarkvaraspetsialistidel peab olema tรคielik kontroll arhitektuuri kรตigi kihtide รผle, on allpool toodud nรคpunรคited n-tasemelise arhitektuuri kohta:
- Proovige kihte รผksteisest vรตimalikult palju lahti siduda, kasutades sellist tehnikat nagu SOAP XML.
- Kasutage kaardi loomiseks mรตnda automatiseeritud tรถรถriistaping รคriloogika kihi ja relatsioonandmebaasi kihi (andmekihi) vahel. Tรถรถriistad, mis aitavad neid kaarte modelleeridaping tehnikad on Entity Framework ja Hibernate for .Net jne.
- Kliendi esitleja kihis tuleks kรตigi klientide รผhine kood vรตimalikult palju eraldi teeki panna. See maksimeerib koodi korduvkasutatavust igat tรผรผpi klientide puhul.
- Toimivuse kiirendamiseks saab olemasolevale kihile lisada vahemรคlukihi.

