Wat is een “servertoepassing”?

Wat is precies een “servertoepassing”? Ik ben gevraagd om een essay te schrijven over bugs in “serverapplicaties” en ik ben niet bekend met de exacte term. Zijn het gewoon web-applicaties, of is het iets anders?


Antwoord 1, autoriteit 100%

Een “servertoepassing” is een toepassing die wacht op verzoeken van andere toepassingen en daarop reageert, waardoor op hun verzoek een “service” wordt geleverd. Een webserver is een servertoepassing.


Antwoord 2, autoriteit 50%

1. Wat is een client-server-applicatie?

Client-server beschrijft een applicatie-architectuur waarin de client een actie of service aanvraagt bij de provider van de service, de server. Denk aan een webbrowser en een webserver. Wanneer u een URL adresseert in het browservenster, vraagt deze (client) een pagina op bij een webserver. De server retourneert een html-pagina naar de client, die de pagina (gegevens) ontleedt en op uw computer weergeeft.

Bij het ontwikkelen van een client-servertoepassing, zoals de webbrowser en webserver, moet u overwegen hoe u de ontwikkeling van uw toepassing in een teamomgeving gaat aanpakken en hoe u het onderhoud op de lange termijn gaat aanpakken. Het ontwikkelen van client-server-applicaties loopt parallel met het ontwikkelen van modulaire programma’s. Modulair programmeren scheidt grote applicaties in kleinere samenstellende delen om de ontwikkeling in teams te vergemakkelijken en een betere onderhoudbaarheid te bieden. In een client-servertoepassing hoeft een module niet deel uit te maken van hetzelfde programma of zelfs maar op dezelfde computer te draaien. Elke modulaire functie kan op een ander apparaat worden uitgevoerd.

2. Hoe presteert een klant?

Clientprogramma’s vragen om service van een server door deze een bericht te sturen. Terugverwijzend naar het webvoorbeeld: een webbrowser is een client die we elke dag gebruiken om webpagina’s op te vragen. Toen u bijvoorbeeld op de link klikte om dit artikel te lezen, stuurde uw browser een bericht naar een webserver in Austin, TX. Als reactie heeft uw browser de html-pagina ontvangen die u nu aan het lezen bent. Een webbrowser vertegenwoordigt veel clientprogramma’s die de grafische gebruikersinterface (GUI) of het weergavegedeelte van een toepassing beheren; het bepalen van de presentatie van de dienst die door een applicatie wordt geleverd.

3. Wat is de functie van een server?

Serverprogramma’s verwerken clientverzoeken door de door clients gevraagde taken uit te voeren. In een webbrowser retourneert de webserver bijvoorbeeld de door de client gevraagde html-pagina. Maar clientverzoeken en serverprogramma’s zijn niet altijd zo eenvoudig. Overweeg een meer gecompliceerde toepassing waarin u een product op een webpagina koopt. In dit geval informeert de client de server wat u koopt en werkt de server een database bij met het aankoopverzoek. Vervolgens informeert de server de klant dat de bestelling is geplaatst.

Servers zijn over het algemeen passief terwijl ze wachten op een clientverzoek. Tijdens deze wachttijden kunnen servers andere taken uitvoeren of onderhoud uitvoeren. In tegenstelling tot de client moet de server continu draaien omdat clients op elk moment om service kunnen vragen. Klanten daarentegen hoeven alleen te draaien wanneer ze service nodig hebben. Bij veel servertoepassingen kunnen meerdere clients service aanvragen. Terwijl u deze pagina leest, kunnen anderen die geïnteresseerd zijn in client-serverprogrammering bijvoorbeeld dezelfde webpagina opvragen en lezen.

Originele artikel is hier

Bekijk ook dit artikel

Een empirische Onderzoek naar gerapporteerde bugs in serversoftware met implicaties voor geautomatiseerde bugdiagnose


Antwoord 3

Een “servertoepassing” bindt aan een bekende poorten heeft een bereikbaar adres (en optioneel een naam). De webserver voor Google luistert bijvoorbeeld op port 80(HTTP) en heeft (veel) adres(sen) die afkomstig zijn van “www.google.com”. In dit geval hebben we het over een “webservertoepassing”. Andere “serverapplicaties” zouden het gamma van de “bekende” poort(en) hebben en in de vergetelheid raken met propriëtaire applicaties en protocollen.

Daarentegen is een “clienttoepassing” (in meer of mindere mate) afhankelijk van een “server”. Sommige protocollen zijn gedecentraliseerd, bijvoorbeeld gitof bittorent. Daarentegen kan Microsoft Outlook (of een andere e-mailclient) geen e-mail verzenden zonder Microsoft Exchange (of een andere mailserver).

Other episodes