Wieprz serwera — Server hog

Wieprz serwer jest użytkownik, program lub system, który miejsc nadmiernego obciążenia na serwerze tak, że wydajność serwera jako doświadczony przez innych klientów ulega degradacji, albo takie, że sam serwer jest tak mocno obciążone, że nie wykonuje rutynowe sprzątanie na własną rękę utrzymanie.

Historia

We wczesnych latach systemów komputerowych z podziałem czasu w latach 60. było powszechne, że jeden instytucjonalny komputer mainframe kontrolował wiele interaktywnych terminali. W takim środowisku lagi serwera są dotkliwie odczuwalne. Ponadto w wielu środowiskach operacyjnych rzadkie zasoby serwera, takie jak sekundy procesora, były często mierzone i obciążane kontem użytkownika uruchamiającego program. Niezamierzony serwer może okazać się niezwykle kosztowny pod względem finansowym. Programy te były często nazywane programami uciekającymi lub niekończącymi się pętlami.

Rywalizacja o zasoby

Wydajność serwera ma wiele wymiarów. Każdy podsystem, który zostanie nadmiernie obciążony, może obniżyć wydajność innych klientów rywalizujących o ten podsystem. Typowe formy rywalizacji sprzętowej obejmują cykle procesora, opóźnienia przerwań, przepustowość we/wy, dostępną pamięć systemową lub zagregowaną przepustowość pamięci systemowej. Na poziomie oprogramowania, spór może powstać dla buforów , kolejek , szpule lub tablice stron .

Znane świnie

Jest przyjętą praktyką, że serwery są odpowiednio dobierane przez administratorów systemu do oczekiwanego obciążenia (lub kombinacji obciążeń), a wydajność serwera jest ściśle monitorowana w celu ustalenia podstaw wydajności. Obciążenie serwera może obejmować dobrze znane serwery, takie jak kopia zapasowa systemu. Zadania te są zazwyczaj zaplanowane na okresy niewielkiego zapotrzebowania, takie jak bardzo wczesne godziny w niedzielny poranek, z zaakceptowaną polityką administracyjną, która zniechęca lub zabrania innych żądań na serwerze w tych okresach czasu.

Nieoczekiwane świnie

Częściej termin „wieprz serwera” jest używany do określenia nietypowego stanu obciążenia, w którym wydajność serwera jest niższa od przyjętej kulturowo linii bazowej. Typowym scenariuszem we wczesnych latach informatyki był stan przeciążenia znany jako thrashing, w którym zagregowana wydajność serwera ulega poważnemu obniżeniu, na przykład gdy dwa działy dużej firmy próbują jednocześnie uruchomić obszerny raport na tym samym komputerze mainframe. W takiej sytuacji wyznaczenie wieprza serwera staje się kwestią polityczną polegającą na wskazywaniu palcami, ponieważ zakończenie któregokolwiek z długotrwałych raportów przywróciłoby serwer do normalnej wydajności.

era Internetu

W erze Internetu charakter obciążeń serwerów znacznie się zmienił, ponieważ klienci byli coraz bardziej rozproszeni geograficznie i często coraz bardziej anonimowi, na przykład każdy członek społeczeństwa mający dostęp do Internetu może zażądać serwera WWW w dowolnej części świata, aby dostarczyć stronę internetową. W tym kontekście wieprz serwera najczęściej oznacza złośliwego wieprza serwera — program napisany specjalnie w celu przeciążenia zdalnego serwera nadmiernymi żądaniami lub nadmiernie trudnymi żądaniami (takimi jak złożone wyszukiwanie). Celowe użycie serwera „hog” jest znane jako atak typu „odmowa usługi” , co przejawia się w przypadku wielu wirusów , robaków i koni trojańskich . Możliwe jest również, że drażliwy lub mściwy użytkownik komputera ręcznie przeciąży zdalny serwer, rozpętając powódź bzdur .

Boty

Szczególnym przypadkiem jest przypadek uciekającego bota , programu, który został zaprojektowany, aby pomóc w zautomatyzowaniu żmudnego zadania, ale z powodu złego programowania lub słabo zrozumianych okoliczności wymyka się spod kontroli i nieustannie atakuje serwer z dużą szybkością. Częstym przypadkiem jest pająk sieciowy, który zbyt szybko uzyskuje dostęp do zbyt wielu stron na serwerze sieciowym kosztem docelowych odbiorców serwera.

Bibliografia