在线观看不卡亚洲电影_亚洲妓女99综合网_91青青青亚洲娱乐在线观看_日韩无码高清综合久久

鍍金池/ 教程/ 數(shù)據(jù)庫(kù)/ 性能
nsqadmin
常見(jiàn)問(wèn)題
安裝
編譯客戶端庫(kù)
特性和擔(dān)保
工具
拓?fù)淠J?/span>
設(shè)計(jì)
Docker
nsqd
內(nèi)幕
性能
TCP 協(xié)議規(guī)范
nsqlookupd
介紹
產(chǎn)品配置
客戶端庫(kù)
快速開始

性能

分布式性能

主倉(cāng)庫(kù)包含一段代碼(bench/bench.py),它能在 EC2 上自動(dòng)完成分布式基準(zhǔn)。

它引導(dǎo) N 個(gè)節(jié)點(diǎn),一些運(yùn)行 nsqd,一些運(yùn)行加載生成工具(PUBSUB),并分析它們的輸出來(lái)提供聚合。

初始化

下面的代碼反應(yīng)了默認(rèn)參數(shù)6 c3.2xlarge,這個(gè)實(shí)例支持 1g 比特的連接。3 個(gè)節(jié)點(diǎn)運(yùn)行 nsqd 實(shí)例,剩下的運(yùn)行 bench_reader (SUB) 和 bench_writer (PUB) 實(shí)例,來(lái)生成依賴于基準(zhǔn)模式的負(fù)載。

$ ./bench/bench.py --access-key=... --secret-key=... --ssh-key-name=...
[I 140917 10:58:10 bench:102] launching 6 instances
[I 140917 10:58:12 bench:111] waiting for instances to launch...
...
[I 140917 10:58:37 bench:130] (1) bootstrapping ec2-54-160-145-64.compute-1.amazonaws.com (i-0a018ce1)
[I 140917 10:59:37 bench:130] (2) bootstrapping ec2-54-90-195-149.compute-1.amazonaws.com (i-0f018ce4)
[I 140917 11:00:00 bench:130] (3) bootstrapping ec2-23-22-236-55.compute-1.amazonaws.com (i-0e018ce5)
[I 140917 11:00:41 bench:130] (4) bootstrapping ec2-23-23-40-113.compute-1.amazonaws.com (i-0d018ce6)
[I 140917 11:01:10 bench:130] (5) bootstrapping ec2-54-226-180-44.compute-1.amazonaws.com (i-0c018ce7)
[I 140917 11:01:43 bench:130] (6) bootstrapping ec2-54-90-83-223.compute-1.amazonaws.com (i-10018cfb)

生產(chǎn)者吞吐量

這個(gè)基準(zhǔn)僅反應(yīng)了生產(chǎn)者吞吐量。消息體有 100 個(gè)字節(jié),并且消息通過(guò) 3 個(gè)話題(topic)分布。

$ ./bench/bench.py --access-key=... --secret-key=... --ssh-key-name=... --mode=pub --msg-size=100 run
[I 140917 12:39:37 bench:140] launching nsqd on 3 host(s)
[I 140917 12:39:41 bench:163] launching 9 producer(s) on 3 host(s)
...
[I 140917 12:40:20 bench:248] [bench_writer] 10.002s - 197.463mb/s - 2070549.631ops/s - 4.830us/op

入口處 ~2.07mm msgs/sec,使用了 197mb/s 的帶寬。

生產(chǎn)和消費(fèi)吞吐量

通過(guò)服務(wù)生產(chǎn)者和消費(fèi)者,這個(gè)基準(zhǔn)更加準(zhǔn)確的反應(yīng)了實(shí)際情況。這個(gè)消息也是 100 個(gè)字節(jié),并且通過(guò) 3 個(gè)話題(topic)分布,每個(gè)都包含一個(gè) 通道(channel)(每個(gè) 通道(channel) 24 個(gè)客戶端)。

$ ./bench/bench.py --access-key=... --secret-key=... --ssh-key-name=... --msg-size=100 run
[I 140917 12:41:11 bench:140] launching nsqd on 3 host(s)
[I 140917 12:41:15 bench:163] launching 9 producer(s) on 3 host(s)
[I 140917 12:41:22 bench:186] launching 9 consumer(s) on 3 host(s)
...
[I 140917 12:41:55 bench:248] [bench_reader] 10.252s - 76.946mb/s - 806838.610ops/s - 12.706us/op
[I 140917 12:41:55 bench:248] [bench_writer] 10.030s - 80.315mb/s - 842149.615ops/s - 11.910us/op

入口處的 ~842k ~806k msgs/s, 合計(jì)消費(fèi)帶寬 156mb/s,我們已經(jīng)盡力提升了 nsqd 節(jié)點(diǎn)的 CPU 處理能力。通過(guò)引入消費(fèi)者,nsqd 需要維持每個(gè) 通道(channel),因此負(fù)載自然會(huì)高一點(diǎn)。

消費(fèi)者的數(shù)量略微少于生產(chǎn)者,因?yàn)橄M(fèi)者發(fā)送2次命令(每個(gè)消息都要發(fā)送 FIN 命令)。

增加兩個(gè)節(jié)點(diǎn)(一個(gè)是 nsqd 另一個(gè)是產(chǎn)生負(fù)載),達(dá)到了 1mm msgs/s:

$ ./bench/bench.py --access-key=... --secret-key=... --ssh-key-name=... --msg-size=100 run
[I 140917 13:38:28 bench:140] launching nsqd on 4 host(s)
[I 140917 13:38:32 bench:163] launching 16 producer(s) on 4 host(s)
[I 140917 13:38:43 bench:186] launching 16 consumer(s) on 4 host(s)
...
[I 140917 13:39:12 bench:248] [bench_reader] 10.561s - 100.956mb/s - 1058624.012ops/s - 9.976us/op
[I 140917 13:39:12 bench:248] [bench_writer] 10.023s - 105.898mb/s - 1110408.953ops/s - 9.026us/op

單個(gè)節(jié)點(diǎn)性能

聲明:請(qǐng)牢記 NSQ 設(shè)計(jì)的初衷是分布式。單個(gè)節(jié)點(diǎn)的性能非常重要,但這并不是我們所追求的。

  • 2012 MacBook Air i7 2ghz
  • go1.2
  • NSQ v0.2.24
  • 200 byte messages

GOMAXPROCS=1 (單個(gè)生產(chǎn)者,單個(gè)消費(fèi)者)

$ ./bench.sh 
results...
PUB: 2014/01/12 22:09:08 duration: 2.311925588s - 82.500mb/s - 432539.873ops/s - 2.312us/op
SUB: 2014/01/12 22:09:19 duration: 6.009749983s - 31.738mb/s - 166396.273ops/s - 6.010us/op

GOMAXPROCS=4 (4 個(gè)生產(chǎn)者, 4 個(gè)消費(fèi)者)

$ ./bench.sh 
results...
PUB: 2014/01/13 16:58:05 duration: 1.411492441s - 135.130mb/s - 708469.965ops/s - 1.411us/op
SUB: 2014/01/13 16:58:16 duration: 5.251380583s - 36.321mb/s - 190426.114ops/s - 5.251us/op
上一篇:產(chǎn)品配置下一篇:快速開始