logo

Tre-lags klientserverarkitektur i distribueret system

I denne artikel vil vi komme i detaljer om den tre-lags klient-server-arkitektur. Den mest almindelige type multi-tier arkitektur i distribuerede systemer er en tre-lags klient-server-arkitektur. I denne arkitektur er hele applikationen organiseret i tre computerlag

  • Præsentationsniveau
  • Ansøgningsniveau
  • Data-tier

Den største fordel ved de tre niveauer i klient-server-arkitektur er, at disse niveauer udvikles og vedligeholdes uafhængigt, og dette vil ikke påvirke de andre niveauer i tilfælde af ændringer. Det giver mulighed for bedre ydeevne, og der kan laves endnu mere skalerbarhed i arkitekturen, da der med den stigende efterspørgsel kan tilføjes flere servere.



Hvad er tredelt arkitektur?

Three-Tier Architecture er et veletableret softwareapplikationsdesignmønster, som vil organisere applikationen i de tre logiske og fysiske computerlag som følger:

  • Præsentationsniveau
  • Ansøgningsniveau
  • Dataniveau

De tre niveauer i detaljer

Præsentationsniveau

Det er brugergrænsefladen og det øverste niveau i arkitekturen. Dens formål er at modtage anmodning fra klienten og vise information til klienten. Det kommunikerer med andre niveauer ved hjælp af en webbrowser, da det giver output på browseren. Hvis vi taler om webbaserede niveauer, er disse udviklet ved hjælp af sprog som- HTML , CSS , JavaScript.

Ansøgningsniveau

Det er det midterste lag i arkitekturen, også kendt som det logiske lag, da informationen/anmodningen indsamlet gennem præsentationsniveauet behandles i detaljer her. Den interagerer også med serveren, der gemmer dataene. Den behandler klientens anmodning, formaterer den og sender den tilbage til klienten. Det er udviklet ved hjælp af sprog som- Python , Java , PHP osv.



fibonacci-sekvens java

Dataniveau

Det er det sidste niveau i arkitekturen, også kendt som databaseniveauet. Det bruges til at gemme de behandlede oplysninger, så de kan hentes senere, når det er nødvendigt. Den består af databaseservere som- Oracle , MySQL, DB2 osv. Kommunikationen mellem Presentation Tier og Data-Tier udføres ved hjælp af middle-tier, dvs. Application Tier.

Tre-lags-arkitektur

Tier vs. lag

Tier



if statement java

Lag

Tier henviser til den fysiske adskillelse af komponenter.

Lag refererer til den logiske adskillelse af en applikation.

Algoritme til binær søgning

Niveauer er fysisk adskilt og kører på de forskellige maskiner er servere.

Lag er logisk adskilt, men kører på de samme servere eller maskinerne.

Skalerbarheden af ​​en applikation er meget høj.

Skalerbarheden af ​​en applikation er medium.

Almindelige niveauer i en flerlagsarkitektur inkluderer præsentationsniveauet (brugergrænseflade), applikationsniveauet (forretningslogik) og datalaget (databasen).

Hvert lag fokuserer på specifikke ansvarsområder, såsom præsentation, forretningslogik og dataadgang, inden for et enkelt niveau.

Tredelt applikation i webudvikling

Webapplikation vil have de samme niveauer som de tre arkitekturer, men den eneste forskel er, at de har forskellige navne.

  1. Webserver: Webserver er et præsentationsniveau af en tre-lags arkitektur, som serveres som et præsentationsniveau eller UI (User Interface) niveau. Dette indhold kan være statisk eller dynamisk baseret på deres krav, såsom et e-handelssted, hvor brugere kan tilføje produkter til deres indkøbskurv, indtaste betalingsoplysninger eller oprette en konto.
  2. Applikationsserver: Application tier er et mellemtrin, som består af den fulde logik, der kræves for den virksomhed, som vil behandle brugerinput og så videre. Det vil udføre logikkens lignende forespørgsler i lagerdatabasen for at returnere produkttilgængelighed eller tilføje detaljer til en kundes profil.
  3. Database server: Dette er back-end tier af en webapplikation, den består af alle data, så denne tier vil for det meste være en database som f.eks. MySQL, Oracle, DB2 eller PostgreSQL.

Andre multi-tier arkitekturer

Three Tier Architecture er den meget brugte til applikationsudvikling, der er nogle andre arkitekturer som nævnt nedenfor.

maskinskrift for hver sløjfe

To-lags arkitektur

Dette er en grundlæggende softwarearkitektur, der består af to lag eller niveau, en er klient og en anden er server. Hvert niveau har deres eget ansvar, og de er forbundet med hinanden eller afhængige af hinanden

Klientniveau

Klientniveau er det øverste lag, som er som en brugergrænseflade og interaktionsdel af applikationen. den fungerer som en webbrowser, desktop-applikation eller mobilapp, hvorigennem brugeren interagerer med applikationen. Den er ansvarlig for at præsentere dataene og behandle ansøgningens input.

Server Tier

Server tier er et bundlag, som indeholder den logik, som vi krævede for at håndtere databehandling og datahåndtering.

N-tier arkitektur

N-Tier Architecture, også kendt som Multi-Tier Architecture, opdeler applikationen i forskellige antal niveauer baseret på kompleksiteten og kravene. følgende er nogle af de niveauer, der er inkluderet i arkitekturen.

  • Præsentationsniveau (klientniveau)
  • Applikationsniveau (mellemniveau eller forretningslogikniveau)
  • Datalag (Data Storage Tier eller Database Tier)
  • Tjenesteniveau (Forretningstjenester eller applikationstjenester)
  • Integration Tier (Integration Services).

Fordele ved tredelt arkitektur

  • Der opretholdes logisk adskillelse mellem Præsentationsniveau, Application Tier og Database Tier.
  • Forbedring af ydeevne, da opgaven er opdelt på flere maskiner i distribuerede maskiner, og desuden er hvert niveau uafhængigt af andre niveauer.
  • Stigende efterspørgsel efter tilføjelse af flere servere kan også håndteres i arkitekturen, da niveauer kan skaleres uafhængigt.
  • Udviklere er uafhængige til at opdatere teknologien på et niveau, da det ikke vil påvirke de andre niveauer.
  • Pålideligheden forbedres med niveauernes uafhængighed, da problemer på et niveau ikke vil påvirke de andre.
  • Programmører kan nemt vedligeholde databasen, præsentationskoden og forretnings-/applikationslogikken separat. Hvis der kræves en ændring i forretnings-/applikationslogikken, påvirker det ikke præsentationskoden og kodebasen.
  • Indlæsningen er afbalanceret, da præsentationsniveauopgaven er adskilt fra datalagets server.
  • Sikkerheden er forbedret, da klienten ikke kan kommunikere direkte med Database Tier. Desuden valideres dataene på Application Tier, før de overføres til Database Tier.
  • Dataintegriteten opretholdes.
  • Levering af udrulning til en række forskellige databaser i stedet for at begrænse dig til en bestemt teknologi.

Ulemper ved tredelt arkitektur

  • Presentation Tier kan ikke kommunikere direkte med Database Tier.
  • Kompleksiteten øges også med stigningen i niveauer i arkitekturen.
  • Der er en stigning i antallet af ressourcer, da kodebase, præsentationskode og applikationskode skal vedligeholdes separat.

Ofte stillede spørgsmål om trelagsarkitektur

1. Tre lags arkitektur i DBMS

Det database management system (DBMS) er opdelt i tre logiske og fysiske niveauer: præsentationsniveauet, applikationsniveauet og databaselaget. Dette er kendt som trelagsarkitektur i DBMS.

strengformat i java

2. Tre lags arkitektur i C#

EN C# applikationen er opdelt i tre logiske og fysiske lag: præsentationsniveauet, applikationsniveauet og datalaget. Dette er kendt som tre-lags arkitektur.

3. Three Tier Architecture i AWS (Amazon Web Services)

En tredelt arkitektur i Amazon Web Services (AWS) henviser til designet af webapplikationer eller tjenester, der bruger AWS cloud-ressourcer og -tjenester til at adskille applikationen i tre logiske lag. Hvert niveau har specifikke ansvarsområder, og AWS leverer en række tjenester til at understøtte implementeringen af ​​denne arkitektur.

4. Three Tier Architecture of Mobile Computing

En Three-Tier Architecture i forbindelse med mobil computing refererer til organiseringen af ​​en mobilapplikation eller et mobilsystem i tre logiske lag eller lag, hver med specifikke ansvarsområder.