Back to Question Center
0

Semalt MEGET højt sidelastningstid

1 answers:
February 7, 2018

Efter meget forskning har jeg måske fundet løsningen. Hvis jeg er korrekt, var det et apache config problem. Specielt "ThreadsPerChild" direktivet. Se http: // httpd. apache. org / docs / 2. 2 / platform / vinduer. html

Da Apache for Windows er multithreaded, bruger den ikke enseparat proces for hver anmodning, som Apache kan på Unix. I stedetder er normalt kun to Apache-processer, der kører: en forældersproces,og et barn, der håndterer anmodningerne. Inden for barnet behandler hveranmodningen håndteres af en separat tråd.

ThreadsPerChild: Dette direktiv er nyt. Det fortæller serveren hvor mangetråde den skal bruge. Dette er det maksimale antal forbindelser, somserveren kan håndtere med det samme, så sørg for at sætte dette nummer højt noktil dit websted, hvis du får mange hits. Den anbefalede standard erThreadsPerChild 150, men dette skal justeres for at afspejle den størsteForventet antal samtidige forbindelser til at acceptere.

Det viser sig, at dette direktiv slet ikke er angivet i min config og dermed standardiseret til 64. Jeg bekræftede dette ved at se antallet af tråde for den anden httpd. exe proces i task manager. Da serveren ramte mere end 64 forbindelser, måtte de overskydende anmodninger blot vente på en tråd for at åbne op. Jeg har tilføjet ThreadsPerChild 150 i min httpd. conf.

Desuden aktiverede jeg apache status modulet http: // httpd. apache. org / docs / 2. 2 / mod / mod_status. html

som blandt andet gør det muligt for en at se det samlede antal aktive forespørgsler på serveren på et hvilket som helst tidspunkt. Umiddelbart kunne jeg se pigge med op til 80 aktiv anmodning. Tiden vil fortælle, men jeg er overbevist om, at dette vil løse mit problem. Indtil videre, 30 timer uden en hik.