PHP eAccelerator и данные в реальном времени - PullRequest
2 голосов
/ 15 сентября 2010

У меня есть это приложение, написанное на PHP, я рассматриваю возможность использования eAccelerator для оптимизации приложения. Моя дилемма в том, что это приложение работает с данными в реальном времени (ежедневно вставляется от 6 до 8 миллионов записей).

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

Ответы [ 2 ]

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

Нет! Из http://eaccelerator.net/ (мой акцент):

eAccelerator - это бесплатный ускоритель и оптимизатор PHP с открытым исходным кодом.Это повышает производительность PHP-скриптов за счет кэширования их в скомпилированном состоянии, так что издержки компиляции почти полностью исключаются .Он также оптимизирует сценарии для ускорения их выполнения.... eAccelerator сохраняет скомпилированные сценарии PHP в общей памяти и выполняет код непосредственно из него.

eAccelerator только оптимизирует и кэширует ваши файлы PHP (таким образом устраняя большую часть обычных накладных расходов при компиляции статических файлов PHP для каждогозапрос).Динамические данные (например, БД, файловая система, удаленные ресурсы) не кэшируются (по крайней мере, не eAccelerator).Следовательно, ваши данные будут по-прежнему «свежими» из запрошенного ресурса.


Если припозднее вам нужно будет кэшировать (некоторые из) данные в реальном времени (делая их не совсем «в реальном времени»), вы можете взглянуть на такие технологии, как Memcached .Это специально разработано " ... для уменьшения количества раз, когда внешний источник данных (например, база данных или API) должен быть прочитан. "

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

если в более поздний момент времени вам необходимо кэшировать (некоторые из них) данные в реальном времени (делая их не совсем «в реальном времени»), вы можете взглянуть на такие технологии, как Memcached.

Вы также можете использовать eAccelerator для этого.Смотрите функции eaccelerator_put () и eaccelerator_get () здесь .

РЕДАКТИРОВАТЬ: Слишком плохо , Эти функции удалены из последней версии eAccelerator 0.9.6.

...