|
|
|
| Привет. есть такая проблема: на сайте выполняется скрипт, минуты две. то есть там сильная нагрузка на mysql, идет много инсертов. во время выполнения скрипта, тормозят другие скрипты, даже те, которые не работают с этой БД. подскажите, в какую сторону мне копать, чтобы настроить адекватную работу сайта? такая ситуация в настройках апача или mysql? На какие параметры надо обратить внимание, чтобы была адекватная параллельная работа всех скриптов? Таблицы в mysql - myisam. | |
|
|
|
|
|
|
|
для: Enter
(11.04.2014 в 16:45)
| | Когда идет вставка в MyISAM таблицу, она блокируется полностью и для всех. Поэтому и происходит зависание. Если требуется интенсивная запись, рассмотрите использование альтернативных движков, например, InnoDB, у которой блокировка не на уровне таблицы, а на уровне строк. Только имейте в виду, что InnoDB настраивается совершенно другим набором директив, отличных от MyISAM, более того, использует альтернативный пул памяти. Т.е. при совместном использовании памяти потребуется больше, в худшем случае в два раза.
Если вариант отказа от MyISAM не подходит, посмотрите в строну сегментирования - чем меньше будут куски, из которых состоит MyISAM таблица, тем быстрее в неё будет идти запись. | |
|
|
|
|
|
|
|
для: cheops
(12.04.2014 в 13:14)
| | Спасибо за ответ. Я потому и выбрал myisam, чтобы меньше памяти ел. Поэкспериментирую с InnoDB. | |
|
|
|
|
|
|
|
для: cheops
(12.04.2014 в 13:14)
| | Все равно такое продолжается. данные небольшие вносятся, но все равно, даже, где нет соединений с БД, происходят тормоза.
Поможет ли добавление модуля prefork? Чтобы были параллельные потоки. | |
|
|
|