Is ngx_http_perl_module stable enough to use in high traffic production environment?

I use perl a lot,
and I noticed
http://nginx.org/en/docs/http/ngx_http_perl_module.html
for several years has been documented as
“The module is experimental, caveat emptor applies.”
So I have been somewhat avoiding testing its use.

Does anyone know if this is suitable to use in high traffic production
environments?
Would it often leak memory even if the perl code was deleting/undefining
all variable and no circular references?

Also, how does this work with yum rpm. If I update the perl on the
system
using yum update, will the nginx perl also update or will I have to
recompile nginx?

Thank you.

Hello!

On Sat, Jan 23, 2016 at 6:42 AM, highclass99 wrote:

I use perl a lot,
and I noticed
http://nginx.org/en/docs/http/ngx_http_perl_module.html
for several years has been documented as
“The module is experimental, caveat emptor applies.”
So I have been somewhat avoiding testing its use.

Does anyone know if this is suitable to use in high traffic production
environments?

We used to use this perl module in production about 3 years ago for
relatively heavy production traffic (we have way more traffic today)
but it was slow, unscalable, and blocking on I/O. We switched to the
ngx_http_lua_module since then and it has been much faster and
guarantees 100% nonblocking network I/O. Disclaimer: I am the
maintainer of the ngx_http_lua_module.

See https://github.com/openresty/lua-nginx-module#readme

We still use Perl for many offline work like automated testing (based
on the CPAN module Test::Nginx [1]) and WAF’s Lua code generation (the
modsecurity rules to Lua translator is written in Perl). I’ve also
been working on the Lemplate compiler [2] in Perl that compiles Perl’s
TT2 templates down to standalone Lua code runnable atop the
ngx_http_lua_module.

Hope it helps.

Best regards,
-agentzh

[1] https://metacpan.org/pod/Test::Nginx
[2] https://metacpan.org/pod/Lemplate

This forum is not affiliated to the Ruby language, Ruby on Rails framework, nor any Ruby applications discussed here.

| Privacy Policy | Terms of Service | Remote Ruby Jobs