簡體   English   中英

mongodb 如何處理來自輔助節點的讀取?

[英]How mongodb handles reads from secondary nodes?

我的默認連接字符串將讀取首選項設置為主,並且它具有所有副本集 url。

當我使用此代碼時,我可以看到我的讀數變為次要

let db = MongoPool.db()    
let collection = await db.collection("tableName", {readPreference:'secondaryPreferred'});
let result = collection.findOne( {userName: "" });

但是,這個連接是如何用連接池處理的呢?

是否為此讀取創建了到輔助節點的新連接?

基本上,mongo 如何處理指向輔助節點的讀取,它是否建立新連接,或者所有讀取 go 到主節點,主節點將這些讀取重定向到輔助節點?

驅動程序將查詢定向到適當的節點。

在副本集拓撲中,驅動程序連接到所有節點並直接向輔助節點發送查詢。

在分片集群中,驅動程序連接到 mongos 路由器,后者將查詢轉發到各個分片的適當副本集節點。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM