Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [mosquitto-dev] A decentralize Mosquitto cluster design.

Hi everybody

I've done a very basic test - used my baseline setup as starting point to qualify that the system is working - so taking out any network, setup ext before switch over to the new mosquitto clustered option. Very basic test - 2 servers running mosquitto behind LB and 1000 client connection to the LB, splitting the load 50%/50% with one subscriber listening for all messages using "#"

The client all connect but the subscriber fails to receive the published online message from the clients. So each client starts up will inform mosquitto it will be using LWT & once connected, publish an online message

Only received about 280 connected message out of the 1000....small test that showing some problem somewhere. Using a more real world scenario where network latency will play a role and the clients & subscriber for message maybe on a different network

So the setup is simple:
  * 2xServers running mosquitto on private network on AWS using t2.micro EC2 instance
  * Using latest AWS LB (TCP option) forwardnig to those to EC2 instances
  * Then running my 1000 client from my own network in office to sim clients out in the field - so not running them in AWS 
  * To make thing more handy - running the subscriber client on different laptop in the office

The above scenario pass my normal setup using 2 subscribers to mosquitto and 1000 clients - I get all my connected messages and can also push message to all clients with no issue - so not the EC2 or LB or network in our around AWS/OFfice
Switching then to mosquitto cluster and do the same test, I can only get about 1/4 of the message & pushing message fails to get them...i have to send a lot of pub message to trigger the client to respond. . . but I never get the result on the subscriber side

Hope this helps and provide some idea where problem may be - - - but setup should be clients & workers/sub not in the same network as the broker and see if you can replicate this issue
(Or maybe my testing is flawed :))...but this is a real world scenario ..the clients and sub can be on different networks with latency but should not stop the system from working

Warm regards
Izak S Smit (Oegma)

On Wed, Jan 17, 2018 at 4:08 PM, jianhui zhan <hui6075@xxxxxxxxxxx> wrote:

Hi tatsuzo,


I have made a simple test for the cluster, use krylovsk/mqtt-benchmark as a benchmark tool. But with number of brokers increase to 3, the mean throughput get the limitation. I think the reason is that the client cannot offer enough stress to cluster. See appendix for detail.

It is not easy to test a cluster, especially for MQTT service, Tsung and Jmeter support client clustered, but they are not friendly for MQTT..

Anyway, I'll do more tests, and hope someone can also give a test for mosquitto cluster .. thanks!


BRs,

Jianhui


Appendix:

No. brokers 1 2 3 4 9
n10k c100 17548.83 25509.4 28878.05 28610.25 28947.78
n1k c1k 9928.573 16533.82 24105.12 24034.03 24328.37

Unit: Total Bandwidth (msg/sec), QoS=2, MsgSize=1000bytes.




From: mosquitto-dev-bounces@eclipse.org <mosquitto-dev-bounces@eclipse.org> on behalf of Tatsuzo Osawa <tatsuzo.osawa@xxxxxxxxx>
Sent: Wednesday, January 17, 2018 20:20
To: General development discussions for the mosquitto project
Subject: Re: [mosquitto-dev] A decentralize Mosquitto cluster design.
 
Hi Oegma,
cc Jianhui

> Will it even make sense to try this - get server with 16 CPU's and run 8 brokers on single box....? Normal Mosquitto
> is only using a single CPU at time - with this option you can already use one server with more CPU's to handle the 
> traffic/load ...

I think applying the cluster on multicore environment might be a cool idea.
Because, as you described, normal mosquitto cannot use multicore efficiently.

Regards,
Tatsuzo



_______________________________________________
mosquitto-dev mailing list
mosquitto-dev@xxxxxxxxxxx
To change your delivery options, retrieve your password, or unsubscribe from this list, visit
https://dev.eclipse.org/mailman/listinfo/mosquitto-dev


Back to the top