Como o Apache processa várias solicitações por vez?

3

Se 10 requisições atingem o Apache, elas são processadas uma por uma, então quando o R3 termina, ele começa a rodar o R4, ou ele atira 10 processos / threads / qualquer coisa e são resolvidos simultaneamente?

Agora, alguns antecedentes: Eu tenho um script PHP que leva até dois minutos para fazer alguns processos. Minha pergunta é: enquanto um cliente está esperando por esses 2 minutos, todas as outras solicitações de clientes estão sendo processadas? Ou também esperando que esta acabe?

A propósito, se houver solicitação simultânea, como posso lidar com eles? Digamos que coloque um limite neles. Ou um limite de recursos consumidos. Por exemplo, eu quero que o servidor use seu desempenho de 80% em atender a webapp e apenas 20% para essas operações longas, porque não tenho pressa em finalizá-las.

Eu não sei se isso importa, mas é tudo em PHP.

    
por Vicenç Gascó 28.09.2012 / 11:28

1 resposta

6

O servidor manipula solicitações simultaneamente até um limite definido no arquivo de configuração. Veja estas diretrizes:

MinSpareThreads
MaxSpareThreads
ThreadsPerChild
MaxClients
MaxRequestsPerChild
    
por 28.09.2012 / 11:40