Three-tier architecture, die toepassingen scheidt in drie logische en fysieke computing lagen, is de overheersende softwarearchitectuur voor traditionele client-server toepassingen.

Wat is architectuur met drie lagen?,

Three-tier architecture is een gevestigde software applicatie architectuur die toepassingen organiseert in drie logische en fysieke computing lagen: de presentatie tier, of gebruikersinterface; de applicatie tier, waar gegevens worden verwerkt; en de data tier, waar de gegevens in verband met de toepassing wordt opgeslagen en beheerd.

het belangrijkste voordeel van three-tier architectuur is dat, omdat elke tier draait op zijn eigen infrastructuur, elke tier kan gelijktijdig worden ontwikkeld door een apart ontwikkelingsteam, en kan worden bijgewerkt of geschaald als nodig zonder gevolgen voor de andere tiers.,

decennialang was de drie lagen architectuur de heersende architectuur voor client-server toepassingen. Tegenwoordig zijn de meeste drie-tier applicaties doelen voor modernisering, het gebruik van cloud-native technologieën zoals containers en microservices, en voor migratie naar de cloud.

de drie niveaus in detail

presentatielaag

de presentatielaag is de gebruikersinterface en Communicatielaag van de toepassing, waarbij de eindgebruiker met de toepassing communiceert. Het belangrijkste doel is om informatie weer te geven en informatie te verzamelen van de gebruiker., Deze top-level tier kan worden uitgevoerd op een webbrowser, als desktop applicatie, of een grafische gebruikersinterface (GUI), bijvoorbeeld. Webpresentatielijnen worden meestal ontwikkeld met behulp van HTML, CSS en JavaScript. Desktop applicaties kunnen worden geschreven in een verscheidenheid van talen, afhankelijk van het platform.

Application tier

De application tier, ook bekend als de logic tier of middle tier, is het hart van de applicatie., In deze tier, informatie verzameld in de presentatie tier wordt verwerkt – soms tegen andere informatie in de data tier – met behulp van business logic, een specifieke set van business rules. Het toepassingsniveau kan ook Gegevens toevoegen, verwijderen of wijzigen in het gegevensniveau.

De application tier is meestal ontwikkeld met Python, Java, Perl, PHP of Ruby, en communiceert met de data tier met behulp van API calls.

Data tier

de data tier, ook wel database tier, data access tier of back-end genoemd, is waar de door de toepassing verwerkte informatie wordt opgeslagen en beheerd., Dit kan een relationeel database management systeem zoals PostgreSQL, MySQL, MariaDB, Oracle, DB2, Informix of Microsoft SQL Server, of in een NoSQL Database server zoals Cassandra, CouchDB of MongoDB.

in een aanvraag met drie niveaus verloopt alle communicatie via het aanvraagniveau. Het presentatieniveau en het dataniveau kunnen niet rechtstreeks met elkaar communiceren.

Tier vs. layer

in discussies over drie-tier architectuur wordt laag vaak door elkaar – en ten onrechte – gebruikt voor tier, zoals in ‘presentatielaag’ of ‘business logic layer’.,’

ze zijn niet hetzelfde. Een ‘ laag ‘verwijst naar een functionele verdeling van de software, maar een’ laag ‘ verwijst naar een functionele verdeling van de software die op infrastructuur los van de andere divisies draait. De App contacten op uw telefoon is bijvoorbeeld een toepassing met drie lagen, maar een toepassing met één laag, omdat alle drie lagen op uw telefoon worden uitgevoerd.

het verschil is belangrijk, omdat lagen niet dezelfde voordelen kunnen bieden als lagen.,

voordelen van three-tier architectuur

Het belangrijkste voordeel van three-tier architectuur is de logische en fysieke scheiding van functionaliteit. Elke laag kan draaien op een afzonderlijk besturingssysteem en server platform – bijvoorbeeld webserver, applicatieserver, database server – die het beste past bij de functionele eisen. En elke tier draait op ten minste één dedicated server hardware of virtuele server, zodat de diensten van elke tier kan worden aangepast en geoptimaliseerd zonder invloed op de andere tiers.,

andere voordelen (in vergelijking met single – of two-tier architectuur) zijn:

  • snellere ontwikkeling: omdat elk niveau gelijktijdig door verschillende teams kan worden ontwikkeld, kan een organisatie de applicatie sneller op de markt brengen en kunnen programmeurs de nieuwste en beste talen en tools voor elk niveau gebruiken.
  • verbeterde schaalbaarheid: elke laag kan onafhankelijk van de andere worden geschaald als dat nodig is.
  • verbeterde betrouwbaarheid: een storing in één niveau heeft minder waarschijnlijk invloed op de beschikbaarheid of prestaties van de andere niveaus.,
  • verbeterde beveiliging: omdat de presentatielaag en datalaag niet direct kunnen communiceren, kan een goed ontworpen applicatielaag functioneren als een soort interne firewall, waardoor SQL-injecties en andere kwaadaardige exploits worden voorkomen.

Three-tier application in web development

in web development hebben de lagen verschillende namen, maar voeren ze vergelijkbare functies uit:

  • De webserver is de presentatielaag en biedt de gebruikersinterface., Dit is meestal een webpagina of website, zoals een e-commerce site waar de gebruiker producten toevoegt aan het winkelwagentje, betalingsgegevens toevoegt of een account maakt. De inhoud kan statisch of dynamisch zijn, en wordt meestal ontwikkeld met behulp van HTML, CSS en Javascript .
  • de toepassingsserver komt overeen met de middle tier, met de bedrijfslogica die wordt gebruikt om gebruikersinputs te verwerken. Om de e-commerce voorbeeld voort te zetten, dit is het niveau dat de inventaris database queries om de beschikbaarheid van het product terug te keren, of voegt details toe aan het profiel van een klant., Deze laag vaak ontwikkeld met behulp van Python, Ruby of PHP en loopt een kader zoals e Django, Rails, Symphony of ASP.NET bijvoorbeeld.
  • de databaseserver is de data-of backend-laag van een webtoepassing. Het draait op database management software, zoals MySQL, Oracle, DB2 of PostgreSQL, bijvoorbeeld.

andere multi-tier architecturen

hoewel drie-tier architectuur gemakkelijk de meest gebruikte multi-tier applicatiearchitectuur is, zijn er andere die u kunt tegenkomen in uw werk of uw onderzoek.,

twee-tier architectuur

twee-tier architectuur is de oorspronkelijke client-server architectuur, bestaande uit een presentatie tier en een data tier; de business logica leeft in de presentatie tier, de data tier of beide. In twee-tier architectuur heeft de presentatielaag – en dus de eindgebruiker-directe toegang tot de datalaag, en de business logica is vaak beperkt. Een eenvoudige toepassing voor contactbeheer, waarbij gebruikers contactgegevens kunnen invoeren en ophalen, is een voorbeeld van een toepassing met twee niveaus.,

n-tierarchitectuur

N-tierarchitectuur – ook wel multi-tierarchitectuur genoemd – verwijst naar elke toepassingsarchitectuur met meer dan één tier. Maar toepassingen met meer dan drie lagen zijn zeldzaam, omdat extra lagen weinig voordelen bieden en de toepassing langzamer, moeilijker te beheren en duurder te draaien kunnen maken. Als gevolg hiervan zijn n-tier architectuur en multi-tier architectuur meestal Synoniemen voor three-tier architectuur.,

drie-tier architectuur en IBM Cloud

IBM Cloud biedt producten en diensten om u te helpen uw oudere drie-tier applicaties te moderniseren op uw reis naar de cloud.

neem de eerste stap:

  • of u hulp nodig hebt bij strategie, processen of mogelijkheden—of volledige service aandacht wilt-ontdek hoe IBM kan helpen bij de modernisering van applicaties.
  • begin met het gebruik van containerized middleware die in elke cloud kan draaien—allemaal gebundeld in IBM Cloud Paks.
  • migreer eenvoudig bestaande VMware-workloads naar de publieke cloud met behulp van IBM Cloud voor VMware-oplossingen.,
  • Plan en voer uw moderniseringsstrategieën uit als onderdeel van uw lopende digitale transformatie met behulp van IBM ‘ s application modernization services.

aan de slag met een IBM Cloud account.