MySQL постепенно разлагается ...? - PullRequest
0 голосов
/ 19 января 2010

У меня есть скрипт Zend / PHP, который считывает строки из таблицы в одной БД MySQL, преобразует данные и добавляет строки во вторую таблицу в другой БД MySQL.

Поскольку я отлаживаю пчелуСценарий, он все меньше и меньше продвигается, прежде чем выдать ошибку.Прямо сейчас, после добавления 60 строк, он выходит.В начале это было добавление 300+ строк.Исходные данные не изменились.

У меня есть попытка ... ловить блоки вокруг каждой унции кода, и я не получаю ничего, кроме типичной ошибки "сломанного" стиля - возможно, что-то бросаетошибка в Zend Framework, которая не перехватывается, но я не понимаю отношения к добавляемым строкам.

Буквально пошло от добавления 83 строк к 80 от 74 до 63 к 60 ...без изменений кода между ними.Я опустошил целевую базу данных между попытками.Я оптимизировал и очистил базу данных, и я перезапустил MySQL, я перезапустил ВСЕЙ ЧЕРТОВЫЙ СЕРВЕР ... и он придерживается того же паттерна.или попробовать?

Ответы [ 2 ]

0 голосов
/ 15 сентября 2010

Проблема оказалась какой-то утечкой памяти в MySQL - убедив их перейти на версию более 21-го века, проблема исчезла. Мы проверили утечку памяти, прежде чем сделать это.

0 голосов
/ 19 января 2010

Должны быть данные, накапливающиеся где-то на диске (или на другой машине, которую вы не рассматриваете), иначе вы не увидите замедления при перезапусках. Я бы предположил, что утечка памяти поглотила виртуальную машину и постепенно вынуждала машину к интенсивной перестановке, замедляя работу, но это, опять же, не должно сохраняться при перезагрузках.

Предполагая, что вы не сталкиваетесь с какой-то непонятной ошибкой HW, например, с остановленным охлаждением на процессоре Pentium 4 или новее, в результате чего сам процессор постепенно нагревается и замедляется в ответ, что делает ваш скрипт способным выполнять меньше и меньше работы, пока не наступит ограничение по времени выполнения скрипта, настроенное в PHP.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...