У меня есть один проект Codeigniter, который включает в себя одну «дорогостоящую» синхронизацию. В основном я подключаюсь к удаленному серверу (работает, вероятно, CentOS, но все, что я знаю) через OCI8 в базу данных Oracle, собирает около 20 000 строк, а затем обновляет локальную базу данных MySQL.Проблемы с настройкой Codeigniter и Apache
Эта синхронизация длится около 20ihs минут (да, MySQL может быть более оптимизирован, а что нет), но это еще не вопрос, что я в настоящее время имеющий ...
я выделенный сервер с двумя Xeon и 16 Gig of ram, CentOS x64, Apache 2.2.15, PHP 5.6.21 и MySQL версии 5.6.30.
Теперь с обработчиком Apache 2 и стандартным PREFORK MPM эта синхронизация работает по назначению.
Если я оставляю обработчик Apache 2 (mod_php, я полагаю) и изменяю MPM на WORKER или EVENT, эта синхронизация начинается, и PHP выплескивает белый экран смерти ни с чем в файлах журналов.
Если я переключаюсь на fcgi и EVENT или WORKER MPM, начинается синхронизация, и примерно через 2 минуты это дает мне: «Шлюз не получил своевременного ответа от восходящего сервера или приложения».
Учтите, что его не соединение между серверами возникает с момента переключения на Apache 2.0 Handler и PREFORK, он работает по назначению.
Codeigniter версия 2.1.0 (да, я знаю, что это было давно в прошлом, чтобы обновить, только что унаследованный проект, и я не совсем понимаю, были ли какие-то изменения в файлах CORE, и парень «хорошо работает» , не это».
Любой ключ или связь с подобным вопросом более высокой оценкой.
заранее спасибо
я действительно интересно, почему вы хотите Świt ch из Prefork - который работает - другому? Я имею в виду, что это не объясняет, почему это работает, а другое не ... – sintakonte
Поскольку я использую сайт SSL и из того, что я прочитал здесь, как принятый ответ, должно быть довольно хорошо, что нужно делать http: // serverfault.com/questions/383526/how-do-i-select-which-apache-mpm-to-use Кроме того, поскольку Prefork MPM использует несколько дочерних процессов с одним потоком, каждый процесс обрабатывает одно соединение за раз. Работник MPM использует несколько дочерних процессов со многими потоками. Каждый поток обрабатывает одно соединение за раз.Это должно быть проще в оперативной памяти, так как он будет порождать новый процесс по запросу ... Все основываясь на том, что я читал онлайн – Kosta