-
-
Save aeciojr/4fb40b951d55b61b99d2 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
#!/bin/bash | |
echo -e "\033[33;1;34m [*] \033[0m \033[33;1;32m Calculando MaxClients dividindo maior Apache Thread pela memoria livre \033[0m"; | |
if [ -e /etc/debian_version ]; then | |
APACHE="apache2" | |
elif [ -e /etc/redhat-release ]; then | |
APACHE="httpd" | |
fi | |
APACHEMEM=$(ps -aylC $APACHE |grep "$APACHE" |awk '{print $8'} |sort -n |tail -n 1) | |
APACHEMEM=$(expr $APACHEMEM / 1024) | |
SQLMEM=$(ps -aylC mysqld |grep "mysqld" |awk '{print $8'} |sort -n |tail -n 1) | |
SQLMEM=$(expr $SQLMEM / 1024) | |
echo -e "\033[33;1;34m [*] \033[0m \033[33;1;32m Parando $APACHE para calcular a quantidade de memoria livre \033[0m"; | |
/etc/init.d/$APACHE stop &> /dev/null | |
TOTALFREEMEM=$(free -m |head -n 3 |tail -n 1 |awk '{free=($4); print free}') | |
TOTALMEM=$(free -m |head -n 2 |tail -n 1 |awk '{total=($2); print total}') | |
SWAP=$(free -m |head -n 4 |tail -n 1 |awk '{swap=($3); print swap}') | |
MAXCLIENTS=$(expr $TOTALFREEMEM / $APACHEMEM) | |
MINSPARESERVERS=$(expr $MAXCLIENTS / 4) | |
MAXSPARESERVERS=$(expr $MAXCLIENTS / 2) | |
echo -e "\033[33;1;34m [*] \033[0m \033[33;1;32m Iniciando $APACHE novamente... \033[0m"; | |
/etc/init.d/$APACHE start &> /dev/null | |
echo -e "\033[33;1;34m [*] \033[0m \033[33;1;32m Total memoria: \033[0m" $TOTALMEM; | |
echo -e "\033[33;1;34m [*] \033[0m \033[33;1;32m Memoria livre: \033[0m" $TOTALFREEMEM; | |
echo -e "\033[33;1;34m [*] \033[0m \033[33;1;32m Quantidade de memoria virtual (swap) que esta sendo usada: \033[0m" $SWAP; | |
echo -e "\033[33;1;34m [*] \033[0m \033[33;1;32m Tamanho da maior Apache Thread: \033[0m" $APACHEMEM; | |
echo -e "\033[33;1;34m [*] \033[0m \033[33;1;32m Quantidade de memoria ocupanda pelo MySQL: \033[0m" $SQLMEM; | |
if [[ SWAP > TOTALMEM ]]; then | |
ERR=" [+] A memoria virtual esta com valor muito alto!"; | |
else | |
ERR=" [+] A memoria virtual esta OK!"; | |
fi | |
echo "$ERR" | |
echo -e "\033[33;1;34m [*] \033[0m \033[33;1;32m Total memoria livre: \033[0m" $TOTALFREEMEM; | |
echo -e "\033[33;1;34m [*] \033[0m \033[33;1;32m O valor para MaxClients deve ficar em torno de: \033[0m" $MAXCLIENTS; | |
echo -e "\033[33;1;34m [*] \033[0m \033[33;1;32m O valor para MinSpareServers deve ficar em torno de: \033[0m" $MINSPARESERVERS; | |
echo -e "\033[33;1;34m [*] \033[0m \033[33;1;32m O valor para MaxSpareServers deve ficar em torno de: \033[0m" $MAXSPARESERVERS; |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment