Buenas a todos,
tengo problemas con mi server. Hoy hemos cambiado la página web, está basado en un oscommerce.
Pues bien, a cabo de unas horas de funcionar sin problemas, la página se ha ralentizado de tal forma que no se podía trabajar.
De media tenemos unas 1000 visitas diarias en todo nuestro sitio. Si bien, hace poco incluimos mas productos ( unos 35 días ), en total disponemos de unos 45000. Tuvimos que crear mas campos par albergar mas imágenes ( product_imageX ), hasta un total de 10. Esto lo creamos en la misma tabla "products".
Bueno, el problema lo hemos visto porque al hacer un top via SSH el proceso mysql trabajaba al 100% todo el rato, y si reiniciábamos el proceso, funcionaba durante unos minutos y luego dejaba de funcionar.
Hemos pasado un fsck y se han reparado todos los errores, y también hemos cambiado los parametros del my.conf.
Aquí las características de la maquina:
Quad-Core AMD Opteron(tm) Processor 2344 HE con CentOS.
4GB RAM
Apache/ 2.2.3
MySQL/ 5.1.50
PHP/ 5.2.14
Y aqui el archivo "my.cnf" del servidor:
[mysqld]
bind-address=127.0.0.1
set-variable=local-infile=0
datadir=/var/lib/mysql
socket=/var/lib/mysql/mysql.sock
user=mysql
# Default to using old password format for compatibility with mysql 3.x
# clients (those using the mysqlclient10 compatibility package).
old_passwords=1
# Disabling symbolic-links is recommended to prevent assorted security risks;
# to do so, uncomment this line:
# symbolic-links=0
[mysqld_safe]
log-error=/var/log/mysqld.log
pid-file=/var/run/mysqld/mysqld.pid
[mysqld]
max_allowed_packet = 256M
sort_buffer_size = 512M
max_connections=500
query_cache_size = 512M
query_cache_limit = 512M
query-cache-type = 2
table_cache = 80
thread_cache_size=8
key_buffer_size = 512M
read_buffer_size=64M
read_rnd_buffer_size=64M
myisam_sort_buffer_size=64M
innodb_flush_log_at_trx_commit=2
innodb_buffer_pool_size=700M
innodb_additional_mem_pool_size=20M
Lo mas seguro es que tenga mal configurado algún parámetro, porque hasta ahora me funcionaba todo bien. Además las consultas que hago siempre las cierro.
Ah, y se me olvidaba, aquí os cuelgo una pantalla de "top", parece que coje mucha memoria virtual y muy poca de física. Es como si se "colapsara" porque tiene poca memoria asignada. Puede ser ?
top - 00:48:13 up 11 min, 1 user, load average: 1.18, 1.03, 0.59
Tasks: 153 total, 1 running, 152 sleeping, 0 stopped, 0 zombie
Cpu(s): 25.1%us, 1.9%sy, 0.0%ni, 65.0%id, 8.0%wa, 0.0%hi, 0.0%si, 0.0%st
Mem: 4150292k total, 1177840k used, 2972452k free, 19408k buffers
Swap: 1052248k total, 0k used, 1052248k free, 341896k cached
PID USER PR NI VIRT RES SHR S %CPU %MEM TIME+ COMMAND
2563 mysql 18 0 2007m 162m 5124 S 100.0 4.0 7:32.64 mysqld
3107 clima 15 0 8912 3564 2552 S 0.7 0.1 0:00.02 in.proftpd
513 root 10 -5 0 0 0 S 0.3 0.0 0:00.15 kjournald
2036 root 15 0 1816 576 476 S 0.3 0.0 0:00.06 syslogd
2317 root 15 0 6948 1804 1424 S 0.3 0.0 0:00.04 master
3106 root 15 0 2428 1036 796 R 0.3 0.0 0:00.03 top
3110 postfix 15 0 8796 3428 2772 S 0.3 0.1 0:00.01 smtpd
3118 postfix 15 0 8820 3272 2660 S 0.3 0.1 0:00.01 smtpd
1 root 15 0 2160 640 556 S 0.0 0.0 0:00.74 init
2 root RT -5 0 0 0 S 0.0 0.0 0:00.00 migration/0
3 root 34 19 0 0 0 S 0.0 0.0 0:00.00 ksoftirqd/0
Gracias!
Un saludo!