MessagePub+

MESSAGEPUB IoTメッセージングプラットフォーム

性能測定データ詳細

スループット

スレッドの効果

MessagePub+はマルチスレッドに対応していて、動作スレッド数の増加に合わせてスループットが向上する。

シングル broker のスループット性能限界値は次の通り。

条件

  • メッセージサイズ: 205Byte
  • keep:false (clean session:true)
  • delive-use-db: false (メッセージ配信前にストレージに記憶しない)
  • broker スペック
    Intel(R) Core(TM) i7-8700 CPU @ 3.20GHz(cpu cores 6)
    Memory: 32GBytes
    Ethernet Ctl: Intel I219-V

image

スレッド数 qos publish/秒 min avg max
1 0 30000 1 ms 6 ms 23 ms
2 0 32000 1 ms 5 ms 18 ms
4 0 74000 1 ms 2 ms 4 ms
6 0 102000 1 ms 12 ms 25 ms
8 0 118000 1 ms 5 ms 25 ms
10 0 132000 1 ms 3 ms 11 ms
12 0 142000 2 ms 4 ms 12 ms
1 1 30000 1 ms 38 ms 150 ms
2 1 32000 1 ms 2 ms 13 ms
4 1 74000 1 ms 4 ms 18 ms
6 1 102000 1 ms 20 ms 40 ms
8 1 118000 1 ms 13 ms 51 ms
10 1 132000 1 ms 8 ms 33 ms
12 1 142000 1 ms 3 ms 21 ms
1 2 14000 1 ms 23 ms 37 ms
2 2 14000 1 ms 19 ms 29 ms
4 2 32000 1 ms 11 ms 41 ms
6 2 44000 1 ms 37 ms 100 ms
8 2 58000 1 ms 16 ms 37 ms
10 2 64000 20 ms 28 ms 35 ms
12 2 68000 31 ms 49 ms 79 ms

※ミリ秒は約2分間において、1メッセージの送信にかかったおおよその最小時間(min)、平均時間(avg)、最大時間(max)を表している。

スレッドの効果(AWSの場合)

条件

  • メッセージサイズ: 205Byte
  • keep:false (clean session:true)
  • delive-use-db: false (メッセージ配信前にストレージに記憶しない)
  • broker スペック
    AWS EC2 c5.2xlarge
    Memory: 16GBytes

image

thread qos pps min avg max
1 0 24000 1 ms 1 ms 50 ms
2 0 24000 1 ms 1 ms 50 ms
3 0 32000 1 ms 1 ms 50 ms
4 0 38000 1 ms 1 ms 50 ms
5 0 44000 1 ms 5 ms 50 ms
6 0 52000 4 ms 8 ms 58 ms
7 0 54000 20 ms 4 ms 55 ms
8 0 60000 7 ms 14 ms 20 ms
9 0 64000 45 ms 7 ms 62 ms
10 0 62000 45 ms 11 ms 112 ms
1 1 14000 1 ms 1 ms 50 ms
2 1 14000 1 ms 1 ms 10 ms
3 1 20000 1 ms 1 ms 9 ms
4 1 26000 1 ms 1 ms 50 ms
5 1 30000 1 ms 5 ms 20 ms
6 1 36000 18 ms 4 ms 51 ms
7 1 38000 18 ms 29 ms 51 ms
8 1 42000 52 ms 58 ms 69 ms
9 1 42000 38 ms 48 ms 93 ms
10 1 42000 24 ms 38 ms 65 ms
1 2 8000 1 ms 1 ms 50 ms
2 2 8000 1 ms 1 ms 8 ms
3 2 12000 1 ms 1 ms 8 ms
4 2 16000 1 ms 1 ms 50 ms
5 2 19000 6 ms 11 ms 60 ms
6 2 20000 1 ms 8 ms 16 ms
7 2 22000 11 ms 18 ms 33 ms
8 2 22000 7 ms 12 ms 52 ms
9 2 22000 11 ms 19 ms 39 ms
10 2 20000 4 ms 9 ms 19 ms

※ミリ秒は約2分間において、1メッセージの送信にかかったおおよその最小時間(min)、平均時間(avg)、最大時間(max)を表している。

複数 broker の効果

MessagePub+は複数の broker インスタンスでクラスタを構成することができる。
broker インスタンスの追加によってスループットが向上する。

条件

  • メッセージサイズ: 205Byte
  • keep:false (clean session:true)
  • delive-use-db: false (メッセージ配信前にストレージに記憶しない)
  • broker のスレッド数(num-of-thread)は 6
  • broker 間のコネクション数(ib-connections)は 2
  • broker 間のコネクション数に割り当てる総スレッド数(ib-num-of-threads)は 2

image

broker 数 qos publish/秒 min avg max
1 0 50000   1 ms 1 ms 5 ms
1 1 36000   1 ms 2 ms 5 ms
1 2 20000   1 ms 1 ms 5 ms
2 0 68000   1 ms 1 ms 50 ms
2 1 44000   1 ms 3 ms 50 ms
2 2 32000   1 ms 1 ms 50 ms
3 0 104000   1 ms 2 ms 60 ms
3 1 68000   1 ms 5 ms 230 ms
3 2 44000   1 ms 3 ms 25 ms
4 0 132000   1 ms 1 ms 50 ms
4 1 90000   1 ms 2 ms 250 ms
4 2 58000   1 ms 2 ms 90 ms
5 0 164000   1 ms 2 ms 110 ms
5 1 110000   1 ms 2 ms 23 ms
5 2 74000   1 ms 30 ms 60 ms
6 0 196000   1 ms 2 ms 50 ms
6 1 134000   1 ms 2 ms 150 ms
6 2 86000   1 ms 13 ms 29 ms
8 0 260000   1 ms 3 ms 60 ms
8 1 170000   1 ms 2 ms 50 ms
8 2 106000   1 ms 10 ms 300 ms
10 0 320000   1 ms 4 ms 20 ms
10 1 220000   1 ms 5 ms 16 ms
10 2 134000   1 ms 3 ms 90 ms
12 0 380000   1 ms 2 ms 100 ms
12 1 250000   1 ms 2 ms 60 ms
12 2 162000   1 ms 5 ms 160 ms
14 0 430000   1 ms 5 ms 60 ms
14 1 280000   1 ms 2 ms 50 ms
14 2 182000   1 ms 3 ms 60 ms

※ミリ秒は約1分間において、1メッセージの送信にかかったおおよその最小時間(min)、平均時間(avg)、最大時間(max)を表している。

broker スペック

AWS EC2 c5.2xlarge
Memory: 16GBytes