Я запускаю приложение на AWS эластичный бобовый стебель с php, EC2 и MySQL 5.6 (RDS). В настоящее время существует около 5 тыс. Ударов в минуту, каждое из которых приводит к нескольким дБ-операциям за удар. Я заметил, что когда я делаю изменения в коде или дБ и возобновляю службу, средняя задержка начинается очень низко (диапазон 10 мс), но через несколько часов я вижу внезапный скачок до ~ 200 мс. Я прилагаю несколько снимков экрана с графиком задержки.
Учитывая то, что кодовая база работает в течение нескольких часов с задержкой 10 мс, меня смущает вопрос о том, является ли сам код причиной этой проблемы, поскольку при запуске он кажется нормальным. Со временем я оптимизировал свой код для точной настройки использования ресурсов, вызовов БД и т. Д., И это определенно помогло, но я не могу понять, почему этот резкий скачок в задержке происходит за несколько часов.
Даже когда задержка возрастает, количество подключений или использование процессора практически не меняется.
Где я могу начать / Как я могу решить эту проблему?
Обновление:
Variable_name Value
innodb_stats_auto_recalc ON
innodb_stats_include_delete_marked OFF
innodb_stats_method nulls_equal
innodb_stats_on_metadata OFF
innodb_stats_persistent ON
innodb_stats_persistent_sample_pages 20
innodb_stats_sample_pages 8
innodb_stats_transient_sample_pages 8