[Mosquitto-users] Scaling and HA strategies

2012-11-05 Thread Thomas Menguy
Hi,

I'm evaluating mosquitto for a project.
Two constraints we have :
-High Availability of the service
-Scalability (ie possibility to scale up the service by adding servers)

I imagine that for all the MQTT based services, we have a 3 "actors" setup
-Client: the Client level, ie mobile phones here, handled by an MQTT client 
library
-Broker: Clients talk with MQTT brokers
-Server Application: A server app that is listening to MQTT topics and posting 
some

So for HA (ie being sure a client can connect), we need to have multiple 
Brokers for redundancy (as for the Server Application, but it is not the topic 
here)
>From what I've seen the bridge feature seems to be of some help for this kind 
>of setup, but it is not clear to me if it would be better to deal with topic 
>sync at the server application level, ie posting on each broker servers 
>individually  instead of on one and letting the bridge feature handling it, 
>same for reading client message of course : reading on each broker, or on one 
>using bridge sync. 
=>Basically it is down to the bridge feature performance. I'm asking here 
because for more than 2 brokers (4 / 8 etc) the very nature of the bridge 
feature will probably lead to a lot of messages exchanges between the brokers 
to keep them in sync (or perhaps I'm just asking myself too many questions)

After for broker choice, what about load balancer? or doing this locally on 
client side? any experience here?

If someone has experience/articles, etc doing this kind of setup with 
Mosquitto, that would be of great help!

Thx
Thomas

-- 
Mailing list: https://launchpad.net/~mosquitto-users
Post to : mosquitto-users@lists.launchpad.net
Unsubscribe : https://launchpad.net/~mosquitto-users
More help   : https://help.launchpad.net/ListHelp


[Mosquitto-users] Scaling and HA strategies

2012-11-05 Thread Thomas Menguy
Hi,

I'm evaluating mosquitto for a project.
Two constraints we have :
-High Availability of the service
-Scalability (ie possibility to scale up the service by adding servers)

I imagine that for all the MQTT based services, we have a 3 "actors" setup
-Client: the Client level, ie mobile phones here, handled by an MQTT client 
library
-Broker: Clients talk with MQTT brokers
-Server Application: A server app that is listening to MQTT topics and posting 
some

So for HA (ie being sure a client can connect), we need to have multiple 
Brokers for redundancy (as for the Server Application, but it is not the topic 
here)
>From what I've seen the bridge feature seems to be of some help for this kind 
>of setup, but it is not clear to me if it would be better to deal with topic 
>sync at the server application level, ie posting on each broker servers 
>individually  instead of on one and letting the bridge feature handling it, 
>same for reading client message of course : reading on each broker, or on one 
>using bridge sync. 
=>Basically it is down to the bridge feature performance. I'm asking here 
because for more than 2 brokers (4 / 8 etc) the very nature of the bridge 
feature will probably lead to a lot of messages exchanges between the brokers 
to keep them in sync (or perhaps I'm just asking myself too many questions)

After for broker choice, what about load balancer? or doing this locally on 
client side? any experience here?

If someone has experience/articles, etc doing this kind of setup with 
Mosquitto, that would be of great help!

Thx
Thomas



-- 
Mailing list: https://launchpad.net/~mosquitto-users
Post to : mosquitto-users@lists.launchpad.net
Unsubscribe : https://launchpad.net/~mosquitto-users
More help   : https://help.launchpad.net/ListHelp


Re: [Mosquitto-users] Scaling and HA strategies

2012-11-11 Thread Thomas Menguy
Hi,

Thanks a lot for the confirmation.

By any chance do you have any numbers for max connections on a broker
(on a given machine) ? Latency to dispatch a message given a number of
subscribers?

Of course if there is someone here with an example of real life live
deployment with HA and scale, I would be more than happy to have a
discussion!

BR
Thomas

Envoyé de mon iPad

Le 10 nov. 2012 à 17:24, Roger Light  a écrit :

> Hi Thomas,
>
>> I imagine that for all the MQTT based services, we have a 3 "actors" setup
>> -Client: the Client level, ie mobile phones here, handled by an MQTT client 
>> library
>> -Broker: Clients talk with MQTT brokers
>> -Server Application: A server app that is listening to MQTT topics and 
>> posting some
>
> Yes, agreed.
>
>> So for HA (ie being sure a client can connect), we need to have multiple 
>> Brokers
>> for redundancy (as for the Server Application, but it is not the topic here)
>> From what I've seen the bridge feature seems to be of some help for this 
>> kind of
>> setup, but it is not clear to me if it would be better to deal with topic 
>> sync at the
>> server application level, ie posting on each broker servers individually  
>> instead
>> of on one and letting the bridge feature handling it, same for reading 
>> client message
>> of course : reading on each broker, or on one using bridge sync.
>
> I think that using the in-built broker bridging is probably best
> suited to relatively simple applications. As you say, with a large
> number of brokers the bridging requirements become non-trivial. Having
> the application server publish to many brokers is likely to be easier
> to manage, particularly if your server is already being duplicated.
>
> Cheers,
>
> Roger
>
> --
> Mailing list: https://launchpad.net/~mosquitto-users
> Post to : mosquitto-users@lists.launchpad.net
> Unsubscribe : https://launchpad.net/~mosquitto-users
> More help   : https://help.launchpad.net/ListHelp

-- 
Mailing list: https://launchpad.net/~mosquitto-users
Post to : mosquitto-users@lists.launchpad.net
Unsubscribe : https://launchpad.net/~mosquitto-users
More help   : https://help.launchpad.net/ListHelp