结点,如下:
接着我们可以在本地或另外一台机器上启动一个slave结点:
mongod --dbpath=d:mongodbdb --slave --source 10.0.1.103:27017 --only test --slavedelay 100
下面介绍一下master(主服务端)的代码执行流程。首先我们打开instance.cpp文件,找到下面方法:
//instance.cpp
// Returns false when request includes end
void assembleResponse( Message &m, DbResponse &dbresponse, const SockAddr &client ) {
......
if ( op == dbQuery ) {
if ( handlePossibleShardedMessage( m , &dbresponse ) )
return;
receivedQuery(c , dbresponse, m );
}
//服务端(master) 收到message执行相关查询操作
else if ( op == dbGetMore ) {
if ( ! receivedGetMore(dbresponse, m, currentOp) )
log = true;
}
.....
}
&