recientemente descubierto mi servidor MySQL golpea alta de la CPU 90% cuando se simula sobre concurrentes 100-500 hilos solicitarthread_cache_size reduce la CPU y la conexión máxima?
con la configuración predeterminada además siguiente en my.cnf
max_connections = 500 max_allowed_packet = 16M
noto la max_connection puede golpear hasta 500, Threads_created también se puede ir a alta 200-500 y estoy pensando que esto realmente ha causar anormalmente elevado de la CPU
de ahí que en lugar de utilizar la configuración predeterminada i ajustado
innodb_buffer_pool_size = 2G #32bit linux server innodb_log_file_size = 256M innodb_log_buffer_size = 8M innodb_thread_concurrency = 16 innodb_flush_method = O_DIRECT innodb_additional_mem_pool_size = 20M table_cache = 1028 thread_cache_size = 16 key_buffer_size=32M query_cache_size=32M join_buffer_size=1M
Con la misma prueba de carga, la CPU se bajó al 10% y por debajo ... Sin embargo, noto que la conexión máxima nunca llega a 500 más. Ahora es menos de 50 ...
¿Esto es causado por thread_cache_size que he ajustado? por defecto es 0. O hay algo mal en algún lugar ... Me pregunto en ese caso si el servidor mysql está correctamente probado con la conexión máxima. Quiero probar cómo si los subprocesos simultáneos pueden alcanzar max_connections, pero de alguna manera nunca se golpea con la misma cantidad que probé antes. Desde el cambio, nunca llega a los 50 ahora.
¿Alguna idea?
Sé que es demasiado tarde para preguntar, pero ¿cuál era su configuración anterior, es decir, el valor anterior de los parámetros anteriores? – ursitesion