mod_perl + Catalyst для хостинга

rtyug
На сайте с 13.05.2009
Offline
263
940

нужно прикрутить к серверам mod_perl + Catalyst

проблема: в том что при каждом http запросе, Catalyst полностью перегружает все модули и притормаживает 1-1.5 сек!

как бы исправить, что он не перегружался все время по новой?

тут надо в конфиге что-то поменять?

конфиг основной:


srv0# more /usr/local/etc/apache22/Includes/httpd-perl.conf
# mod_perl

LoadModule perl_module libexec/apache22/mod_perl.so

<IfModule perl_module>
AddHandler perl-script .pl
PerlResponseHandler ModPerl::Registry
</IfModule>

.htaccess


SetHandler perl-script
PerlSendHeader On
PerlRequire /home/h14364/data/www/h14364.srv3.test-hf.ru/startup.pl
#PerlRequire /home/h14364/data/www/h14364.srv3.test-hf.ru/MyApp/lib/MyApp.pm

#PerlSwitches -I/home/h14364/data/www/h14364.srv3.test-hf.ru/MyApp/lib
#PerlModule MyApp
PerlResponseHandler MyApp

startup.pl


use lib qw(/home/h14364/data/www/h14364.srv3.test-hf.ru/MyApp/lib /home/h14364/data/www/h14364.srv3.test-hf.ru/MyApp/lib/-local); 1;

в итого: в отладке видно, что он все время перегружается полностью. как бут-то работает в CGI и в top, видно что грузит CPU сервера

сайт тестовый: http://h14364.srv3.test-hf.ru/

отладка:

[Sun Dec 12 22:04:11 2010] [notice] Apache/2.2.17 (FreeBSD) mod_ssl/2.2.17 OpenSSL/0.9.8n PHP/5.2.15 with Suhosin-Patch mod_perl/2.0.4 Perl/v5.10.1 configured -- resuming normal operations

Subroutine end redefined at /home/h14364/data/www/h14364.srv3.test-hf.ru/MyApp/lib/MyApp/Controller/Root.pm line 92.
[debug] Debug messages enabled
[debug] Statistics enabled
[debug] Loaded plugins:
.----------------------------------------------------------------------------.
| Catalyst::Plugin::ConfigLoader 0.30 |
'----------------------------------------------------------------------------'

[debug] Loaded dispatcher "Catalyst::Dispatcher"
[debug] Loaded engine "Catalyst::Engine::Apache2::MP20"
[debug] Found home "/home/h14364/data/www/h14364.srv3.test-hf.ru/MyApp"
[debug] Loaded Config "/home/h14364/data/www/h14364.srv3.test-hf.ru/MyApp/myapp.conf"
[debug] Loaded components:
.-----------------------------------------------------------------+----------.
| Class | Type |
+-----------------------------------------------------------------+----------+
| MyApp::Controller::Root | instance |
'-----------------------------------------------------------------+----------'

[debug] Loaded Private actions:
.----------------------+--------------------------------------+--------------.
| Private | Class | Method |
+----------------------+--------------------------------------+--------------+
| /privet | MyApp::Controller::Root | privet |
| /default | MyApp::Controller::Root | default |
| /end | MyApp::Controller::Root | end |
| /index | MyApp::Controller::Root | index |
'----------------------+--------------------------------------+--------------'

[debug] Loaded Path actions:
.-------------------------------------+--------------------------------------.
| Path | Private |
+-------------------------------------+--------------------------------------+
| / | /index |
| / | /default |
| /privet | /privet |
'-------------------------------------+--------------------------------------'

[info] MyApp powered by Catalyst 5.80029
[info] *** Request 1 (1.000/s) [60312] [Sun Dec 12 22:16:44 2010] ***
[debug] "GET" request for "privet/sdf" from "193.201.81.18"
[debug] Path is "privet"
[debug] Arguments are "dsfsdf"
[debug]
[info]
[warn]
[error]
[fatal]
[debug] Response Code: unknown; Content-Type: text/html; charset=utf-8; Content-Length: 5665
[info] Request took 0.012458s (80.270/s)
.------------------------------------------------------------+-----------.
| Action | Time |
+------------------------------------------------------------+-----------+
| /privet | 0.000879s |
| /end | 0.000926s |
'------------------------------------------------------------+-----------'

Subroutine end redefined at /home/h14364/data/www/h14364.srv3.test-hf.ru/MyApp/lib/MyApp/Controller/Root.pm line 92.
[debug] Debug messages enabled
[debug] Statistics enabled
[debug] Loaded plugins:
.----------------------------------------------------------------------------.
| Catalyst::Plugin::ConfigLoader 0.30 |
'----------------------------------------------------------------------------'

[debug] Loaded dispatcher "Catalyst::Dispatcher"
[debug] Loaded engine "Catalyst::Engine::Apache2::MP20"
[debug] Found home "/home/h14364/data/www/h14364.srv3.test-hf.ru/MyApp"
[debug] Loaded Config "/home/h14364/data/www/h14364.srv3.test-hf.ru/MyApp/myapp.conf"
[debug] Loaded components:
.-----------------------------------------------------------------+----------.
| Class | Type |
+-----------------------------------------------------------------+----------+
| MyApp::Controller::Root | instance |
'-----------------------------------------------------------------+----------'

[debug] Loaded Private actions:
.----------------------+--------------------------------------+--------------.
| Private | Class | Method |
+----------------------+--------------------------------------+--------------+
| /privet | MyApp::Controller::Root | privet |
| /default | MyApp::Controller::Root | default |
| /end | MyApp::Controller::Root | end |
| /index | MyApp::Controller::Root | index |
'----------------------+--------------------------------------+--------------'

[debug] Loaded Path actions:
.-------------------------------------+--------------------------------------.
| Path | Private |
+-------------------------------------+--------------------------------------+
| / | /index |
| / | /default |
| /privet | /privet |
'-------------------------------------+--------------------------------------'

[info] MyApp powered by Catalyst 5.80029
Subroutine end redefined at /home/h14364/data/www/h14364.srv3.test-hf.ru/MyApp/lib/MyApp/Controller/Root.pm line 92.
[debug] Debug messages enabled
[debug] Statistics enabled
[debug] Loaded plugins:
.----------------------------------------------------------------------------.
| Catalyst::Plugin::ConfigLoader 0.30 |
'----------------------------------------------------------------------------'

[debug] Loaded dispatcher "Catalyst::Dispatcher"
[debug] Loaded engine "Catalyst::Engine::Apache2::MP20"
[debug] Found home "/home/h14364/data/www/h14364.srv3.test-hf.ru/MyApp"
[debug] Loaded Config "/home/h14364/data/www/h14364.srv3.test-hf.ru/MyApp/myapp.conf"
[debug] Loaded components:
.-----------------------------------------------------------------+----------.
| Class | Type |
+-----------------------------------------------------------------+----------+
| MyApp::Controller::Root | instance |
'-----------------------------------------------------------------+----------'
...............................................

[info] MyApp powered by Catalyst 5.80029
[info] *** Request 1 (1.000/s) [60307] [Sun Dec 12 22:17:05 2010] ***
[debug] "GET" request for "privet/lissyara" from "193.201.81.18"
[debug] Path is "privet"
[debug] Arguments are "lissyara"
[debug]
[info]
[warn]
[error]
[fatal]
[debug] Response Code: unknown; Content-Type: text/html; charset=utf-8; Content-Length: 5665
[info] Request took 0.013323s (75.058/s)
.------------------------------------------------------------+-----------.
| Action | Time |
+------------------------------------------------------------+-----------+
| /privet | 0.000949s |
| /end | 0.001043s |
'------------------------------------------------------------+-----------'

как бы исправить, что он не перегружался все время по новой?

тут надо в конфиге что-то поменять?

Спалил тему: Pokerstars вывод WMZ, etc на VISA 0% или SWIFT + Конверт USD/GBP,etc (net profit $0,5 млрд) (https://minfin.com.ua/blogs/94589307/115366/) Monobank - 50₴ на счет при рег. тут (https://clck.ru/DLX4r) | Номер SIP АТС Москва 7(495) - 0Ꝑ, 8(800) - 800Ꝑ/0Ꝑ (http://goo.gl/XOrCSn)
esetnod
На сайте с 16.07.2009
Offline
134
#1

А чем там сами-то хостфуд не в состоянии отладить?

Быстрый хостинг на SSD от $0.99 (http://just-hosting.ru/) | OpenVZ (http://just-hosting.ru/vds.html) и KVM (http://just-hosting.ru/vds-kvm.html) VDS от $7.95
N
На сайте с 06.05.2007
Offline
419
#2

rtyug, из документации http://search.cpan.org/~hkclark/Catalyst-Manual-5.8004/lib/Catalyst/Manual/Cookbook.pod#Shared_memory_for_multiple_apps :

The most important line here is PerlModule MyApp. This causes mod_perl to preload your entire application into shared memory, including all of your controller, model, and view classes and configuration.

Зачем ты ее за комментировал? Может попробуешь убрать?

Я понимаю, что startup.pl может все подгружать. Но раз уж в документации именно такой пример, то лучше следовать ему.

Кнопка вызова админа ()
A
На сайте с 03.04.2008
Offline
53
#3
esetnod:
А чем там сами-то хостфуд не в состоянии отладить?

а не кто не спрашивал.🍿

Подписываемся под минусами не ссым...

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