GNU/Linux >> Linux Esercitazione >  >> Linux

Soluzione alternativa per "Riprendi tutti gli ascoltatori" del server Web LiteSpeed

Sto usando il server web LiteSpeed. Funziona benissimo se utilizzato con il plug-in LiteSpeed ​​Cache di WordPress. Tuttavia, a volte vedo che il file error.log è riempito con i messaggi di avviso "Riprendi tutti gli ascoltatori".


2019-10-22 14:11:09.999551 [NOTICE] [3490] Resume All Listeners
2019-10-22 14:11:10.493639 [NOTICE] [3490] Resume All Listeners

Ecco alcune statistiche dai registri degli errori.


# grep -c "Resume All Listeners" error.log.2019_10_22
21086
# grep -c "Resume All Listeners" error.log.2019_10_21
483
# grep -c "Resume All Listeners" error.log.2019_10_22.01 
157314

Con una rapida ricerca su Google, sono arrivato alla pagina Wiki di LiteSpeed. Il succo della pagina è il seguente:

  • Questo avviso inizia ad apparire quando viene raggiunto il limite "Max Connections".
  • Quando inizia a verificarsi, il server non servirà poche richieste a intermittenza. Pertanto, non verrai a conoscenza di questo problema a meno che tu non disponga di alcuni script di monitoraggio.
  • Non c'è modo di risolvere questo problema, continuerà a crescere e gradualmente tutti i tuoi siti verranno disattivati.
  • L'unico modo per risolvere questo problema è riavviare il server.

Ho mantenuto le seguenti impostazioni per il mio server web LiteSpeed.

Impostazioni delle connessioni di ottimizzazione del server Web LiteSpeed

Questi sono numeri molto alti e il traffico del mio sito Web non è così tanto da superare questo limite. Tuttavia, a volte vedo che il mio file error.log si sta riempiendo di messaggi di avviso "Riprendi tutti gli ascoltatori".

Indicatori di errore Riprendi tutti gli ascoltatori

  1. Traffico ridotto :Ho utilizzato Google Analytics per tenere traccia del traffico del mio sito web. Ho riscontrato un calo di circa il 20% ogni volta che questo errore inizia a comparire.
  2. Servizi di monitoraggio del sito web :Uso Uptime Robot per monitorare i tempi di inattività dei miei siti web. Se ricevi messaggi intermittenti di inattività per i tuoi siti web ma quando controlli e tutto è a posto, potrebbe essere per questo.
  3. Il sito Web non viene caricato a volte :Se tutto va bene e improvvisamente il tuo sito web non si carica e il problema scompare quando aggiorni o in un paio di minuti, potrebbe essere dovuto a questo errore.
  4. Il contatto dei lettori :JournalDev è un sito Web popolare e molte volte ricevo messaggi dagli utenti che il mio sito Web non viene caricato. È sempre una buona idea controllare rapidamente il registro degli errori del server per vedere se si verifica in modo casuale per alcuni utenti a causa di un errore degli ascoltatori.

Correzione dell'errore Riprendi tutti gli ascoltatori

Sappiamo che l'unica soluzione è riavviare il server. Non possiamo controllare manualmente i server tutto il tempo. Ecco perché ho scritto un semplice script di shell per verificare la presenza di "Riprendi tutti gli ascoltatori" nel file error.log e se supera un determinato valore di soglia, riavvia il server.

Poiché ad ogni riavvio del server viene creato un nuovo file error.log, non dobbiamo preoccuparci dei messaggi di errore precedenti.

Ecco lo script di shell che funziona per me.

lsws_restarts_script.sh


#!/bin/bash

result=`/usr/bin/grep -c "Resume All Listeners" /usr/local/lsws/logs/error.log`
date_time=`date`

echo $date_time $result >> /root/scripts/lsws_restarts_script_logs.log 

if [ $result -gt 100 ]
then
	echo $date_time "Restarting LSWS Server" >> /root/scripts/lsws_restarts_script_restart_logs.log
	restart_msg=`/usr/local/lsws/bin/lswsctrl restart`
	sleep 5
	echo $date_time $restart_msg >> /root/scripts/lsws_restarts_script_restart_logs.log
else
	echo "All Seems Good" >> /root/scripts/lsws_restarts_script_logs.log
fi

L'ho impostato per l'esecuzione ogni 2 minuti usando il comando crontab.


*/2 * * * * /root/scripts/lsws_restarts_script.sh > /dev/null

Nota :Lo script funziona bene sul mio server Ubuntu. Se stai utilizzando un altro sistema operativo, potresti dover apportare lievi modifiche per farlo funzionare.

Conclusione

Ora, non sono preoccupato che LiteSpeed ​​non risponda a causa dell'esaurimento della connessione. Lo script eseguirà i passaggi necessari per riavviare il server. Se trovi utile lo script, condividilo anche con gli altri.


Linux
  1. Come configurare un server web Apache

  2. Trova i 10 principali indirizzi IP che accedono al tuo server Web Apache

  3. Impossibile ottenere l'APEI dell'intervallo di indirizzi del registro errori [fissare]

  4. Windows Server 2012 in tutto It's Awesomeness

  5. Nozioni di base su Vhost

Come ospitare un sito Web su NGINX Web Server

Come installare Hiawatha Web Server in RHEL 8

Come installare il server Web LiteSpeed ​​in WHM/cPanel con Centos 7.x?

Come cambiare il server Web da Apache a LiteSpeed ​​su WHM?

500 Errore del server

Come configurare un server domestico