FAQ

On Fri, Jun 12, 2009 at 6:50 AM, J. Shirley wrote:
ou'll have to grab Catalyst::Engine::HTTP::Prefork out of svn, or
prod andyg enough so he releases (HEY ANDY!)
http://dev.catalystframework.org/repos/Catalyst/trunk/Catalyst-Engine-HTTP-Prefork/
Thank you. I'll have a look at this solution. It is probably a good idea
to use Engine::HTTP::Prefork anyway instead of the simple
test/development-server.


J. Shirley wrote:
On Fri, Jun 12, 2009 at 6:50 AM, J. Shirley wrote:

On Fri, Jun 12, 2009 at 6:19 AM, Stefan Washietl wrote:

I'm developing a desktop application using Catalyst and the
brand new Titanium framework (http://www.appcelerator.com/).

I need to start/stop the standalone server programatically.
Starting is easy, but stopping the server (and its forks) again
is tricky. I'd like a solution without keeping track of the PID
and explicitely kill it from outside. I want to have something like

http://localhost:3000/kill

that calls something in the controller to shut down. The obvious
thing

exit(0);

does not work. Any ideas how to do this?

Stefan


I just set this up with a combination of HTTP::Prefork and
FCGI::Engine::Manager. I'm still floundering away a bit at a
refactor of FCGI::Engine::Manager that is semantically more sound,
but it works well enough right now.

You'll have to grab Catalyst::Engine::HTTP::Prefork out of svn, or
prod andyg enough so he releases (HEY ANDY!)
http://dev.catalystframework.org/repos/Catalyst/trunk/Catalyst-Engine-HTTP-Prefork/


Here's all the yummy bits from my setup: http://gist.github.com/128642

You can just run script/myapp_admin.pl start|stop

One thing, I copied the script/myapp_server.pl over to
script/myapp_prefork.pl and changed the default CATALYST_ENGINE to
HTTP::Prefork.

This is because I couldn't figure out a clean way to set the ENV in
FCGI::Engine::Manager::Server classes, but it's a temporary hack
until I wrap that up.

Hope this helps,


I forgot to finish this off, you can have the kill action then run the
stop command and then everything is going from the same point. Just
executing a system call to kill it means that the current request should
finish cleanly, along with everything else.

It may be overkill, but that's how I'd do it (just so any post-shutdown
scripts are always executed, etc)

-J


------------------------------------------------------------------------

_______________________________________________
List: Catalyst@lists.scsys.co.uk
Listinfo: http://lists.scsys.co.uk/cgi-bin/mailman/listinfo/catalyst
Searchable archive: http://www.mail-archive.com/catalyst@lists.scsys.co.uk/
Dev site: http://dev.catalyst.perl.org/

Search Discussions

Discussion Posts

Previous

Follow ups

Related Discussions

Discussion Navigation
viewthread | post
posts ‹ prev | 6 of 8 | next ›
Discussion Overview
groupcatalyst @
categoriescatalyst, perl
postedJun 12, '09 at 1:19p
activeJun 15, '09 at 9:12p
posts8
users5
websitecatalystframework.org
irc#catalyst

People

Translate

site design / logo © 2022 Grokbase