Co to jest architektura klient-serwer?

Firmy różnej wielkości mają różne potrzeby komputerowe. Większe firmy muszą koniecznie korzystać z większej liczby komputerów niż mniejsze firmy. Duże firmy rutynowo mają duże konfiguracje komputerowe, takie jak komputery mainframe i sieci. Sieć dla dużej firmy zwykle ma architekturę klient-serwer, znaną również jako architektura dwuwarstwowa. Bez względu na to, jak się nazywa, ten rodzaj architektury jest podziałem pracy na funkcje obliczeniowe wymagane przez dużą firmę.

Zgodnie ze strukturą architektury klient-serwer, sieć komputerowa przedsiębiorstwa będzie składać się z komputera-serwera, który funkcjonuje jako „mózg” organizacji, oraz grupy komputerów klienckich, które są powszechnie nazywane stacjami roboczymi. Częścią serwerową tej architektury będzie komputer o dużej pojemności, być może nawet mainframe, na którym będzie przechowywana duża ilość danych i funkcjonalności. Części klienckie to mniejsze komputery, których pracownicy używają do wykonywania swoich obowiązków związanych z komputerem.

Serwery zwykle zawierają pliki danych i aplikacje, do których można uzyskać dostęp przez sieć, ze stacji roboczych lub komputerów pracowników. Na przykład pracownik, który chce uzyskać dostęp do plików danych w całej firmie, używa swojego komputera klienckiego do uzyskiwania dostępu do plików danych na serwerze. Inni pracownicy mogą korzystać z aplikacji o powszechnym dostępie, uzyskując dostęp do serwera za pośrednictwem swoich komputerów klienckich.

Ten typ serwera nazywany jest serwerem aplikacji. W pełni wykorzystuje architekturę klient-serwer, wykorzystując serwer jako urządzenie do przechowywania aplikacji i wymagając od klientów logowania się na serwerze w celu korzystania z tych aplikacji. Przykłady tego rodzaju aplikacji są liczne; do najpopularniejszych należą edytory tekstu, arkusze kalkulacyjne i programy do projektowania graficznego. W każdym przypadku wykorzystanie aplikacji obrazuje architekturę klient-serwer.

Serwer służy jednak nie tylko do przechowywania. Wiele sieci ma architekturę klient-serwer, w której serwer działa również jako źródło zasilania przetwarzania. W tym scenariuszu komputery klienckie są praktycznie „podłączone” do serwera i uzyskują z niego moc obliczeniową. W ten sposób komputer kliencki może symulować większą moc obliczeniową serwera bez przechowywania wymaganego procesora w jego ramach. Tutaj architektura klient-serwer opisuje wirtualny rodzaj elektrowni.