Forum Webscript.Ru
Программирование => Perl => Тема начата: Mick11 от 27 Сентября 2004, 22:24:26
-
Привет всем, проблема такая,
Есть огромный скрипт движка, который в силу своей огромности медленно взлетает.
Возможно ли откомпилоровать важные его части в бинарный файл, например большие подпрограммы с регулярными выражениями и вызывать их из перлового исходника посредством операторов типа do или require, и тем и с другим я уже попробовал, ошибка не выдаеться но и ничего не происходит...
Чувсвую, что есть какойто другой способ.
спасибо
-
а вариант с mod_perl не подходит?
-
Покупной хостинг, mod_perla в местном Apache нет, переезд в ближайшее время не возможен
-
можно модуль на C переписать :) и вызывать его из perl
-
Об чем и речь, каким образом вызывать?
-
Mick11
Компиляцией скорость ты практически не увеличишь...
Покупной хостинг, mod_perla в местном Apache нет,
Что за бред!?
Либо тебе откровенно парят мозги хостеры, либо ты с ними и не связывался...
Green Kakadu
можно модуль на C переписать и вызывать его из perl
не лучший вариат...
уж лучше все на С переписать...
-
Mick11
Есть огромный скрипт движка, который в силу своей огромности медленно взлетает.
Может стоит подумать над оптимизацией кода?
-
Все уже оптимизировано до невозможности...
с хостерами связывался, Apache собран без mod_perl это факт...
-
с хостерами связывался, Apache собран без mod_perl это факт
Не компетенция хостера... Точнее того кто собирал апачь... У меня бы даже рука не поднялась Апачь без mod_perl собрать... но не суть...
Все уже оптимизировано до невозможности...
Ты на своем движке вибрации винтовых завихрений винта поводной лодки расчитываешь? Что он у тебя даже после невозможной оптимизации логает... :)
С++:
Что бы тебе подсказать как этого зверя приручать ты хоть на пальцах объясни какие приложения кроме Апача ты используешь в своем движке?
-
Движек под большой информационный проект, куски пользовательской части можно посмотреть www.stoletie.ru/news (http://www.stoletie.ru/news)
а заодно оценить время сборки страниц.
Технология самая простая perl+mySql через DBI еще крутится image::magic и прочее типа Mime::Lite
Страницы создаються из шаблонов с помощью регулярных выражений, все запросы идут через mod_rewrite, хорошо хоть что он есть))
Проблема в том, что каждый материал обладает кучей побочной инфы ссылки по теме, сюжет в развитии, база по авторам и пр, которую надо по ходу дела извлекать из базы.
Никогда прежде не сталкивался с проблемой компиляции perl кода, вчера попробовал через perlcc глючит страшно, но насколько я знаю альтернативы нет.
Переписывать все на С++ умру, да и времени нет.
Похоже придеться обзаводиться собственным каналом и сервером, это едиственный выход.
-
Mick11
Вопросы по оптимизации:
1. Организован постоянный конект к БД?
2. Регулярные выражения: Быстрые или просто делают свою работу?
3. Неужели хостеры на отрез отказывають ставить mod_perl?
Похоже придеться обзаводиться собственным каналом и сервером, это едиственный выход.
С чего ты решил что это решит твою проблемму? :)
-
Нет, коннект при каждом запросе к базе,
создание selecta, коннект к базе, ответ переменную, finish
регулярные выражения вида ~s/что то там/ на другое/g;
на отрез, я у них две недели добивался image::magic c поддержкой фонтов поставить, вместо этого дали shell теперь все сам(((
-
Mick11
Ну вот видишь оптимизировать всё же есть что... :)
Итак итоги:
1. Организовать постоянный конект к БД.
2. Поработать над RegEx.
3. Если они тебе дали шел, в чем тогда проблемма? подрубай mod_perl! если шел конечно рутовый... :)
-
м-дя, тут наверное постоянный коннект к базе помог бы
а для чего регекспы - шаблоны обрабатывать?
+ а воз-ть статики есть или все генерится заново при каждом просмотре.
2commander как сделать постоянный коннект без Apache::DBI то бишь mod_perl?
-
Движек под большой информационный проект, куски пользовательской части можно посмотреть http://www.stoletie.ru/news
прикольный мне понравилось то что я увидел :) и тормозов особо не ощутил. правда я на модеме +посетителей нет.
-
Можно узнать что за хостер такой ? что бы не связываться с такими ...