Thanks for your answer, this helps me a lot in re-thinking the problem.

Let me talk a little bit more about my situation.

We want to have a servicemix to act as a ESB to provide some "services" to
different kinds of clients (java, .NET, whatever). Since we need these
"services" to be highly available with good performance with backup of the
capablity to scale up, we design to have a cluster of servicemix. 

With study of servicemix, we know it can support clustering (e.g. load
balance, failover, etc), this fits our needs and so we want to dig into more
details for that.

I am doing the evaluation on servicemix and my schedule is quite harsh, with
trying some playing on the examples and studying on the online documents and
mail list, I decide to seek help here for a quicker pointer :)

Please don't mind my direct question.

In fact, your answer had given me a lot of help, thanks~



gnodet wrote:
> 
> I don't see your problem has being specific to ServiceMix, but rather
> a problem of load balancing http requests.
> AFAIK, you have several solutions:
>   * DNS round robin (no real failover)
>   * hardware load balancer (quite expensive)
>   * software load balancer
> 
> I'm quite sure the last solution is the best one, unless you plan to have
> more than 10.000 concurrent clients.  As for the software to choose,
> I would try plain ServiceMix, Jetty and Httpd.  If none of them can handle
> your HTTP load, the only solution is a hardware load balancer afaik.
> 
> If you use them as only HTTP load balancer (not using ServiceMix and JMS),
> then the processing should be quite low as you should be able to just
> redirect
> streams without actually processing them.
> 
> Anyway, as I said, this is an architectural problem which is somewhat
> unrelated
> to ServiceMix, and you should try to google a bit around HTTP load
> balacing.
> For example, I just found http://www.linuxvirtualserver.org/ which might
> be
> interesting.
> 
> On 5/22/07, ywtsang <[EMAIL PROTECTED]> wrote:
>>
>>
>> Thanks for your quick response. I would like to dig deeper to my
>> question.
>>
>> Let say we use a single servicemix instance as the "entry-point" of all
>> the
>> request and let the cluster of the remaining servicemix receives the
>> requests that are already "load-balanced".
>>
>> I have doubt on the capability of handling all the large volume request
>> for
>> the single entry-point servicemix instance to handle.
>>
>> For hardware load-balancer, the request is forwarded to the other
>> servicemix
>> and that servicemix handles the request and response connection directly
>> with the client.
>>
>> But for our case: "single entry point servicemix" even the request is
>> forwarded to the cluster of servicemix automatically for processing, the
>> return of result from processing to client is still needed to be passed
>> though that "single entry point servicemix" ? Will that single entry
>> point
>> servicemix be overloaded?
>>
>> Please correct me if there is any misunderstanding.
>>
>>
>>
>> gnodet wrote:
>> >
>> > AFAIK, unless you use a hardware load balancer, you will always have a
>> > single
>> > point of failure.  But the goal is to minimize the work done by this
>> > server
>> > so that
>> > failures happen on other nodes I would say.
>> > So you could use ServiceMix as a front-end HTTP and let the clustering
>> > happen using JMS (JMS is automatically load balanced).
>> > Another way would be to use Apache HTTPD
>> > (http://httpd.apache.org/docs/2.2/mod/mod_proxy_balancer.html) in front
>> of
>> > several
>> > ServiceMix running HTTP .
>> >
>> > On 5/22/07, ywtsang <[EMAIL PROTECTED]> wrote:
>> >>
>> >>
>> >> We are trying to setup a cluster of servicemix and are successful in
>> >> running
>> >> the example of "cluster".
>> >>
>> >> We want to test the other setup of cluster of servicemix to see if the
>> >> servicemix can provide transparent fail-over functionalitiy, but we
>> met
>> >> difficulties in setting up this and want to seek help here.
>> >>
>> >> We want to simulate a simple situation that a simple client, using
>> >> "webservice", to make request to a cluster of servicemix to query for
>> >> something. For the client, we should specify a single ip address of
>> >> servicemix server for the client to connect to. Does that mean for the
>> >> cluster of servicemix, we need to have a single servicemix instance
>> >> acting
>> >> as the entry point of the cluster, and let that entry point service to
>> do
>> >> all the "clustering" stuff (e.g. fail-over, load-balance, etc)?
>> >>
>> >> Is what I am describing correct?
>> >>
>> >> Is it possible that we do not have that single entry point of
>> servicemix
>> >> for
>> >> the cluster? i.e. the client can automatically "connect" to the
>> cluster
>> >> by
>> >> some means?
>> >>
>> >> My main concern is that we want the "cluster of servicemix" to be
>> "100%
>> >> available" with high scalablility using "clustering". What does the
>> >> appropriate setup of this cluster of servicemix look like?
>> >>
>> >> I may be describing the problems with many unclear parts, it would be
>> >> nice
>> >> to point me out for further clarification of the problems.
>> >>
>> >>
>> >> --
>> >> View this message in context:
>> >> http://www.nabble.com/cluster-setup-tf3795182s12049.html#a10734374
>> >> Sent from the ServiceMix - User mailing list archive at Nabble.com.
>> >>
>> >>
>> >
>> >
>> > --
>> > Cheers,
>> > Guillaume Nodet
>> > ------------------------
>> > Principal Engineer, IONA
>> > Blog: http://gnodet.blogspot.com/
>> >
>> >
>>
>> --
>> View this message in context:
>> http://www.nabble.com/cluster-setup-tf3795182s12049.html#a10735964
>> Sent from the ServiceMix - User mailing list archive at Nabble.com.
>>
>>
> 
> 
> -- 
> Cheers,
> Guillaume Nodet
> ------------------------
> Principal Engineer, IONA
> Blog: http://gnodet.blogspot.com/
> 
> 

-- 
View this message in context: 
http://www.nabble.com/cluster-setup-tf3795182s12049.html#a10739631
Sent from the ServiceMix - User mailing list archive at Nabble.com.

Reply via email to