ivankin
Новичок
Какие таймауты нужны mysql, что бы apache не уходил в swap.
Проект на 20 000 хостов в день и 300 000 хитов. Нагрузка на mysql - 150 запросов в секунду. Оперативная память - 2Гб.
Основные таблицы - около 200К записей. В день 2К инсертов и апдейтов.
При пиковой нагрузке происходит следующее - mysql занимает 30%, остальное занимает apache, потом apache сваливается в swap. При этом в mysql в процессах с сотню select со временем выполнения 30-300 секунд и парочка insert|update, которые это все залочили.
В настройках mysql стоит
max_connections=300
net_read_timeout=12
net_write_timeout=20
wait_timeout=30
interactive_timeout=30
Вопрос. Почему mysql ждет эти запросы и выстраивает apache в очередь, а не возвращает ошибку?
Проект на 20 000 хостов в день и 300 000 хитов. Нагрузка на mysql - 150 запросов в секунду. Оперативная память - 2Гб.
Основные таблицы - около 200К записей. В день 2К инсертов и апдейтов.
При пиковой нагрузке происходит следующее - mysql занимает 30%, остальное занимает apache, потом apache сваливается в swap. При этом в mysql в процессах с сотню select со временем выполнения 30-300 секунд и парочка insert|update, которые это все залочили.
В настройках mysql стоит
max_connections=300
net_read_timeout=12
net_write_timeout=20
wait_timeout=30
interactive_timeout=30
Вопрос. Почему mysql ждет эти запросы и выстраивает apache в очередь, а не возвращает ошибку?