Ресурсоемкость функции str_replace

MIND
На сайте с 08.03.2007
Offline
238
941

Есть необходимость в переработке дизайна, генерируемого на стороне другого сервера. Сделать это можно лишь при помощи функции str_replace. Собственно, так и сделал (~200 вызовов этой функции при генерировании страницы).

Данные нагрузки на сервер очень насторожили. Совпадение или следствие злоупотребления этой функцией?

Key Collector - автоматизированная система анализа семантического ядра (/ru/forum/863504)
grey109
На сайте с 15.06.2005
Offline
180
#1

Следствие. А что мешает переделать дизайн на локальной машине один раз и отказаться от str_replace на сервере?

HC
На сайте с 24.05.2006
Offline
46
#2

MIND,

str_replace() может делать массовые замены одним вызовом - http://ru2.php.net/str_replace

Система управления сайтом HostCMS (http://www.HostCMS.ru) - многосайтовость, множество модулей, обмен с 1С, бесплатная версия. Скидка 40% на систему управления для дилеров (http://www.hostcms.ru/partners/partnership/) и 20% для партнеров-фрилансеров (http://www.hostcms.ru/partners/freelance/).
MIND
На сайте с 08.03.2007
Offline
238
#3

Дело в том, что весь код модуля отдает левый сервер. Моя задача — его уникализация. Как я насильно могу заставить тот сервер отдавать мне мой шаблон? Никак... Вот, кстати, замеры:

время генерации без реплэйса:

0.030556 секунды

с реплэйсом:

0.000816 секунды

Разница ~35-40 раз, но 0.03с — тоже отличный результат, не так ли (посещаемость планируется не ахти)?

MIND добавил 13.04.2008 в 19:28

HostCMS:
MIND,
str_replace() может делать массовые замены одним вызовом - http://ru2.php.net/str_replace

заменяются отдельные куски кода, например, так:

fdsfdfdsf на 545435345435

аа455465 на 4543654е5пп

и т.д.

grey109
На сайте с 15.06.2005
Offline
180
#4

Кэшировать как-то результаты можно? Или посмотри в сторону zend и т.п. ускорителей.

Разница ~35-40 раз, но 0.03с — тоже отличный результат, не так ли (посещаемость планируется не ахти)?

Не ахти - это сколько? А то я полгода назад писал скрипты, думал что посещаемость будет небольшая, потому я не заморачивался с оптимизацией. А сейчас посещаемость выросла, и это дает о себе знать: когда на сайте народ толпиться + 1-2 поисковики индексируют страницы, сервер подтормаживают. Потому пришлось переписывать, оптимизировать код. Общая нагрузка в целом упала, но все равно остается относительно высокой из-за специфики работы сайта.

MIND
На сайте с 08.03.2007
Offline
238
#5

Ну ~40к страниц там. Посещаемость больше 1000 человек точно не будет :).

grey109
На сайте с 15.06.2005
Offline
180
#6
Дело в том, что весь код модуля отдает левый сервер

А что увидит человек, если сервет будет не доступен? ;) Данные ты от сервера получаешь одни и теже для конкретной страницы?

MIND
На сайте с 08.03.2007
Offline
238
#7

Если сервер будет в дауне (чего не будет), то народу придется довольствоваться внутренними ресурсами моего сайта. Проблемы здесь никакой не вижу. Каждая страница уникальная.

Авторизуйтесь или зарегистрируйтесь, чтобы оставить комментарий