logo

Tre-lags klientserverarkitektur i distribuert system

I denne artikkelen vil vi komme nærmere inn på trelags klient-server-arkitekturen. Den vanligste typen flerlagsarkitektur i distribuerte systemer er en tre-lags klient-server-arkitektur. I denne arkitekturen er hele applikasjonen organisert i tre datalag

  • Presentasjonsnivå
  • Søknadsnivå
  • Data-lag

Den største fordelen med de tre nivåene i klient-server-arkitektur er at disse nivåene utvikles og vedlikeholdes uavhengig, og dette vil ikke påvirke de andre nivåene i tilfelle endringer. Det gir bedre ytelse og enda mer skalerbarhet i arkitekturen kan gjøres, da med den økende etterspørselen kan flere servere legges til.



Hva er trelagsarkitektur?

Three-Tier Architecture er et veletablert designmønster for programvareapplikasjoner som vil organisere applikasjonen i de tre logiske og fysiske datalagene som følger:

  • Presentasjonsnivå
  • Søknadsnivå
  • Datanivå

De tre lagene i detalj

Presentasjonsnivå

Det er brukergrensesnittet og det øverste nivået i arkitekturen. Hensikten er å ta imot forespørsel fra klienten og vise informasjon til klienten. Den kommuniserer med andre nivåer ved hjelp av en nettleser da den gir utdata på nettleseren. Hvis vi snakker om nettbaserte nivåer, er disse utviklet ved bruk av språk som- HTML , CSS , JavaScript.

Søknadsnivå

Det er det midterste nivået i arkitekturen, også kjent som det logiske nivået, da informasjonen/forespørselen samlet gjennom presentasjonsnivået behandles i detalj her. Den samhandler også med serveren som lagrer dataene. Den behandler klientens forespørsel, formaterer den og sender den tilbake til klienten. Den er utviklet ved bruk av språk som- Python , Java , PHP, etc.



fibonacci-sekvens java

Datanivå

Det er det siste laget i arkitekturen, også kjent som Database Tier. Den brukes til å lagre den behandlede informasjonen slik at den kan hentes senere ved behov. Den består av databaseservere som- Oracle , MySQL, DB2, etc. Kommunikasjonen mellom Presentation Tier og Data-Tier gjøres ved hjelp av middle-tier, dvs. Application Tier.

Tre-lags arkitektur

Nivå vs. lag

Nivået



if uttalelse java

Lag

Tier refererer til den fysiske separasjonen av komponenter.

Lag refererer til den logiske separasjonen av en applikasjon.

shehzad poonawala

Nivåene er fysisk atskilt og kjører på de forskjellige maskinene er servere.

Lag er logisk atskilt, men kjører på de samme serverne eller maskinene.

Skalerbarheten til en applikasjon er svært høy.

Skalerbarheten til en applikasjon er middels.

Vanlige nivåer i en flerlagsarkitektur inkluderer presentasjonsnivået (brukergrensesnitt), applikasjonsnivå (forretningslogikk) og datanivå (database).

Hvert lag fokuserer på spesifikke ansvarsområder, som presentasjon, forretningslogikk og datatilgang, innenfor et enkelt nivå.

Tre-lags applikasjon i webutvikling

Nettapplikasjonen vil ha de samme nivåene som de tre arkitekturene, men den eneste forskjellen er at de har forskjellige navn.

  1. Internett server: Webserver er et presentasjonsnivå av en trelagsarkitektur som tjener som et presentasjonsnivå eller UI (brukergrensesnitt). Dette innholdet kan være statisk eller dynamisk basert på kravet, for eksempel et e-handelsnettsted der brukere kan legge til produkter i handlekurven, angi betalingsdetaljer eller opprette en konto.
  2. Applikasjonsserver: Applikasjonsnivå er et mellomnivå som består av hele logikken som kreves for virksomheten som skal behandle brukerinndata og så videre. Den vil utføre logikkens lignende spørringer i inventardatabasen for å returnere produkttilgjengelighet eller legge til detaljer i en kundes profil.
  3. Databaseserver: Dette er backend-nivået til en nettapplikasjon, det består av alle dataene, så dette nivået vil stort sett være en database som f.eks. MySQL, Oracle, DB2 eller PostgreSQL.

Andre flerlagsarkitekturer

Three Tier Architecture er mye brukt for applikasjonsutvikling, det er noen annen arkitektur som nevnt nedenfor.

maskinskrift for hver sløyfe

To-lags arkitektur

Dette er en grunnleggende programvarearkitektur som består av to lag eller nivå en er klient og en annen er server. Hvert nivå har sitt eget ansvar og de er sammenkoblet med hverandre eller avhengige av hverandre

Klientnivå

Klientnivået er det øverste laget, som er som et brukergrensesnitt og en interaksjonsdel av applikasjonen. den fungerer som en nettleser, skrivebordsapplikasjon eller mobilapp, der brukeren samhandler med applikasjonen. Den er ansvarlig for å presentere dataene og behandle innspillene til søknaden.

Servernivå

Serverlag er et bunnlag som inneholder logikken som vi trengte for å håndtere databehandling og databehandling.

N-tier arkitektur

N-Tier Architecture, også kjent som Multi-Tier Architecture, deler applikasjonen inn i forskjellige antall nivåer basert på kompleksiteten og kravene. følgende er noen av nivåene som er inkludert i arkitekturen.

  • Presentasjonsnivå (klientnivå)
  • Applikasjonsnivå (mellomnivå eller forretningslogikknivå)
  • Datalag (Data Storage Tier eller Database Tier)
  • Tjenestenivå (forretningstjenester eller applikasjonstjenester)
  • Integration Tier (Integration Services).

Fordeler med trelagsarkitektur

  • Logisk separasjon opprettholdes mellom Presentation Tier, Application Tier og Database Tier.
  • Forbedring av ytelsen ettersom oppgaven er delt på flere maskiner i distribuerte maskiner og dessuten er hvert nivå uavhengig av andre nivåer.
  • Økende etterspørsel etter å legge til flere servere kan også håndteres i arkitekturen ettersom nivåer kan skaleres uavhengig.
  • Utviklere er uavhengige til å oppdatere teknologien til ett nivå, da det ikke vil påvirke de andre nivåene.
  • Pålitelighet forbedres med uavhengigheten til nivåene ettersom problemer med ett nivå ikke vil påvirke de andre.
  • Programmerere kan enkelt vedlikeholde databasen, presentasjonskoden og forretnings-/applikasjonslogikken separat. Hvis det kreves endringer i forretnings-/applikasjonslogikken, påvirker det ikke presentasjonskoden og kodebasen.
  • Lasten er balansert når presentasjonsnivåoppgaven er atskilt fra serveren til datalaget.
  • Sikkerheten er forbedret ettersom klienten ikke kan kommunisere direkte med Database Tier. I tillegg valideres dataene på Application Tier før de overføres til Database Tier.
  • Dataintegriteten opprettholdes.
  • Tilveiebringelse av distribusjon til en rekke databaser i stedet for å begrense deg til en bestemt teknologi.

Ulemper med trelagsarkitektur

  • Presentasjonsnivået kan ikke kommunisere direkte med databasenivået.
  • Kompleksiteten øker også med økningen i nivåer i arkitekturen.
  • Det er en økning i antall ressurser ettersom kodebase, presentasjonskode og applikasjonskode må vedlikeholdes separat.

Vanlige spørsmål om trelagsarkitektur

1. Trelagsarkitektur i DBMS

De databasestyringssystem (DBMS) er delt inn i tre logiske og fysiske nivåer: presentasjonsnivået, applikasjonsnivået og databasenivået. Dette er kjent som trelagsarkitektur i DBMS.

datalinklagsprotokoller

2. Trelagsarkitektur i C#

EN C# applikasjonen er delt inn i tre logiske og fysiske nivåer: presentasjonsnivået, applikasjonsnivået og datanivået. Dette er kjent som trelagsarkitektur.

3. Trelagsarkitektur i AWS (Amazon Web Services)

En trelagsarkitektur i Amazon Web Services (AWS) refererer til utformingen av nettapplikasjoner eller tjenester som bruker AWS skyressurser og tjenester for å skille applikasjonen i tre logiske nivåer. Hvert nivå har spesifikke ansvarsområder, og AWS tilbyr en rekke tjenester for å støtte implementeringen av denne arkitekturen.

4. Trelagsarkitektur for mobil databehandling

En trelagsarkitektur i sammenheng med mobil databehandling refererer til organiseringen av en mobilapplikasjon eller et mobilsystem i tre logiske lag eller lag, hver med spesifikke ansvarsområder.