我們有3個實例的mongodb副本集,其中主節點位於數據中心D1,數據中心D2上的輔助節點。在我們的設置中,我們不需要任何故障轉移選項,並按照https://docs.mongodb.com/manual/tutorial/configure-secondary-only-replica-set-member/中所述進行配置。當與主節點沒有連接時,從mongodb輔助節點讀取
在同一數據中心D2內的輔助節點上運行的應用程序「A」正在使用貓鼬,我們指定(使用「最接近」或「次要」選項)從輔助節點讀取數據。
我們面臨這些問題:
1)是否有可能使「A」從特定的輔助節點閱讀,而不會在連接配置中是主節點的MongoDB指定?
2)如果數據中心D1和D2之間的連接丟失,我們如何才能使輔助節點仍然讀取「A」應用程序,所以mongoDB主節點不再可用?據我瞭解,它不起作用,因爲即使「A」被配置爲從輔助讀取,mongoDB仍然需要在執行實際讀取操作之前在主要和輔助之間執行一種ping /仲裁。
3)是否有可能/建議在數據中心D2中有一個應用程序,它將直接作爲獨立實例執行對mongodb副本集主實例的寫操作,而不是作爲副本集的一部分?
版本: mongodb的3.2.9,貓鼬4.5.9