搜尋
首頁資料庫mysql教程MongoDB 复制集自动故障切换

选举在复制集的操作中扮演着非常重要当作用,选举的要话费时间当,在选举的过程中,复制集是没有主节点的,无法接受客户端的读请

一  复制集的高可用性简介

复制集通过故障自动切换来实现高可用性,当主节点出现故障当时候,从节点可以通过选举成为主节点,而这个过程在大多数当情况下是自动进行的,不需要手动当干预。在某些情况下,故障自动切换需要数据回滚。

复制集部署的方式(复制集成员数量、物理因素,如带宽 复制集成员当地理位置等)可能会影响自动切换当效率。为了提高自动切换的效率,我们应该将复制集的大多数成员放到一个核心的数据中心来进行管理,在复制集里多放几个从节点,当主节点失效的时候,保证有可用的从节点可以用,而且还也可以因网络故障发生,隔离大多数复制集成员的通信。

自动故障切换主要包括两大过程:选举 和 回滚

选举在复制集的操作中扮演着非常重要当作用,选举的要话费时间当,在选举的过程中,复制集是没有主节点的,,无法接受客户端的读请求,所以MongoDB尽量避免选举的进行。

选举的发生:当主节点不可用的时候;复制集初始化(initiating)的时候

二  影响选举的因素

1.心跳(Heartbeats)

心跳:复制集成员每隔两秒互相发送一次心跳请求包(其是就是ping对方),如果在10秒钟内没有收到对方成员的回复,就认为它出现了故障。

2.优先级比较

成员的优先级会影响到选举的过程,成员们会优先将自己的票投给优先级高的成员。

拥有0优先级的成员不会被选为主库,因为他们不会被投票,没有被选举权。

只要当前的主库拥有最高的优先级且在10秒钟内的操作日志条目内容是最新的,那就不会进行选举。

如果一个高优先级的成员且其操作也进入当前的primary,设置的选举以高优先级节点提供一个机会来成为主库。

3.操作时间:操作时间指的是一个成员最后一次执行操作日志时的日志条目时间。如果一个成员比其他的操作时间都最新(most recent)的话,就有可能被选为主库

4.连通性:复制集中的一个成员只有和大多数成员保持联通,得到大多数人的投票才可以成为主节点,否则会自动降级成为从节点。

例如:对于一个拥有三个成员的复制集,每个成员都可以投票,那么只有其中的两个人可以保持联通的话,复制集就可以进行一次选举。如果其中两个变的不可用,剩下的那个节点如果是从节点的话,那么它仍然还是一个从节点,因为它不能和其他的成员保持连通。同样的道理如果该节点是主节点的话,会自动的降级成为从节点,因为它不能和别的成员保持连通,失去了成为主节点的资格.这样的话该复制集就变成只读了。

5.网络分区:由于网络分区,如果一个主节点不可用的话,其余从节点又不能大多数的连通的话,复制集就无法进行选举。所以尽量将大部分复制集成员放到一个数据中心中,而将一小部分放到另外一个。

更多详情见请继续阅读下一页的精彩内容:

MongoDB 的详细介绍:请点这里
MongoDB 的下载地址:请点这里

推荐阅读:

Java实现MongoDB中自增长字段

CentOS编译安装MongoDB

CentOS 编译安装 MongoDB与mongoDB的php扩展

CentOS 6 使用 yum 安装MongoDB及服务器端配置

Ubuntu 13.04下安装MongoDB2.4.3

如何在MongoDB中建立新数据库和集合

MongoDB入门必读(概念与实战并重)

《MongoDB 权威指南》(MongoDB: The Definitive Guide)英文文字版[PDF]

linux

陳述
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
如何向新的MySQL用戶授予權限如何向新的MySQL用戶授予權限May 09, 2025 am 12:16 AM

TograntpermissionstonewMySQLusers,followthesesteps:1)AccessMySQLasauserwithsufficientprivileges,2)CreateanewuserwiththeCREATEUSERcommand,3)UsetheGRANTcommandtospecifypermissionslikeSELECT,INSERT,UPDATE,orALLPRIVILEGESonspecificdatabasesortables,and4)

如何在MySQL中添加用戶:逐步指南如何在MySQL中添加用戶:逐步指南May 09, 2025 am 12:14 AM

toadduserInmysqleffect和securly,跟隨台詞:1)USEtheCreateUserStattoDaneWuser,指定thehostandastrongpassword.2)GrantNecterAryAryaryPrivilegesSustherthing privilegesgeStatement,usifementStatement,adheringtotheprinciplelastprefilegege.3)

mysql:添加具有復雜權限的新用戶mysql:添加具有復雜權限的新用戶May 09, 2025 am 12:09 AM

toaddanewuserwithcomplexpermissionsinmysql,loldtheSesteps:1)創建eTheEserWithCreateuser'newuser'newuser'@''localhost'Indedify'pa ssword';。 2)GrantreadAccesstoalltablesin'mydatabase'withGrantSelectOnMyDatabase.to'newuser'@'localhost';。 3)GrantWriteAccessto'

mysql:字符串數據類型和coltrationsmysql:字符串數據類型和coltrationsMay 09, 2025 am 12:08 AM

MySQL中的字符串數據類型包括CHAR、VARCHAR、BINARY、VARBINARY、BLOB、TEXT,排序規則(Collations)決定了字符串的比較和排序方式。 1.CHAR適合固定長度字符串,VARCHAR適合可變長度字符串。 2.BINARY和VARBINARY用於二進制數據,BLOB和TEXT用於大對像數據。 3.排序規則如utf8mb4_unicode_ci忽略大小寫,適合用戶名;utf8mb4_bin區分大小寫,適合需要精確比較的字段。

MySQL:我應該在Varchars上使用什麼長度?MySQL:我應該在Varchars上使用什麼長度?May 09, 2025 am 12:06 AM

最佳的MySQLVARCHAR列長度選擇應基於數據分析、考慮未來增長、評估性能影響及字符集需求。 1)分析數據以確定典型長度;2)預留未來擴展空間;3)注意大長度對性能的影響;4)考慮字符集對存儲的影響。通過這些步驟,可以優化數據庫的效率和擴展性。

mysql blob:有什麼限制嗎?mysql blob:有什麼限制嗎?May 08, 2025 am 12:22 AM

mysqlblobshavelimits:tinyblob(255bytes),blob(65,535 bytes),中間佈洛布(16,777,215個比例),andlongblob(4,294,967,967,295 bytes).tousebl觀察:1)考慮pperformance impactsandSandStorLageBlobSextern; 2)管理backbackupsandreplication carecration; 3)usepathsinst

MySQL:自動化用戶創建的最佳工具是什麼?MySQL:自動化用戶創建的最佳工具是什麼?May 08, 2025 am 12:22 AM

自動化在MySQL中創建用戶的最佳工具和技術包括:1.MySQLWorkbench,適用於小型到中型環境,易於使用但資源消耗大;2.Ansible,適用於多服務器環境,簡單但學習曲線陡峭;3.自定義Python腳本,靈活但需確保腳本安全性;4.Puppet和Chef,適用於大規模環境,複雜但可擴展。選擇時需考慮規模、學習曲線和集成需求。

mysql:我可以在斑點內搜索嗎?mysql:我可以在斑點內搜索嗎?May 08, 2025 am 12:20 AM

是的,YouCansearchInIdeAblobInMysqlusingsPecificteChniques.1)轉換theblobtoautf-8StringWithConvertFunctionWithConvertFunctionandSearchUsiseLike.2)forCompresseBlysBlobs,useuncompresseblobs,useuncompressbeforeconversion.3)expperformance impperformance imptactSandDataEcoding.4)

See all articles

熱AI工具

Undresser.AI Undress

Undresser.AI Undress

人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover

AI Clothes Remover

用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool

Undress AI Tool

免費脫衣圖片

Clothoff.io

Clothoff.io

AI脫衣器

Video Face Swap

Video Face Swap

使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱工具

Safe Exam Browser

Safe Exam Browser

Safe Exam Browser是一個安全的瀏覽器環境,安全地進行線上考試。該軟體將任何電腦變成一個安全的工作站。它控制對任何實用工具的訪問,並防止學生使用未經授權的資源。

Dreamweaver Mac版

Dreamweaver Mac版

視覺化網頁開發工具

SecLists

SecLists

SecLists是最終安全測試人員的伙伴。它是一個包含各種類型清單的集合,這些清單在安全評估過程中經常使用,而且都在一個地方。 SecLists透過方便地提供安全測試人員可能需要的所有列表,幫助提高安全測試的效率和生產力。清單類型包括使用者名稱、密碼、URL、模糊測試有效載荷、敏感資料模式、Web shell等等。測試人員只需將此儲存庫拉到新的測試機上,他就可以存取所需的每種類型的清單。

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

強大的PHP整合開發環境

SublimeText3 Mac版

SublimeText3 Mac版

神級程式碼編輯軟體(SublimeText3)