По состоянию на версию 1.21 это экспериментальная функция!!!
Mojolicious — программный каркас, предназначенный для создания веб-приложений на языке Perl с использованием парадигмы модель-вид-контроллер.
В данном случае Mojolicious используется как демон процесс для REST API. Скорость ответа REST API ускоряется в несколько раз, если использовать демона Mojolicious.
Установка с CPAN
cpan install Mojolicious::Lite |
Включение apache2 модулей
a2enmod headers a2enmod proxy a2enmod proxy_http service apache2 restart #или другая команда в зависимости от Вашей ОС |
Настройка apache abills_httpd.conf. Нужно добавить следующий код в блок <VirtualHost
<Proxy *>
Order deny,allow
Allow from all
</Proxy>
ProxyRequests Off
ProxyPreserveHost On
ProxyPass /api/ http://localhost:3000/ keepalive=On
ProxyPassReverse /api/ http://localhost:3000/
RequestHeader set X-Forwarded-HTTPS "0"
ProxyTimeout 1000 |
в качестве примера приведен демо ABillS
$conf{BILLING_URL}='https://demo.abills.net.ua:9443/'; |
Перед запуском продакшн демона, рекомендуется проверить работу на дев демоне, после чего приостановить его процесс.
cd /usr/abills/libexec/ morbo api.pl |
cd /usr/abills/libexec/ hypnotoad api.pl |
Если в настройках apache2 иной порт нежели 3000, запуск делать следующей командой. {PORT} - это порт который в настройках apache
cd /usr/abills/libexec/
morbo -l http://localhost:{PORT} api.pl |
в config.pl прописать опцию:
$conf{API_MOJO_PORT}='{PORT}'; |
cd /usr/abills/libexec/ hypnotoad api.pl |
Можно найти по ссылке {ваш биллинг}/api, старый скрипт все равно будет выполняться по ссылке {ваш биллинг}/api.cgi