3. Simple case
client host
httpd httpd httpd httpd httpd httpd httpd
mongos
server
client
mongod
shard1 shard2
-3 -
4. Simple case
client host
httpd Give mehttpd httpd
httpd DATA_A ! httpd httpd httpd
mongos
server
client
mongod
shard1 shard2
-4 -
5. Simple case
client host
httpd Give mehttpd httpd
httpd DATA_A ! httpd httpd httpd
mongos
server Where is the DATA_A ?
client
mongod
shard1 shard2
-5 -
6. Simple case
client host
httpd Give mehttpd httpd
httpd DATA_A ! httpd httpd httpd
mongos
server
client Shard1 is saving it !
mongod
shard1 shard2
-6 -
7. Simple case
client host
httpd Give mehttpd httpd
httpd DATA_A ! httpd httpd httpd
mongos
server
client
Give me DATA_A !
mongod
shard1 shard2
-7 -
8. Simple case
client host
httpd Give mehttpd httpd
httpd DATA_A ! httpd httpd httpd
mongos
server
client
This is DATA_A.
mongod
shard1 shard2
-8 -
9. Simple case
client host
httpd httpd httpd httpd httpd httpd httpd
mongos
server
This is DATA_A.
client
mongod
shard1 shard2
-9 -
11. Connection pool
client host
httpd httpd httpd httpd httpd httpd httpd
mongos
server
client
Used connection is pooled !
mongod
shard1 shard2
-11 -
12. Connection pool
client host
httpd httpd httpd httpd httpd httpdDATA_A !
Give me httpd
mongos
server
client
Used connection is pooled !
mongod
shard1 shard2
-12 -
13. Connection pool
client host
httpd httpd httpd httpd httpd httpdDATA_A !
Give me httpd
mongos
server
client shard1のコネクションが
再利用できそう
mongod
shard1 shard2
-13 -
14. Connection pool
client host
httpd httpd httpd httpd httpd httpdDATA_A !
Give me httpd
mongos
server
client
Give me DATA_A !
mongod
shard1 shard2
-14 -
15. Connection pool
client host
httpd httpd httpd httpd httpd httpdDATA_A !
Give me httpd
mongos
server
client
This is DATA_A.
mongod
shard1 shard2
-15 -
16. Connection pool
client host
httpd httpd httpd httpd httpd httpd httpd
This is DATA_A.
mongos
server
client
mongod
shard1 shard2
-16 -
32. Connection inflation
client host
httpd Give me DATA_A !
mongos
server
client
mongod
shard1 shard2
-32 -
33. Connection inflation
client host
httpd Give me DATA_A !
mongos
server
client
Give me DATA_A !
mongod
shard1 shard2
-33 -
34. Connection inflation
client host
httpd
Time out (TT;
mongos
server
client
Give me DATA_A !
mongod
shard1 shard2
-34 -
35. Connection inflation
client host
httpd
Give me DATA_A !!!
mongos
server
client 前回使ったshard1へのコネクションはまだ使えない
なので新たに1本コネクションを張る必要がある
Give me DATA_A !
mongod
shard1 shard2
-35 -
36. Connection inflation
client host
httpd
Give me DATA_A !!!
mongos
server
client
Give me DATA_A !
Give me DATA_A !
mongod
shard1 shard2
-36 -
37. Connection inflation
client host
httpd
Time out (TT;
mongos
server
client
Give me DATA_A !
Give me DATA_A !
mongod
shard1 shard2
-37 -
38. Connection inflation
client host
httpd Please give me DATA_A !!!!!!!
リトライ3回なら
mongos 3コネクション消費する
server
勿論mongodに掛ける負荷も3倍
client
Give me DATA_A !
Give me DATA_A !
Give me DATA_A !
mongod
shard1 shard2
-38 -