Улучшите скорость с помощью memory+eval или используйте обычный файл

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

У меня высокая скорость чтения в моей файловой системе. Прямо сейчас мы используем обычный файл PHP. Интересно, смогу ли я кэшировать эти файлы в Memcache, а затем выполнить оценку кода, если это будет быстрее, чем позволить этим файлам интерпретироваться.

Так что лучше иметь memcache + eval или обычную интерпретацию php. Я думаю, что одним из решений может быть tempfs, но я еще не использовал его.


person stunti    schedule 29.05.2009    source источник


Ответы (2)


Я считаю, что APC — это решение, которое вы ищете, поскольку оно выполняет кэширование байт-кода за вас.

person Jordan S. Jones    schedule 29.05.2009

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

Чтобы уменьшить FSreading, попробуйте объединить множество включений в 1 lib-файл. Вы можете написать сценарий для объединения этих групп для производства только при экспорте в репозиторий (потому что тяжело поддерживать большой файл). То есть my.lib.inc содержит все включения при разработке программного обеспечения, а при экспорте заменяется объединенным содержимым из всех файлов вместо их включения.

Вы можете использовать что-л. например, APC, nginx и т. д. для кэширования скриптов и статического контента. Вместе эти улучшения должны помочь.

person Jet    schedule 29.05.2009