da.phhsnews.com


da.phhsnews.com / Hvordan kan webservere lytte til nye henvendelser?

Hvordan kan webservere lytte til nye henvendelser?


Når du lærer om webservere og hvordan de virker, kan du være nysgerrig, om de konstant lytter efter anmodninger, eller hvis de venter, indtil de modtager en anmode om at gå i aktion. Med det i tankerne har dagens SuperUser Q & A-indlæg svarene for at tilfredsstille en læsers nysgerrighed.

Dagens Spørgsmål og Svar-sessions kommer til vores side med SuperUser-en underafdeling af Stack Exchange, en community-driven gruppe af Q & A-websteder.

Skærmbillede med tilladelse til xmodulo / Linux-skærmbilleder (Flickr).

Spørgsmålet

SuperUser-læseren user2202911 vil vide, hvordan webservere lytter til nye anmodninger:

Jeg forsøger at forstå detaljerne om "dybere niveau" af hvordan webservere fungerer. Jeg vil gerne vide, om en server, f.eks. Apache, vedvarende poller for nye anmodninger, eller hvis det virker ved en slags afbrydelsessystem. Hvis det er en afbrydelse, hvad gnister forstyrrelsen? Er det netværkskortdriver?

Hvordan lytter en webserver efter nye anmodninger?

Svaret

SuperUser-bidragyder Greg Bowser har svaret for os:

Det korte svar er en slags afbrydelsessystem . I det væsentlige bruger de blokering af I / O, hvilket betyder, at de sover (blok), mens de venter på nye data.

  1. Serveren opretter et lytteudtag og blokerer derefter, mens de venter på nye forbindelser. I løbet af denne tid sætter kernen processen i en afbrydelig søvn tilstand og kører andre processer. Dette er et vigtigt punkt; At have procesundersøgelsen løbende vil spilde CPU-ressourcer. Kernen kan bruge systemressourcerne mere effektivt ved at blokere processen, indtil der er arbejde for det.
  2. Når der kommer nye data på netværket, udsender netværkskortet en afbrydelse.
  3. At se, at der er en Afbrydelse fra netværkskortet, kernen, via netværkskortdriveren, læser de nye data fra netværkskortet og gemmer det i hukommelsen. (Dette skal gøres hurtigt og håndteres generelt inde i afbryderhåndtereren.)
  4. Kernen behandler de nyligt ankomne data og forbinder det med en stikkontakt. En proces, der blokerer på stikkontakten, markeres løbende, hvilket betyder, at det nu er berettiget til at køre. Det kører ikke nødvendigvis øjeblikkeligt (kernen kan beslutte at køre andre processer endnu).
  5. Kernen vil i sin fritid vække den blokerede webserverproces. (Da det nu kan løbes.)
  6. Webserverprocessen fortsætter med at udføre som om der ikke er tid. Dens blokering af systemopkald vender tilbage, og det behandler nye data. Gå derefter til trin 1.

Har du noget at tilføje til forklaringen? Lyde af i kommentarerne. Vil du læse flere svar fra andre tech-savvy Stack Exchange brugere? Se hele diskussionsgruppen her.


Sony skal opmuntre dig til at bruge

Sony skal opmuntre dig til at bruge "Hvilemodus" på din PlayStation 4 i stedet for at slukke for den helt. Hvilestilstand er lidt som sovemodus på din pc - den går i en lav-strøm-tilstand i stedet for at slukke helt, så du kan komme til dine spil hurtigere, når du vågner op. Den eneste ulempe ved at bruge Hvilemodus er, at den bruger mere energi end at slukke for din PS4 - men hvor meget mere og hvor meget koster det?

Hvad er hviletilstand? RELATERET: Skal du lukke, sove eller dvale din bærbar computer? I hvilemodus slukker din PlayStation 4 ikke helt. Når du tænder det igen, tændes det om et sekund eller to i stedet for at gå igennem en 30 sekunders eller længere opstartsproces. Det kan downloade spilopdateringer og operativsystemopdateringer i baggrunden, så dine spil er altid up-to-date.

(how-to)

Sådan bruger du Microsoft Office's indbyggede udklipsholder

Sådan bruger du Microsoft Office's indbyggede udklipsholder

Din computers "udklipsholder" er, hvor indhold, som du klipper eller kopierer, midlertidigt er gemt. Microsoft Office har sit eget udklipsholder, men det er mere kraftfuldt. Windows-udklipsholderen gemmer kun det sidste emne, du kopierede. Kontorets udklipsholder gemmer imidlertid op til 24 tekst- og grafikpunkter fra Office-dokumenter og andre programmer.

(how-to)