vad är tre nivåer arkitektur?,
tredelad arkitektur är en väletablerad programvaruapplikationsarkitektur som organiserar applikationer i tre logiska och fysiska datornivåer: presentationsnivån eller användargränssnittet; applikationsnivån, där data behandlas och datanivån, där data som är associerade med ansökan lagras och hanteras.
den främsta fördelen med tre nivåer arkitektur är att eftersom varje nivå körs på sin egen infrastruktur, varje nivå kan utvecklas samtidigt av en separat utvecklingsteam, och kan uppdateras eller skalas vid behov utan att påverka de andra nivåerna.,
i årtionden var tre nivåer arkitektur den rådande arkitekturen för klientserverprogram. Idag är de flesta tre nivåer applikationer mål för modernisering, med hjälp av molnbaserad teknik som behållare och mikrotjänster och för migration till molnet.
de tre nivåerna i detalj
Presentationsnivå
presentationsnivån är användargränssnittet och kommunikationsskiktet i programmet, där slutanvändaren interagerar med programmet. Dess huvudsakliga syfte är att visa information till och samla in information från användaren., Denna toppnivå nivå kan köras på en webbläsare, som skrivbordsprogram, eller ett grafiskt användargränssnitt (GUI), till exempel. Webbpresentation nivåer brukar utvecklas med hjälp av HTML, CSS och JavaScript. Skrivbordsprogram kan skrivas på olika språk beroende på plattformen.
Application tier
application tier, även känd som logic tier eller middle tier, är hjärtat i programmet., I denna nivå behandlas information som samlas in i presentationsklassen-ibland mot annan information i dataklassen – med hjälp av affärslogik, en specifik uppsättning affärsregler. Applikationsklassen kan också lägga till, ta bort eller ändra data i dataklassen.
applikationsnivån är vanligtvis utvecklad med Python, Java, Perl, PHP eller Ruby och kommunicerar med datanivån med hjälp av API-anrop.
datanivå
datanivå, ibland kallad databasnivå, dataåtkomstnivå eller back-end, är där den information som behandlas av programmet lagras och hanteras., Detta kan vara en relationsdatabas management system som PostgreSQL, MySQL, MariaDB, Oracle, DB2 Informix eller Microsoft SQL Server, eller i en NoSQL-Databas-server till exempel Cassandra, CouchDB eller MongoDB.
i ett tredelat program går all kommunikation genom applikationsnivån. Presentationsnivån och datanivån kan inte kommunicera direkt med varandra.
Tier vs layer
i diskussioner om tre nivåer arkitektur används layer ofta omväxlande-och felaktigt – för tier, som i ”presentationslager” eller ” affärslogiklager.,’
de är inte desamma. Ett ”lager” avser en funktionell uppdelning av programvaran, men en ”nivå” avser en funktionell uppdelning av programvaran som körs på Infrastruktur separat från de andra divisionerna. Appen Kontakter på din telefon är till exempel en applikation med tre lager, men en enda applikation, eftersom alla tre lagren körs på din telefon.
skillnaden är viktig, eftersom lager inte kan erbjuda samma fördelar som nivåer.,
fördelar med tre nivåer arkitektur
återigen, den främsta fördelen med tre nivåer arkitektur dess logiska och fysiska separation av funktionalitet. Varje nivå kan köras på ett separat operativsystem och serverplattform – t.ex. webbserver, applikationsserver, databasserver-som bäst passar dess funktionella krav. Och varje nivå körs på minst en dedikerad serverhårdvara eller virtuell server, så tjänsterna i varje nivå kan anpassas och optimeras utan att påverka de andra nivåerna.,
andra fördelar (jämfört med enkel – eller två nivåer arkitektur) inkluderar:
- snabbare utveckling: eftersom varje nivå kan utvecklas samtidigt av olika lag, kan en organisation föra programmet till marknaden snabbare, och programmerare kan använda de senaste och bästa Språk och verktyg för varje nivå.
- förbättrad skalbarhet: varje nivå kan skalas oberoende av de andra efter behov.
- förbättrad tillförlitlighet: ett avbrott i en nivå är mindre sannolikt att påverka tillgängligheten eller prestandan hos de andra nivåerna.,
- förbättrad säkerhet: eftersom presentationsnivån och datanivån inte kan kommunicera direkt kan en väldesignad applikationsnivå fungera som en slags intern brandvägg, vilket förhindrar SQL-injektioner och andra skadliga exploater.
tre nivåer program i webbutveckling
i webbutveckling, nivåerna har olika namn men utföra liknande funktioner:
- webbservern är presentationen tier och ger användargränssnittet., Det här är vanligtvis en webbsida eller webbplats, till exempel en e-handelsplats där användaren lägger till produkter i kundvagnen, lägger till betalningsuppgifter eller skapar ett konto. Innehållet kan vara statiskt eller dynamiskt, och brukar utvecklas med hjälp av HTML, CSS och Javascript .
- applikationsservern motsvarar mellannivån, som rymmer affärslogiken som används för att bearbeta användaringångar. För att fortsätta e-handelsexempel är detta den nivå som frågar lagerdatabasen för att returnera produkttillgänglighet, eller lägger till detaljer i en kunds profil., Detta lager utvecklas ofta med hjälp av Python, Ruby eller PHP och driver en ram som e Django, Rails, Symphony eller ASP.NET, till exempel.
- databasservern är data-eller backend-nivån i ett webbprogram. Den körs på programvara för databashantering, såsom MySQL, Oracle, DB2 eller PostgreSQL, till exempel.
andra multi-tier arkitekturer
medan tre nivåer arkitektur är lätt den mest allmänt antagna multi-tier applikationsarkitektur, det finns andra Du kan stöta på i ditt arbete eller din forskning.,
tvådelad arkitektur
tvådelad arkitektur är den ursprungliga klientserverarkitekturen, som består av en presentationsnivå och en datanivå; affärslogiken lever i presentationsnivån, datanivån eller båda. I tvådelad arkitektur har presentationsskiktet – och därmed slutanvändaren-direkt tillgång till datanivån, och affärslogiken är ofta begränsad. Ett enkelt kontakthanteringsprogram, där användare kan ange och hämta kontaktdata, är ett exempel på en tvådelad applikation.,
n-nivåarkitektur
n-nivåarkitektur – även kallad eller flernivåarkitektur-avser alla applikationsarkitektur med mer än en nivå. Men applikationer med mer än tre lager är sällsynta, eftersom ytterligare lager erbjuder få fördelar och kan göra applikationen långsammare, svårare att hantera och dyrare att köra. Som ett resultat är n-tier arkitektur och multi-tier arkitektur vanligtvis synonymer för tre-tier arkitektur.,
tre nivåer arkitektur och IBM Cloud
IBM Cloud erbjuder produkter och tjänster som hjälper dig att modernisera dina äldre tre nivåer applikationer på resan till molnet.
ta det första steget:
- oavsett om du behöver hjälp med strategi, processer eller funktioner—eller vill ha full service uppmärksamhet-utforska hur IBM kan hjälpa till med applikations modernisering.
- börja använda containerized middleware som kan köras i alla moln—alla buntade i IBM Cloud Paks.
- migrera enkelt befintliga VMware-arbetsbelastningar till det offentliga molnet med hjälp av IBM Cloud för VMware-lösningar.,
- planera och genomföra din ansökan moderniseringsstrategier som en del av din pågående digitala omvandling med hjälp av IBM: s ansökan moderniseringstjänster.
Kom igång med ett IBM Cloud-konto idag.