Webserver

Webserver kann zu irgendeinem die Hardware (der Computer) oder die Software verweisen (die Computeranwendung), der hilft, Webinhalt zu liefern, auf den durch das Internet zugegriffen werden kann.

Der grösste Teil der üblichen Anwendung von Webservern soll Websites veranstalten, aber es gibt anderen Gebrauch wie das Spielen, die Datenlagerung oder das Laufen von Unternehmensanwendungen.

Übersicht

Die primäre Funktion eines Webservers ist, Webseiten auf der Bitte Kunden zu liefern, die das Hypertext-Übertragungsprotokoll (HTTP) verwenden. Das bedeutet Übergabe von HTML-Dokumenten und jedem zusätzlichen Inhalt, der durch ein Dokument, wie Images, Formatvorlagen und Schriften eingeschlossen werden kann.

Ein Benutzeragent, allgemein ein WWW-Browser oder Webkettenfahrzeug, Eingeweihter-Kommunikation, indem er eine Bitte um eine spezifische Quelle mit HTTP und dem Server macht, erwidert mit dem Inhalt dieser Quelle oder einer Fehlermeldung, wenn unfähig, um so zu tun. Die Quelle ist normalerweise eine echte Datei auf dem sekundären Gedächtnis des Servers, aber das ist nicht notwendigerweise der Fall und hängt ab, wie der Webserver durchgeführt wird.

Während die primäre Funktion ist, Inhalt zu dienen, schließt eine volle Durchführung von HTTP auch Weisen ein, Inhalt von Kunden zu erhalten. Diese Eigenschaft wird verwendet, um Webformen einschließlich des Ladens von Dateien vorzulegen.

Viele allgemeine Webserver unterstützen auch Server-Seite scripting das Verwenden von Active Server Pages (ASP), PHP oder anderen scripting Sprachen. Das bedeutet, dass das Verhalten des Webservers scripted in getrennten Dateien sein kann, während die wirkliche Server-Software unverändert bleibt. Gewöhnlich wird diese Funktion verwendet, um HTML-Dokumente zu schaffen, die dynamisch im Vergleich mit dem Zurückbringen statischer Dokumente ("während der Übertragung") sind. Der erstere wird in erster Linie verwendet, um Information von Datenbanken wiederzubekommen und/oder zu modifizieren. Der Letztere wird normalerweise viel schneller leichter und versteckt.

Webserver werden nicht immer verwendet, für dem World Wide Web zu dienen. Sie können auch eingebettet in Geräten wie Drucker, Router, Netzkameras und Portion nur einem lokalen Netz gefunden werden. Der Webserver kann dann als ein Teil eines Systems verwendet werden, um das fragliche Gerät zu kontrollieren und/oder zu verwalten. Das bedeutet gewöhnlich, dass keine zusätzliche Software auf dem Kundencomputer installiert werden muss, da nur ein WWW-Browser erforderlich ist (der jetzt mit am meisten Betriebssystemen eingeschlossen wird).

Geschichte

1989 hat Tim Berners-Lee ein neues Projekt mit der Absicht vorgeschlagen, den Informationsaustausch zwischen Wissenschaftlern zu erleichtern, indem er einen Hypertext an seinem Arbeitgeber CERN verwendet hat. Das Projekt ist auf Berners-Lee hinausgelaufen, der zwei Programme 1990 schreibt:

  • Ein Browser genannt WorldWideWeb
  • Der erste Webserver in der Welt, später bekannt als CERN httpd, der auf NeXTSTEP gelaufen
ist

Zwischen 1991 und 1994, der Einfachheit und Wirksamkeit von frühen Technologien hat gepflegt, zu surfen und wert zu sein, Daten durch das World Wide Web haben geholfen, sie zu vielen verschiedenen Betriebssystemen zu tragen und ihren Gebrauch unter wissenschaftlichen Organisationen und Universitäten, und dann zur Industrie auszubreiten.

1994 hat sich Tim Berners-Lee dafür entschieden, das Konsortium des World Wide Web (W3C) einzusetzen, um die weitere Entwicklung der vielen Technologien beteiligt (HTTP, HTML, usw.) durch einen Standardisierungsprozess zu regeln.

Gemeinsame Merkmale

  • Virtuelle Bewirtung, um vielen Websites mit einem IP zu dienen, richtet
  • Große Dateiunterstützung, um im Stande zu sein, Dateien zu dienen, deren Größe größer ist als 2 GB auf 32 Bit OS
  • Bandbreite, die drosselt, um die Geschwindigkeit von Antworten zu beschränken, um das Netz nicht zu sättigen und im Stande zu sein, mehr Kunden zu dienen
  • Server-Seite scripting, um dynamische Webseiten zu erzeugen, noch Webserver und Website-Durchführungen behaltend, trennt von einander

Pfad-Übersetzung

Webserver sind im Stande, den Pfad-Bestandteil einer Internetadresse (URL) kartografisch darzustellen, in:

  • Eine lokale Dateisystemquelle (für statische Bitten)
  • Ein innerer oder äußerlicher Programmname (für dynamische Bitten)

Für eine statische Bitte ist der vom Kunden angegebene URL-ADRESSE-Pfad hinsichtlich des Webserver-Wurzelverzeichnisses.

Betrachten Sie die folgende URL-ADRESSE, wie sie von einem Kunden gebeten würde:

Der Benutzeragent des Kunden wird es in eine Verbindung zu mit dem folgenden HTTP 1.1 Bitte übersetzen:

KOMMEN SIE /path/file.html HTTP/1.1

Der Webserver darauf wird den gegebenen Pfad zum Pfad seines Wurzelverzeichnisses anhängen. Auf einem Apachen-Server ist das allgemein (Auf Unix Maschinen, gewöhnlich). Das Ergebnis ist die lokale Dateisystemquelle:

/home/www/path/file.html

Der Webserver liest dann die Datei, wenn es besteht und eine Antwort auf den WWW-Browser des Kunden sendet. Die Antwort wird den Inhalt der Datei beschreiben und die Datei selbst enthalten, oder eine Fehlermeldung wird Ausspruch zurückgeben, dass die Datei nicht besteht oder nicht verfügbar ist.

Kernweise und Benutzerweise-Webserver

Ein Webserver kann entweder in den OS Kern, oder im Benutzerraum (wie andere regelmäßige Anwendungen) durchgeführt werden.

Ein Webserver im Kern (wie SMOKING auf GNU/Linux oder Microsoft IIS auf Windows) wird gewöhnlich schneller arbeiten, weil, als ein Teil des Systems, es alle Hardware-Mittel direkt verwenden kann, die man, wie nichtpaginiertes Gedächtnis, Zentraleinheitszeitabschnitte, Netzadapter oder Puffer braucht.

Webserver, die in der Benutzerweise laufen, müssen das System die Erlaubnis fragen, mehr Gedächtnis oder mehr Zentraleinheitsmittel zu verwenden. Nicht nur tun diese Bitten zum Kern nehmen Zeit in Anspruch, aber sie sind nicht immer zufrieden, weil das System Mittel für seinen eigenen Gebrauch vorbestellt und die Verantwortung hat, Hardware-Mittel mit allen anderen laufenden Anwendungen zu teilen.

Außerdem können Anwendungen nicht auf die inneren Puffer des Systems zugreifen, der nutzlose Pufferkopien verursacht, die ein anderes Handikap für Benutzerweise-Webserver schaffen. Demzufolge soll der einzige Weg für einen Benutzerweise-Webserver, um Kernweise-Leistung zu vergleichen, die Qualität seines Codes zu viel höheren Standards erheben, die diesem des Codes ähnlich sind, der in Webservern verwendet ist, die im Kern laufen. Das ist ein bedeutendes Problem unter Windows, wo die Benutzerweise oben ungefähr sechsmal größer ist als das unter Linux.

Lastgrenzen

Ein Webserver (Programm) hat Lastgrenzen definiert, weil es nur eine begrenzte Zahl von gleichzeitigen Kundenverbindungen (gewöhnlich zwischen 2 und 80,000, standardmäßig zwischen 500 und 1,000) pro IP-Adresse behandeln kann (und TCP Hafen) und es nur einer bestimmten maximalen Zahl von Bitten pro Sekunde abhängig von dienen kann:

  • seine eigenen Einstellungen,
  • die HTTP bitten um Typ,
  • ob der Inhalt statisch oder, dynamisch
ist
  • ob der Inhalt, und versteckt wird
  • die Hardware und Softwarebeschränkungen des OS des Computers, auf dem der Webserver läuft.

Wenn ein Webserver in der Nähe von oder über seine Grenzen ist, wird es unempfänglich.

Ursachen der Überlastung

Jederzeit können Webserver überladen werden wegen:

  • Zu viel legitimer Webverkehr. Tausende oder sogar Millionen von Kunden, die zur Website in einem kurzen Zwischenraum, z.B, Wirkung von Slashdot in Verbindung stehen;
  • Verteilte Leugnung von Dienstangriffen. Ein Angriff der Leugnung des Dienstes (Angriff von DoS) oder verteilter Angriff der Leugnung des Dienstes (Angriff von DDoS) ist ein Versuch, einen Computer oder seinen beabsichtigten Benutzern nicht verfügbare Netzquelle zu machen.;
  • Computerwürmer, die manchmal anomalen Verkehr wegen Millionen von angesteckten Computern (nicht koordiniert unter ihnen) verursachen;
  • XSS Viren können hohen Verkehr wegen Millionen von angesteckten Browsern und/oder Webservern verursachen;
  • Internetfunktionseinheiten. Verkehr nicht hat auf großen Websites mit sehr wenigen Mitteln (Bandbreite, usw.) gefiltert/beschränkt;
  • Internet (Netz), vergrößern Verlangsamungen, so dass Kundenbitten langsamer und die Zahl von Verbindungen gedient wird, so viel, dass Server-Grenzen erreicht werden;
  • Webserver (Computer) teilweise Nichtverfügbarkeit. Das kann wegen erforderlicher oder dringender Wartung oder Steigung, Hardware oder Softwaremisserfolge, Zurückende (z.B, Datenbank) Misserfolge usw. geschehen; in diesen Fällen bekommen die restlichen Webserver zu viel Verkehr und werden überlastet.

Symptome von der Überlastung

Die Symptome von einem überlasteten Webserver sind:

  • Bitten wird mit (vielleicht lange) Verzögerungen (von 1 Sekunde bis zu den einigen hundert Sekunden) gedient.
  • Der Webserver gibt einen HTTP Fehlercode, solcher als 500, 502, 503, 504, oder 408, oder sogar 404 zurück, der für eine Überlastungsbedingung unpassend ist.
  • Der Webserver lehnt ab oder fasst neu (unterbricht) TCP Verbindungen, bevor er jeden Inhalt zurückgibt.
  • In sehr seltenen Fällen gibt der Webserver nur einen Teil des gebetenen Inhalts zurück. Dieses Verhalten kann als ein Programmfehler betrachtet werden, selbst wenn es gewöhnlich als ein Symptom von der Überlastung entsteht.

Antiüberlastungstechniken

Um über Lastgrenzen teilweise zu siegen und Überlastung zu verhindern, verwenden populärste Websites allgemeine Techniken wie:

  • Betriebsnetzverkehr, durch das Verwenden:
  • Brandmauern, um unerwünschten Verkehr zu blockieren, der aus schlechten IP Quellen kommt oder schlechte Muster hat;
  • HTTP Verkehrsbetriebsleiter, um zu fallen, adressieren Sie um oder schreiben Sie Bitten um, die schlechte HTTP Muster haben;
  • Bandbreite-Management und das Verkehrsformen, um Spitzen im Netzgebrauch glatt zu streichen;
  • das Entfalten von Webtechniken des geheimen Lagers;
  • das Verwenden verschiedener Domainnamen, um verschieden (statisch und dynamisch) Inhalt durch getrennte Webserver zu dienen, d. h.:
  • das Verwenden verschiedener Domainnamen und/oder Computer, um große Dateien von kleinen und mittleren großen Dateien zu trennen; die Idee ist, zu völlig dem geheimen Lager kleine und mittlere große Dateien fähig zu sein und groß oder riesig (mehr als 10 - 1000 Mb) Dateien durch das Verwenden verschiedener Einstellungen effizient zu dienen;
  • mit vielen Webservern (Programme) pro Computer, jeder, der zu seiner eigenen Netzkarte und IP-Adresse gebunden ist;
  • das Verwenden vieler Webserver (Computer), die zusammen gruppiert werden, so dass sie handeln oder als ein großer Webserver gesehen werden (sieht auch Last balancer);
  • mehr Hardware-Mittel (d. h. RAM, Platten) zu jedem Computer hinzufügend;
  • die Einstimmung von OS Rahmen für Hardware-Fähigkeiten und Gebrauch;
  • das Verwenden effizienterer Computerprogramme für Webserver, usw.;
  • das Verwenden anderen workarounds, besonders wenn dynamischer Inhalt beteiligt wird.

Marktanteil

Unten ist die neuste Statistik des Marktanteils der Spitzenwebserver im Internet durch den Überblick von Netcraft im Februar 2012.

Siehe auch

Außenverbindungen


Web / Gut-Ordnung
Impressum & Datenschutz