Clustering & Self-Healing

29 views
Skip to first unread message

James Golick

unread,
Jan 4, 2008, 10:46:40 PM1/4/08
to thin...@googlegroups.com
On that note, I'm hijacking this thread.

Clustering support doesn't really make a whole lot of sense to me, unless it includes some kind of process monitoring.

Currently, I manage my thins with the god gem ( god.rubyforge.org). All I do is start god, and it starts my thins, and monitors them, restarting one if it dies, or starts using too much memory. I'll package it up, and create a self_healing_thin_cluster gem if anybody is interested.

On Jan 4, 2008 9:22 PM, macournoyer <macou...@gmail.com> wrote:

hey julien,

Depending on the traffic you get you might need to put it behind a
load balancer. You can configure the port using the -p option of the
thin script.

Thin will probably have builtin support for clustering or something
like that, that still needs to be discussed and implemented. But you
still can launch your thin cluster manually w/ something like this:

thin start -p3000 -l log/thin.3000.log -P tmp/pids/thin.3000.pid
thin start -p3001 -l log/thin.3001.log -P tmp/pids/thin.3001.pid
thin start -p3002 -l log/thin.3002.log -P tmp/pids/thin.3002.pid

Check the script options w/: thin -h

On Jan 4, 2:54pm, "julien.guim...@gmail.com"
<julien.guim...@gmail.com> wrote:
> Hello,
>
> Do we need to put this behind a load balancer like mongrel ? If so
> what are the port used and can we configure them? (or maybe it is so
> awesome that we don't need balancing :))
>
> My VHS will kill me if I start something in the port ranges of other
> customers!
>
> Thanks,
> Julien.



macournoyer

unread,
Jan 4, 2008, 11:48:52 PM1/4/08
to thin-ruby
James,

I'd like to provide this builtin if possible. I though at first a bit
like Merb does with the -c (--cluster-nodes) option. You can start
several Merb instance by doing: merb -c 3

But i really like the idea of using god to monitor rather then just
starting-stoping. What do you think could be provided within Thin to
make using god easier?

Would it be possible to provide something through the thin script?

On Jan 4, 10:46 pm, "James Golick" <jamesgol...@gmail.com> wrote:
> On that note, I'm hijacking this thread.
>
> Clustering support doesn't really make a whole lot of sense to me, unless it
> includes some kind of process monitoring.
>
> Currently, I manage my thins with the god gem (god.rubyforge.org). All I do
> is start god, and it starts my thins, and monitors them, restarting one if
> it dies, or starts using too much memory. I'll package it up, and create a
> self_healing_thin_cluster gem if anybody is interested.
>

James Golick

unread,
Jan 5, 2008, 10:04:38 AM1/5/08
to thin...@googlegroups.com
Yeah, I have something that is basically working.

I can package it, and pass it your way, if you'd like - probably some time this week or next.

On Jan 4, 2008 11:48 PM, macournoyer < macou...@gmail.com> wrote:

James,

I'd like to provide this builtin if possible. I though at first a bit
like Merb does with the -c (--cluster-nodes) option. You can start
several Merb instance by doing: merb -c 3

But i really like the idea of using god to monitor rather then just
starting-stoping. What do you think could be provided within Thin to
make using god easier?

Would it be possible to provide something through the thin script?

Dat Chu

unread,
Jan 28, 2008, 12:06:01 PM1/28/08
to thin-ruby
I think that having an easy way to monitor thin server would be very
nice. Great work James.

How is the process of packaging god for thin going?

James Golick

unread,
Jan 28, 2008, 12:22:47 PM1/28/08
to thin...@googlegroups.com
It's coming along; I've got a few more small changes to make before I push it up to the repo.

There will likely be some rudimentary support for starting a monitored thin cluster in 0.7.
Reply all
Reply to author
Forward
0 new messages