接続を設定すると、ドライバーはデータの送信先ノードを分類できるほど賢くなります。
C#ドライバーの場合:
レプリカセットに接続するには、コンマで区切って複数のホスト名(および必要に応じてポート番号)を指定してシードリストを指定します。例えば:
mongodb://server1,server2:27017,server2:27018
Pythonドライバーの場合:
レプリカセットへの接続は、セットの1つ以上のメンバーを指定して、通常のConnection()コンストラクターを使用して行うことができます。たとえば、次のいずれかにより、作成したセットへの接続が作成されます。
Connection("morton.local", replicaset='foo')
Connection([u'morton.local:27019', 'morton.local:27017', u'morton.local:27018'])
Connection("morton.local:27018", replicaset='foo')
Connection([u'morton.local:27019', u'morton.local:27017', 'morton.local:27018'])
Connection("morton.local", 27019, replicaset='foo')
Connection(['morton.local:27019', u'morton.local:27017', u'morton.local:27018'])
Connection(["morton.local:27018", "morton.local:27019"])
Connection(['morton.local:27019', u'morton.local:27017', 'morton.local:27018'])
Connection("mongodb://morton.local:27017,morton.local:27018,morton.local:27019")
Connection(['morton.local:27019', 'morton.local:27017', 'morton.local:27018'])
Connection()に渡されるノードはシードと呼ばれます。ホストが1つだけ指定されている場合は、replicasetパラメーターを使用して、これが単一ノードへの接続ではないことを示す必要があります。シードの少なくとも1つがオンラインである限り、ドライバーはセット内のすべてのノードを「検出」し、現在のプライマリーに接続することができます。