Большие инклуды, их оптимальное размещение...

Voyager2K

Новичок
Большие инклуды, их оптимальное размещение...

Вот, задался таким вопросом : куда можно девать , к примеру, языковый файл в скрипте.
То есть, в наличие, допустим, имеется скрипт с поддержкой двухя языков рус и англ. В самих шаблонах для вставки текста содержатся метки, которые заменяются данными из подгруженого языкового файла. Если этот лэнг-файл будет будет весить под 100-200 кб, то это же сколько мароки(в плане производительности) будет при каждом открытии страницы грузить весь файл снов с диска. Есть ли способ оптимизировать это дело т.е. как-то поместить такие вещи в оперативку и не убирть их оттуда.... может как-то как библиотеку(если возможно) php подключить(первоначально создав) иль еще как ?
Выше привел пример с языковыми инклудами, но тот же самый вопрос действителен и к остальным инклудам (шабоны,функции).
Будет ли лучше размещать все это в библиотеке (опять, если все же это реализуемо и хоть немного оправдно) в случаях с сервером с очень ограниченным числом сайт/сервисов - несколько штук.
 

confguru

ExAdmin
Команда форума
Если юзаешь что-то типа смарти, то можешь при компиляции шаблонов сделать так чтоб подставлялся нужный язык, соотвественно у кешей смарти нужно добавить ключ ($lang_id)
 

Steamroller

Новичок
Voyager2K eaccelerator например поставить можно - будет у тебя этот файл в 200кб в памяти всегда жить уже распарсенный (он правда уже побольше 200кб займет тогда).

-~{}~ 03.12.05 22:44:

Это если именно инклюдится, а если открывается скриптом и оттуда что-то достается - то надо через file_get_contents делать... А ОС уже разберется, что к чему, и кого постоянно в памяти держать если есть необходимость.
 

Sirius

PHP+MySQL=LOVE
Делай два файла - с общими часто повторяющимися словами и фразами, и второй конкретно для файла который открывается. Два файла не будут много весить - два инклуда лучше заменить require_once. Об остальном должна думать ОС и ПХП имхо - файловые операции глубоко копать на пхп не стоит.
 

CCCP_MOCKBA

Новичок
Хранить в БД, и перед выводом каждой страницы читать из БД необходимое кол-во лэнг-переменных, и парсить
 

Voyager2K

Новичок
Честно говоря о таком варианте как eaccelerator раньше не хадумывался из-за малой моей проинформированности в этой области. eaccelerator - мне кажется теперь оптимальным решением , ибо на сервее будет находиться всего-лишь несколько сайтов и откомпилированные все испольняемые скрипты с легкостью поместятся в оперативку т.е. это даст огромный прирост.
Вот только жалко там нельзя, или я не заметил, ставить в конфиге обновление архива бинарников не путем проверки на их изменения при каждом запросе, а каждый день или же по команде. А то при залитие скриптов, опять же как я понял, прейдется перезапускать сервак для новго перепрочтение php.ini
 

Gas

может по одной?
А то при залитие скриптов, опять же как я понял, прейдется перезапускать сервак для новго перепрочтение php.ini
перезапускать сервак не нужно и при чём тут php.ini?
AFAIK кеш сбросить можно через web-интерфейс, который идёт вместе с eAccelerator.
 

Mosik

Новичок
Re: Большие инклуды, их оптимальное размещение...

На каждый язык держи свой набор шаблонов
 

Voyager2K

Новичок
перезапускать сервак не нужно и при чём тут php.ini?
AFAIK кеш сбросить можно через web-интерфейс, который идёт вместе с eAccelerator.
А хотелось бы дабы после внесения обновления в скрипт обновились отинтерпритированные версии только тех файлов, что были изменены.... и дабы не приходилось лазить вручную чистить все это дело.

php.ini при том, как я понимаю, для обновления кеша акселератора нужно врубить опцию проверки изменения скрипта.... а потом опять вырубить.
 

Gas

может по одной?
Имхо включи "опцию проверки изменения скрипта" и не парься.
К тому же у тебя есть данные подтверждённые тестами насколько процентов падает производительность при включении этой опции? Если данных нет, то и сомнений никаких не должно быть.
 
Сверху