[Dancer-users] perl dance multiple hosting @dotgeek

gurugeek gurugeekphp at gmail.com
Thu Aug 16 17:15:31 CEST 2012

On Thu, Aug 16, 2012 at 4:36 PM, sawyer x <xsawyerx at gmail.com> wrote:

> Let me try and be more accurate and understandable.
> There's a difference between "slow and horrible" and incorrect. You're not
> doing anything incorrectly! :)

Absolutely :)

> The set up you have with Plack::Handler::Apache2 is correct but not
> optimal and has its disadvantages. If you can do it differently (such as
> having persistency) it will be more worthwhile.

> The deployment document was mostly written by the community and contains
> practical information about situations people encountered, sometimes
> without any ability to change it. Our most recommended set up is Varnish
> <-> Nginx <-> Starman <-> Dancer. However, sometimes you're using Apache,
> sometimes you don't have a reverse proxy, sometimes you don't have caching
> up front, sometimes you can't run a Perl webserver (like Starman). These
> are all limitations you might face, and the deployment procedure tries to
> help you with that.
> I understand the difference very well as I did test for months the nginx
reverse proxy (it was for ruby and thin but it is the same principle) and I
decided against it.  The first issue I have even with 100 users you will
end up running many instances that are not used by anyone. More
importantly, after several trials i realised that nginx wants to run
everything as his own user and, as far as I could find, doesn't allow the
permissions setting where user a won't be able to read what is on user b.
It needs permission for the whole tree.

Given that some people seems to have the aim to break anything that you
give them for free "just because they can" I have tried to make a setup
that is as secure as possible without having to go through the
virtualization route (which to me seems pointless as you do have excellent
free options even with EC2).

In my setup you can run safely ruby, php and dance with the
Plack::Handler::Apache2 even side by side without any major risk.  But
please do not get me wrong :) I see your point completely and my experience
with dancer is very limited to run some test scripts. I agree that
reloading the whole up each time is less than ideal. I don't know why the
Plack::Handler does that (this is not the case with Passenger as a process
is in memory and users can restart the app by simply doing touch
/home/me/tmp/restart.txt (which I enabled in the admin panel).

I think it is probably an issue with offering several languages at the same
time vs. developing an optimal system only for dancer that, unfortunately
and due to my limited knowledge in using it, seems unrealistic at this
stage.  I just wonder why the Plack::Handler behaves in this "slow and
horrible way". This can't be good I think because most servers will run
Apache and I don't think they will be so willing to throw  it away
for  Varnish <-> Nginx <-> Starman <-> Dancer :)

Thanks for your suggestions and letting me know. I really appreciate that.
 I thought that installing Mod_perl and Plack::Handler was too easy to make
this the best solution ! :)
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.backup-manager.org/pipermail/dancer-users/attachments/20120816/2065e1e5/attachment.htm>

More information about the Dancer-users mailing list