logo

Trójwarstwowa architektura kliencko-serwerowa w systemie rozproszonym

W tym artykule szczegółowo omówimy trójwarstwową architekturę klient-serwer. Najpopularniejszy typ architektury wielowarstwowej w systemy rozproszone to trójwarstwowa architektura klient-serwer. W tej architekturze cała aplikacja jest podzielona na trzy warstwy obliczeniowe

  • Poziom prezentacji
  • Poziom aplikacji
  • Poziom danych

Główną zaletą trzech warstw w architekturze klient-serwer jest to, że warstwy te są opracowywane i utrzymywane niezależnie, co w przypadku jakichkolwiek modyfikacji nie będzie miało wpływu na pozostałe warstwy. Pozwala to na lepszą wydajność i jeszcze większą skalowalność architektury, ponieważ wraz ze wzrostem zapotrzebowania można dodać więcej serwerów.



wyłącz tryb programisty

Co to jest architektura trójpoziomowa?

Architektura trójwarstwowa to dobrze ugruntowany wzorzec projektowania aplikacji, który organizuje aplikację w trzech logicznych i fizycznych warstwach obliczeniowych w następujący sposób:

  • Poziom prezentacji
  • Warstwa aplikacji
  • Warstwa danych

Szczegóły trzech poziomów

Poziom prezentacji

Jest to interfejs użytkownika i najwyższy poziom w architekturze. Jego celem jest przyjęcie żądania od klienta i wyświetlenie mu informacji. Komunikuje się z innymi warstwami za pomocą przeglądarki internetowej, przekazując dane wyjściowe w przeglądarce. Jeśli mówimy o poziomach internetowych, są one opracowywane przy użyciu języków takich jak: HTML , CSS , JavaScript.

Warstwa aplikacji

Jest to środkowa warstwa architektury, zwana również warstwą logiczną, ponieważ informacje/żądania zebrane w warstwie prezentacji są tutaj szczegółowo przetwarzane. Współpracuje również z serwerem przechowującym dane. Przetwarza żądanie klienta, formatuje je i odsyła do klienta. Jest rozwijany przy użyciu języków takich jak- Pyton , Jawa , PHP itp.



Warstwa danych

Jest to ostatnia warstwa architektury, znana również jako warstwa bazy danych. Służy do przechowywania przetworzonych informacji, aby można było je później odzyskać, gdy zajdzie taka potrzeba. Składa się z serwerów baz danych, takich jak- Wyrocznia , MySQL, DB2 itp. Komunikacja między warstwą prezentacji a warstwą danych odbywa się za pomocą warstwy środkowej, tj. warstwy aplikacji.

Architektura trójpoziomowa

Poziom kontra warstwa

Szczebel



Warstwa

program powitalny Java

Poziom odnosi się do fizycznego oddzielenia komponentów.

Warstwa odnosi się do logicznego oddzielenia aplikacji.

Warstwy są oddzielone fizycznie i na różnych komputerach działają serwery.

Warstwy są logicznie oddzielone, ale działają na tych samych serwerach lub komputerach.

Skalowalność aplikacji jest bardzo wysoka.

Skalowalność aplikacji jest średnia.

Typowe warstwy w architekturze wielowarstwowej obejmują warstwę prezentacji (interfejs użytkownika), warstwę aplikacji (logika biznesowa) i warstwę danych (baza danych).

jsp javatpoint

Każda warstwa koncentruje się na określonych obowiązkach, takich jak prezentacja, logika biznesowa i dostęp do danych, w ramach jednej warstwy.

Trójwarstwowa aplikacja w tworzeniu stron internetowych

Aplikacja internetowa będzie miała te same warstwy, co trzy architektury, ale jedyną różnicą będzie to, że będą miały różne nazwy.

  1. Serwer internetowy: Serwer WWW to warstwa prezentacji w architekturze trójwarstwowej, która służy jako warstwa prezentacji lub warstwa interfejsu użytkownika (interfejsu użytkownika). Ta treść może być statyczna lub dynamiczna w zależności od wymagań, np. witryny handlu elektronicznego, w której użytkownicy mogą dodawać produkty do koszyka, wprowadzać szczegóły płatności lub tworzyć konto.
  2. Serwer aplikacji: Warstwa aplikacji to warstwa środkowa, która składa się z pełnej logiki wymaganej przez firmę, która będzie przetwarzać dane wejściowe użytkowników i tak dalej. Wykonuje logiczne zapytania do bazy danych zapasów, aby zwrócić dostępność produktu lub dodać szczegóły do ​​profilu klienta.
  3. Serwer bazy danych: Jest to warstwa zaplecza aplikacji internetowej, zawiera wszystkie dane, więc na tej warstwie będzie głównie baza danych, taka jak MySQL, Oracle, DB2 lub PostgreSQL.

Inne architektury wielopoziomowe

Architektura trójwarstwowa jest szeroko stosowana do tworzenia aplikacji. Istnieje kilka innych architektur, o których mowa poniżej.

Architektura dwupoziomowa

Jest to podstawowa architektura oprogramowania, która składa się z dwóch warstw lub warstwy, jedna to klient, a druga to serwer. Każda warstwa ma swoją odpowiedzialność i są ze sobą powiązane lub od siebie zależne.

Poziom klienta

Warstwa klienta to najwyższa warstwa, która przypomina interfejs użytkownika i część interakcji aplikacji. pełni funkcję przeglądarki internetowej, aplikacji komputerowej lub aplikacji mobilnej, za pośrednictwem której użytkownik wchodzi w interakcję z aplikacją. Odpowiada za prezentację danych i przetwarzanie danych wejściowych aplikacji.

Poziom serwera

Warstwa serwera to dolna warstwa zawierająca logikę niezbędną do obsługi przetwarzania i zarządzania danymi.

Architektura N-warstwowa

Architektura N-Tier, znana również jako architektura wielopoziomowa, dzieli aplikację na różną liczbę warstw w zależności od złożoności i wymagań. poniżej przedstawiono niektóre poziomy zawarte w architekturze.

poradnik dotyczący swingu w Javie
  • Poziom prezentacji (poziom klienta)
  • Warstwa aplikacji (warstwa środkowa lub warstwa logiki biznesowej)
  • Warstwa danych (warstwa przechowywania danych lub warstwa bazy danych)
  • Poziom usług (usługi biznesowe lub usługi aplikacji)
  • Warstwa integracji (usługi integracyjne).

Korzyści z architektury trójwarstwowej

  • Utrzymywana jest logiczna separacja pomiędzy warstwą prezentacji, warstwą aplikacji i warstwą bazy danych.
  • Zwiększenie wydajności, ponieważ zadanie jest podzielone na wiele maszyn w rozproszonych maszynach, a ponadto każda warstwa jest niezależna od innych warstw.
  • Architektura może również obsłużyć rosnące zapotrzebowanie na dodawanie większej liczby serwerów, ponieważ warstwy można skalować niezależnie.
  • Programiści mogą niezależnie aktualizować technologię jednego poziomu, ponieważ nie będzie to miało wpływu na inne poziomy.
  • Niezawodność poprawia się dzięki niezależności poziomów, ponieważ problemy na jednym poziomie nie wpływają na pozostałe.
  • Programiści mogą z łatwością oddzielnie zarządzać bazą danych, kodem prezentacji i logiką biznesową/aplikacją. Jeśli wymagana jest jakakolwiek zmiana w logice biznesowej/aplikacji, nie ma to wpływu na kod prezentacji i bazę kodu.
  • Obciążenie jest równoważone, gdy zadanie warstwy prezentacji jest oddzielone od serwera warstwy danych.
  • Zwiększono bezpieczeństwo, ponieważ klient nie może komunikować się bezpośrednio z warstwą bazy danych. Co więcej, dane są sprawdzane w warstwie aplikacji przed przesłaniem do warstwy bazy danych.
  • Integralność danych zostaje zachowana.
  • Zapewnienie wdrożenia w różnych bazach danych, zamiast ograniczania się do jednej konkretnej technologii.

Wady architektury trójwarstwowej

  • Warstwa prezentacji nie może komunikować się bezpośrednio z warstwą bazy danych.
  • Złożoność wzrasta również wraz ze wzrostem poziomów architektury.
  • Rośnie liczba zasobów, ponieważ baza kodu, kod prezentacji i kod aplikacji muszą być utrzymywane oddzielnie.

Często zadawane pytania dotyczące architektury trójwarstwowej

1. Architektura trójwarstwowa w systemie DBMS

The system zarządzania bazą danych (DBMS) jest podzielony na trzy warstwy logiczne i fizyczne: warstwę prezentacji, warstwę aplikacji i warstwę bazy danych. W systemie DBMS jest to znane jako architektura trójwarstwowa.

2. Architektura trójwarstwowa w C#

A C# aplikacja jest podzielona na trzy warstwy logiczne i fizyczne: warstwę prezentacji, warstwę aplikacji i warstwę danych. Nazywa się to architekturą trójwarstwową.

3. Architektura trójwarstwowa w AWS (Amazon Web Services)

Architektura trójpoziomowa w Usługi internetowe Amazona (AWS) odnosi się do projektowania aplikacji lub usług internetowych, które wykorzystują zasoby i usługi w chmurze AWS w celu podzielenia aplikacji na trzy logiczne warstwy. Każdy poziom ma określone obowiązki, a AWS zapewnia szereg usług wspierających wdrażanie tej architektury.

4. Trójwarstwowa architektura komputerów mobilnych

Architektura trójwarstwowa w kontekście komputerów mobilnych odnosi się do organizacji aplikacji lub systemu mobilnego w trzech logicznych poziomach lub warstwach, z których każda ma określone obowiązki.