W dobie nowoczesnych technologii informatycznych każdy z nas może zetknąć się z innowacyjnymi aplikacjami i oprogramowaniami. Architekturę systemu komputerowego mogą tworzyć różne rozwiązania. Jednym z nich jest metoda umożliwiająca podział ról, mianowicie oprogramowanie klient serwer. Serwer ma za zadanie zapewnić dostawę usług dla odbiorców, którzy mogą zgłaszać określone żądania.
Najczęściej wymieniane elementy związane z architekturą klient serwer to serwer plików oraz serwer poczty elektronicznej. Poza tymi dwoma serwerami istnieje jeszcze serwer aplikacji oraz serwer internetowy. Na ogół z usług jednego takiego serwera może korzystać spora liczba odbiorców.
W modelu klient serwer najważniejszy jest podział określonych zadań każdej ze stron. Obowiązkiem ze strony klienta (pracuje w trybie aktywnym, co jest bardzo ważne) jest wysyłanie poszczególnych żądań do serwera oraz oczekiwanie na odpowiedź. Natomiast serwer jest stroną, który ma na celu świadczenie usług (praca w trybie pasywnym).
Informatycy wyróżniają kilka różnych typów architektury klient serwer. Najbardziej znana jest architektura jednowarstwowa, charakteryzująca się gromadzeniem i przesyłaniem danych w jednym module. Poza nią wymienia się także architekturę trójwarstwową (występują dwa odrębne moduły) oraz wielowarstwową (wiele modułów).
Aplikacja klient serwer związana jest z występowaniem protokołów komunikacyjnych, za pośrednictwem których dochodzi do połączenia między klientem a serwerem. Klient nawiązuje połączenie, a następnie określa swoje żądania i oczekuje na odpowiedź ze strony serwera.
Zaletą aplikacji klient serwer jest doskonała ochrona danych, gdyż wszystkie one są przechowywane na jednym głównym serwerze. Co więcej, tylko serwer jest w stanie decydować, kto będzie miał dostęp do poszczególnych zasobów.
Wadą rozwiązania typu klient serwer może być natomiast zbyt duża liczba odbiorców, co z kolei może prowadzić do trudności z przepustowością oraz do podobnych problemów natury technicznej. Kiedy serwer nie będzie funkcjonował poprawnie, wówczas dostęp do zasobów może być niemożliwy. W przypadku dużej liczby klientów niekiedy do obsługi serwera konieczne jest odpowiednie oprogramowanie wraz ze sprzętem komputerowym, bez którego ani rusz.