N Tier (Multi-Tier), 3-Tier, 2-Tier Architecture s PŘÍKLADEM

Obsah:

Anonim

Co je N-Tier?

N-Tier Aplikační program, je ten, který je rozdělen na tři nebo více samostatných počítačů v distribuované sítě.

Nejběžnější formou n-tier je 3-tier Application a je klasifikován do tří kategorií.

  • Programování uživatelského rozhraní v počítači uživatele
  • Obchodní logika v centralizovanějším počítači a
  • Požadovaná data v počítači, který spravuje databázi.

Tento model architektury poskytuje vývojářům softwaru k vytvoření opakovaně použitelných aplikací / systémů s maximální flexibilitou.

V N-vrstvě označuje „N“ řadu vrstev nebo vrstev, které se používají, například - 2-vrstvý, 3-vrstvý nebo 4-vrstvý atd . Nazývá se také „ Vícevrstvá architektura“ .

Architektura n-tier je průmyslově ověřený model softwarové architektury. Je vhodné podporovat aplikace typu klient-server na podnikové úrovni poskytováním řešení škálovatelnosti, zabezpečení, odolnosti proti chybám, opětovného použití a udržovatelnosti. Pomáhá vývojářům vytvářet flexibilní a opakovaně použitelné aplikace.

V tomto výukovém programu se naučíte

  • Co je N-Tier?
  • Architektura N-Tier
  • Typy architektur N-Tier
    • Třívrstvá architektura
    • Dvouvrstvá architektura
    • Jednoúrovňová nebo jednoúrovňová architektura
  • Výhody a nevýhody vícevrstvých architektur
  • Tipy a vývoj architektury N-Tier

Architektura N-Tier

Je zde znázorněno schematické znázornění systému n-tier - vrstvy prezentace, aplikace a databáze.

Diagram architektury úrovně N

Tyto tři vrstvy lze dále rozdělit do různých dílčích vrstev v závislosti na požadavcích.

Některé z populárních webů, které tuto architekturu uplatnily, jsou

  • MakeMyTrip.com
  • Podniková aplikace Sales Force
  • Indické železnice - IRCTC
  • Amazon.com atd.

Některé běžné pojmy, které si musíte pamatovat, abyste lépe porozuměli konceptu.

  • Distribuovaná síť: Jedná se o síťovou architekturu, kde komponenty umístěné v síťových počítačích koordinují a komunikují své akce pouze předáváním zpráv. Jedná se o kolekci více systémů umístěných v různých uzlech, ale uživateli se jeví jako jeden systém.
    • Poskytuje jedinou datovou komunikační síť, kterou lze samostatně spravovat různými sítěmi.
    • Příklad distribuované sítě - kde jsou různí klienti připojeni v rámci LAN architektury na jedné straně a na druhé straně jsou připojeni k vysokorychlostním přepínačům spolu se stojanem serverů obsahujících servisní uzly.
  • Architektura klient-server: Jedná se o model architektury, kde klient (jeden program) požaduje službu ze serveru (jiný program), tj. Jedná se o službu reakce na požadavek poskytovanou přes internet nebo prostřednictvím intranetu.

    V tomto modelu bude klient sloužit jako jedna sada programu / kódu, která provádí sadu akcí po síti. Zatímco Server je na druhé straně sada jiného programu, který podle potřeby odesílá sady výsledků do klientského systému.

    • V tomto klientský počítač poskytuje rozhraní s koncovým uživatelem k vyžádání služby nebo prostředku ze serveru a na druhé straně pak server požadavek zpracuje a zobrazí výsledek koncovému uživateli.
    • Příklad modelu klient-server - bankomat. Banka je server pro zpracování aplikace ve velkých zákaznických databázích a bankomat je klient, který má uživatelské rozhraní s jednoduchým zpracováním aplikace.
  • Platforma: V informatice nebo softwarovém průmyslu je platforma systém, na kterém lze spustit aplikační program. Skládá se z kombinace hardwaru a softwaru, které mají zabudovanou instrukci pro procesory / mikroprocesory pro provádění konkrétních operací.
    • Jednoduše řečeno, platforma je systém nebo základna, kde lze spouštět a spouštět libovolné aplikace za účelem získání konkrétní úlohy.
    • Příklad platformy - osobní počítač načtený v systému Windows 2000 nebo Mac OS X jako příklady 2 různých platforem.
  • Databáze: Jedná se o soubor informací organizovaným způsobem, který umožňuje snadný přístup, správu a aktualizaci.
    • Příklady databáze - MySQL, SQL Server a Oracle Database jsou některé běžné databáze.

Typy architektur N-Tier

Existují různé typy architektur N-Tier, jako je třívrstvá architektura, dvouvrstvá architektura a jednostupňová architektura.

Nejprve uvidíme tříúrovňovou architekturu, která je velmi důležitá.

Třívrstvá architektura

Při pohledu na níže uvedený diagram můžete snadno zjistit, že třívrstvá architektura má tři různé vrstvy.

  • Prezentační vrstva
  • Vrstva obchodní logiky
  • Vrstva databáze

Diagram 3úrovňové architektury

Zde jsme vzali jednoduchý příklad studentské formy, abychom porozuměli všem těmto třem vrstvám. Obsahuje informace o studentovi jako - jméno, adresa, e-mail a obrázek.

Vrstva uživatelského rozhraní nebo 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();

Vysvětlení kódu

  • Výše uvedený kód definuje základní návrh front-endového pohledu na aplikace a také volání funkcí jiných vrstev, aby mohly být navzájem integrovány.

Vrstva obchodního přístupu -

Toto je funkce obchodní vrstvy, která přijímá data z aplikační vrstvy a předává je do datové vrstvy.

  • Obchodní logika funguje jako rozhraní mezi vrstvou klienta a vrstvou přístupu k datům
  • Veškerá obchodní logika - jako je validace dat, výpočty, vkládání / úpravy dat jsou zapsány pod vrstvu obchodní logiky.
  • Urychluje a usnadňuje komunikaci mezi klientskou a datovou vrstvou
  • Definuje správnou aktivitu pracovního postupu, která je nezbytná k dokončení úkolu.
// 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;}}

Vysvětlení kódu

Kód využívá funkci obchodní vrstvy, která přijme data pro aplikační vrstvu a předá je do datové vrstvy. Kódy obchodních vrstev fungují jako prostředník mezi funkcemi definovanými v prezentační vrstvě a datové vrstvě a volání funkcí naopak.

Vrstva přístupu k datům

Jedná se o funkci datové vrstvy, která přijímá data z obchodní vrstvy a provádí nezbytnou operaci do databáze.

// 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;}}

Vysvětlení kódu

Kód definuje ve vrstvě datové sady výše přijímá celý požadavek: požadovaný systémem a provádění požadovaných operací do databáze.

Dvouvrstvá architektura:

Je to jako architektura klient-server, kde probíhá komunikace mezi klientem a serverem.

V tomto typu softwarové architektury běží vrstva prezentace nebo vrstva uživatelského rozhraní na straně klienta, zatímco vrstva datové sady se spouští a ukládá na straně serveru.

Mezi klientem a serverem není žádná vrstva obchodní logiky ani okamžitá vrstva.

Jednostupňová nebo jednostupňová architektura:

Je to nejjednodušší, protože odpovídá spuštění aplikace v osobním počítači. Všechny požadované komponenty, které má aplikace spouštět, jsou na jedné aplikaci nebo serveru.

Prezentační vrstva, vrstva obchodní logiky a datová vrstva jsou umístěny na jednom počítači.

Výhody a nevýhody vícevrstvých architektur

Výhody

Nevýhody

  • Škálovatelnost
  • Zvýšení úsilí
  • Integrita dat
  • Zvýšení složitosti
  • Opakovaná použitelnost
  • Snížená distribuce
  • Vylepšené zabezpečení
  • Vylepšená dostupnost

Proto je součástí programu, který šifruje skutečné obchodní problémy a určuje, jak lze data aktualizovat, vytvářet, ukládat nebo měnit, aby bylo možné dokončit celý úkol.

Tipy a vývoj architektury N-Tier

Vzhledem k tomu, že softwaroví profesionálové musí mít plnou kontrolu nad všemi vrstvami architektury, tipy na architektuře n-tier jsou uvedeny níže

  1. Pokuste se co nejvíce oddělit vrstvy od jiné vrstvy pomocí techniky, jako je mýdlový XML.
  2. Pomocí některých automatizovaných nástrojů vygenerujte mapování mezi vrstvou obchodní logiky a vrstvou relační databáze (datová vrstva). Nástroje, které mohou pomoci při modelování těchto mapovacích technik, jsou - Entity Framework a Hibernate pro .Net atd.
  3. Ve vrstvě prezentujícího klienta vložte společný kód pro všechny klienty do samostatné knihovny co nejvíce. Tím se maximalizuje opakovaná použitelnost kódu pro všechny typy klientů.
  4. Pro urychlení výkonu lze do existující vrstvy přidat vrstvu mezipaměti.

Souhrn:

Architektura N-tier pomáhá spravovat všechny komponenty (obchodní vrstvu, prezentační vrstvu a vrstvu databáze) aplikace pod jednou střechou.

Aplikace využívající malý počet uživatelů v místní síti mohou těžit z architektury n-tier.

Takový architektonický návrh zajišťuje efektivní údržbu, rozšiřování a nasazení aplikace na internetu.