sql >> Databáze >  >> RDS >> Sqlserver

Jak server zpracovává požadavky webových služeb od více klientů

Je to pro obecný koncept, ne pro Android

Obvykle každý z uživatelů odešle HTTP požadavek na stránku. Server přijímá požadavky a deleguje je na různé pracovníky (procesy nebo vlákna).

V závislosti na zadané adrese URL server přečte soubor a odešle jej zpět uživateli. Pokud je soubor dynamický soubor, jako je soubor PHP, soubor se spustí před odesláním zpět uživateli.

Jakmile je požadovaný soubor odeslán zpět, server obvykle po několika sekundách uzavře spojení.

Podívejte se na Jak fungují webové servery

UPRAVIT:

Pro HTTP používá TCP, což je protokol založený na připojení. To znamená, že klienti navazují připojení TCP, zatímco komunikují se serverem.

Více klientů se může současně připojit ke stejnému cílovému portu na stejném cílovém počítači. Server pouze otevírá několik současných připojení.

Apache (a většina ostatních HTTP serverů) má modul pro více zpracování (MPM). To je zodpovědné za přidělení vláken/procesů Apache pro zpracování připojení. Tyto procesy nebo vlákna pak mohou běžet paralelně na svém vlastním připojení, aniž by se navzájem blokovaly. MPM Apache má také tendenci udržovat otevřená „náhradní“ vlákna nebo procesy, i když nejsou otevřena žádná připojení, což pomáhá urychlit následné požadavky.

Poznámka:

Jedním z nejčastějších problémů s multivláknem jsou "závodní podmínky"-- kde vy dva žádosti děláte totéž („závodíte“ o totéž), pokud se jedná o jediný zdroj, jeden z nich vyhraje. Pokud oba vloží záznam do databáze, nemohou oba získat stejné ID – jeden z nich vyhraje. Při psaní kódu tedy musíte být opatrní, abyste si uvědomili, že další požadavky probíhají současně a mohou upravit vaši databázi, zapsat soubory nebo změnit globály.



  1. Upozornění PHP:Spuštění PHP:Nelze načíst dynamickou knihovnu 'pdo_mysql.so'

  2. Vybrat dotaz mysql mezi datem?

  3. Jak monitorovat PostgreSQL běžící uvnitř kontejneru Docker:Část druhá

  4. Rozdíly ve výkonu mezi rovným (=) a IN s jednou doslovnou hodnotou