Beefy Boxes and Bandwidth Generously Provided by pair Networks
Don't ask to ask, just ask
 
PerlMonks  

Re: Looking for general pointers on Apache::Session

by virtualsue (Vicar)
on Nov 16, 2017 at 17:15 UTC ( #1203608=note: print w/replies, xml ) Need Help??


in reply to Looking for general pointers on Apache::Session

When you choose mod_perl for new projects, which nobody at all does these days in my experience, this means tying yourself into old-fashioned architecture ideas which revolve around tightly coupling your application to a specific webserver. I suggest you at least have a look at http://plackperl.org/. I personally haven't worked on any mod_perl projects since 2011 (and this was a legacy system which I doubt exists in that form anymore).

Dancer is a perfectly sane choice for modern web development with Perl, and the one I have a lot of professional experience with, so are Mojolicious or Catalyst (though I have never ever liked the way Catalyst handles dispatch). If you really want to create your own framework (be my guest, I have never had the urge but <shrug>), then you ought to be looking at how these frameworks do things. The problem space is a well trodden path that thousands of developers have traveled already.

  • Comment on Re: Looking for general pointers on Apache::Session

Replies are listed 'Best First'.
Re^2: Looking for general pointers on Apache::Session
by bopfer (Novice) on Nov 17, 2017 at 02:27 UTC
    Serious question... What is the general consensus on the best server(s) to run PSGI apps? I am a long time user of Apache/mod_perl and I know it's frowned upon nowadays, but it continues to be the most stable and fastest server for my Catalyst apps. I have tried Starman and uWSGI, both of which would crash or run out of memory over time. They also would report slower times for processing queries. Are there certain tweaks or optimizations that need to be done in the apps to work better under these servers? As of now, I continue to use Apache/mod_perl, but I would prefer not to be living in the past if there is a better way out there.

      In my experience Starman is highly unstable. It might have been a bad combination of environment issues and older Perl but I got hangs and segfaults all the time and had to ditch it.

      uWSGI RFC:SHOULD be the best, easily. You might review the docs to see your usage is cromulent and update to the latest version for good measure. I run a couple of applications on it, not high traffic but up to many thousands of views a day, most pages dynamic, and I've never had any issues whatsoever. I've stress tested it out to high traffic levels with excellent results. It runs from server reboot to reboot without any attention. Longest stretch I've left it running is a year-ish. If you're having trouble, especially regardless of app engine, you might have a memory leak or various other problems in your Perl or things it calls beneath.

      I don't know what the consensus is. I've worked on projects which were deployed into production on nginx/starman and apache/starman.

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1203608]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others chilling in the Monastery: (7)
As of 2019-12-13 07:18 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found

    Notices?