CN106161533B - 一种保障动物园管理员系统快速完成领导者选举的方法,装置及系统 - Google Patents
一种保障动物园管理员系统快速完成领导者选举的方法,装置及系统 Download PDFInfo
- Publication number
- CN106161533B CN106161533B CN201510165922.2A CN201510165922A CN106161533B CN 106161533 B CN106161533 B CN 106161533B CN 201510165922 A CN201510165922 A CN 201510165922A CN 106161533 B CN106161533 B CN 106161533B
- Authority
- CN
- China
- Prior art keywords
- zooman
- system server
- leader
- state
- data packet
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Active
Links
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
- H04L67/1001—Protocols in which an application is distributed across nodes in the network for accessing one among a plurality of replicated servers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L43/00—Arrangements for monitoring or testing data switching networks
- H04L43/08—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters
- H04L43/0805—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability
- H04L43/0817—Monitoring or testing based on specific metrics, e.g. QoS, energy consumption or environmental parameters by checking availability by checking functioning
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F16/00—Information retrieval; Database structures therefor; File system structures therefor
- G06F16/90—Details of database functions independent of the retrieved data types
- G06F16/903—Querying
- G06F16/90335—Query processing
-
- G—PHYSICS
- G07—CHECKING-DEVICES
- G07C—TIME OR ATTENDANCE REGISTERS; REGISTERING OR INDICATING THE WORKING OF MACHINES; GENERATING RANDOM NUMBERS; VOTING OR LOTTERY APPARATUS; ARRANGEMENTS, SYSTEMS OR APPARATUS FOR CHECKING NOT PROVIDED FOR ELSEWHERE
- G07C13/00—Voting apparatus
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/08—Configuration management of networks or network elements
- H04L41/0803—Configuration setting
- H04L41/0813—Configuration setting characterised by the conditions triggering a change of settings
- H04L41/0816—Configuration setting characterised by the conditions triggering a change of settings the condition being an adaptation, e.g. in response to network events
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/10—Protocols in which an application is distributed across nodes in the network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/50—Network services
- H04L67/53—Network services using third party service providers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
Landscapes
- Engineering & Computer Science (AREA)
- Signal Processing (AREA)
- Computer Networks & Wireless Communication (AREA)
- Databases & Information Systems (AREA)
- Theoretical Computer Science (AREA)
- General Physics & Mathematics (AREA)
- Physics & Mathematics (AREA)
- Computer Security & Cryptography (AREA)
- Environmental & Geological Engineering (AREA)
- Computational Linguistics (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Computer And Data Communications (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
本发明公开了一种保障动物园管理员系统快速完成领导者选举的方法,装置及系统,所述方法包括以下步骤:判断动物园管理员系统服务器是否进入领导者选举状态,若是,则进入下一步骤;将动物园管理员系统服务器配置为拒绝动物园管理员系统客户端请求的状态;判断动物园管理员系统服务器是否进入对外提供服务的状态,若是,则进入下一步骤;将动物园管理员系统服务器配置为重新接收客户端请求的状态。本发明的方法能够保障动物园管理员系统快速完成领导者选举。
Description
技术领域
本发明涉及一种为分布式应用提供一致性服务的软件,具体涉及保障动物园管理员(英文名称:zookeeper)系统快速完成领导者(英文名称:leader)选举的方法。
背景技术
动物园管理员系统是针对大型分布式系统的可靠的协调系统,作为一个分布式的服务框架,主要用来解决分布式集群中应用系统的一致性问题。动物园管理员系统提供的功能包括:配置维护、名字服务、分布式同步、组服务等。动物园管理员系统分为2个部分:服务器端(英文名称:server)和客户端(英文名称:client),客户端连接到整个动物园管理员系统的某个服务器上。客户端使用并维护一个传输控制协议连接,通过这个连接发送请求、接收响应、获取观察的事件以及发送心跳。为了在分布式的环境中保证数据的一致性,动物园管理员系统需要在所有的服务器中选举出一个领导者,然后让这个领导者来负责管理集群,此时,集群中的其它服务器则成为此领导者的追随者(英文名称:follower)。并且,当领导者故障等原因退出服务的时候,需要动物园管理员系统能够快速地在追随者中再选举出下一个领导者。动物园管理员系统选举领导者期间,动物园管理员系统服务器就进入到领导者选举状态,这一期间也可以被称为恢复模式或恢复状态。当新的领导者被选举出来后,领导者选举状态或恢复模式结束,系统进入到对外提供服务的正常的工作状态。
现有动物园管理员系统服务器端进行领导者选举期间不能对外提供服务,对于规模庞大的动物园管理员集群系统来说,此时数千台动物园管理员系统客户端并发访问并进行重试,动物园管理员系统服务器接收到请求之后会查询自身数据并记录日志,由于系统处于领导者选举阶段,无法给用户返回正确数据,接收到大量的客户端请求并进行处理反而增加了动物园管理员系统服务器端压力,导致正常动物园管理员系统领导者选举受到干扰,拖延减慢领导者选举的程序,严重的甚至导致领导者选举无法完成以致失败,进而动物园管理员系统无法提供相应的服务。
发明内容
本发明提供一种保障动物园管理员系统快速完成领导者选举的方法,以解决现有的动物园管理员系统客户端的服务请求干扰动物园管理员系统服务器领导者选举程序的问题,本发明提供的保障动物园管理员系统快速完成领导者选举的方法特征在于包括以下步骤:
判断动物园管理员系统服务器是否进入领导者选举状态,若是,则进入下一步骤;
将动物园管理员系统服务器配置为拒绝动物园管理员系统客户端请求的状态;
判断动物园管理员系统服务器是否进入对外提供服务的状态,若是,则进入下一步骤;
将动物园管理员系统服务器配置为重新接收客户端请求的状态。
优选地,所述将动物园管理员系统服务器配置为拒绝动物园管理员系统客户端请求的状态的方法为:配置动物园管理员系统服务器的过滤或破坏表输入链路的数据包处理动作为丢弃;
所述将动物园管理员系统服务器配置为重新接收客户端请求的状态的方法为:清除所述动物园管理员系统服务器的过滤或破坏表输入链路的数据包处理动作为丢弃的配置。
优选地,所述配置动物园管理员系统服务器的过滤或破坏表输入链路的数据包处理动作为丢弃的方法为:配置动物园管理员系统服务器的过滤或破坏表输入链路传输控制协议消息特定目的端口的数据包处理动作为丢弃;
所述清除动物园管理员系统服务器的过滤或破坏表输入链路数据包处理动作为丢弃的配置的方法为:清除所述动物园管理员系统服务器的过滤或破坏表输入链路传输控制协议消息特定目的端口的数据包处理动作为丢弃的配置;
其中,传输控制协议消息特定目的端口为动物园管理员系统服务器接受客户端请求的传输控制协议消息的端口。
优选地,所述配置动物园管理员系统服务器的过滤或破坏表输入链路传输控制协议消息特定目的端口的数据包处理动作为丢弃的方法为:增加动物园管理员系统服务器的过滤或破坏表输入链路传输控制协议消息特定目的端口的数据包处理动作丢弃;
所述清除动物园管理员系统服务器的过滤或破坏表输入链路传输控制协议消息特定目的端口的数据包处理动作为丢弃的配置的方法为:删除所述动物园管理员系统服务器的过滤或破坏表输入链路传输控制协议消息特定目的端口的数据包处理动作丢弃的配置。
优选地,所述增加动物园管理员系统服务器的过滤或破坏表输入链路传输控制协议消息特定目的端口的数据包处理动作丢弃的方法为:采用国际互联网协议表软件工具增加动物园管理员系统服务器的过滤或破坏表输入链路传输控制协议消息特定目的端口的数据包处理动作丢弃;
所述删除动物园管理员系统服务器的过滤或破坏表输入链路传输控制协议消息特定目的端口的数据包处理动作丢弃的配置的方法为:采用国际互联网协议表软件工具删除所述动物园管理员系统服务器的过滤或破坏表输入链路传输控制协议消息特定目的端口的数据包处理动作丢弃的配置。
优选地,所述动物园管理员系统服务器接受客户端请求的传输控制协议消息的端口为2181。
优选地,所述将配置动物园管理员系统服务器配置为拒绝动物园管理员系统客户端请求的状态的方法为:配置动物园管理员系统服务器的网络地址转换或破坏表路由前链路的数据包处理动作为丢弃;
所述将动物园管理员系统服务器配置为重新接受客户端请求的状态的方法为:清除所述动物园管理员系统服务器的网络地址转换或破坏表路由前链路的数据包处理动作为丢弃的配置。
优选地,所述配置动物园管理员系统服务器的网络地址转换或破坏表路由前链路的数据包处理动作为丢弃的方法为:配置动物园管理员系统服务器的网络地址转换或破坏表路由前链路传输控制协议消息特定目的端口的数据包处理动作为丢弃;
所述清除动物园管理员系统服务器的网络地址转换或破坏表路由前链路的数据包处理动作为丢弃的配置的方法为:清除所述动物园管理员系统服务器的网络地址转换或破坏表路由前链路传输控制协议消息特定目的端口的数据包处理动作为丢弃的配置;
传输控制协议消息特定目的端口为动物园管理员系统服务器接受客户端请求的传输控制协议消息的端口。
优选地,所述配置动物园管理员系统服务器的网络地址转换或破坏表路由前链路传输控制协议消息特定目的端口的数据包处理动作为丢弃的方法为:增加动物园管理员系统服务器的网络地址转换或破坏表路由前链路传输控制协议消息特定目的端口的数据包处理动作丢弃;
所述清除动物园管理员系统服务器的网络地址转换或破坏表路由前链路传输控制协议消息特定目的端口的数据包处理动作为丢弃的配置的方法为:删除所述动物园管理员系统服务器的网络地址转换或破坏表路由前链路传输控制协议消息特定目的端口的数据包处理动作丢弃的配置。
优选地,所述增加动物园管理员系统服务器的网络地址转换或破坏表路由前链路传输控制协议消息特定目的端口的数据包处理动作为丢弃的方法为:采用国际互联网协议表软件工具增加动物园管理员系统服务器的网络地址转换或破坏表路由前链路传输控制协议消息特定目的端口的数据包处理动作丢弃;
所述删除动物园管理员系统服务器的网络地址转换或破坏表路由前链路传输控制协议消息特定目的端口的数据包处理动作为丢弃的配置的方法为:采用国际互联网协议表软件工具删除所述动物园管理员系统服务器的网络地址转换或破坏表路由前链路传输控制协议消息特定目的端口的数据包处理动作丢弃的配置。
优选地,所述动物园管理员系统服务器接受客户端请求的传输控制协议消息的端口为2181。
优选地,所述判断动物园管理员系统服务器是否进入领导者选举状态的方法为:启动监控程序,检查动物园管理员输出日志文件,若当前正在输出打印包含有表示“领导者选举”的信息,则动物园管理员系统服务器进入到领导者选举状态。
优选地,所述判断动物园管理员系统服务器是否进入领导者选举状态的方法为:启动监控程序,使用状态命令查看动物园管理员系统服务器的状态,若服务器响应的信息中包含有表示“与服务联系时出错,服务可能未运行”的信息,并且动物园管理员系统服务器接收客户端请求的端口仍然存活则动物园管理员系统服务器进入到领导者选举状态。
优选地,所述判断动物园管理员系统服务器是否进入领导者选举状态的方法为:启动监控程序,使用四字命令"ruok"查看动物园管理员系统服务器,若服 务器响应的信息不含有关键字"imok"则动物园管理员系统服务器进入到领导者选举状态。
优选地,所述判断动物园管理员系统服务器是否进入对外提供服务的状态的方法为:使用四字命令"ruok"查看动物园管理员系统服务器,若服务器响应信息包含关键字"imok",则动物园管理员系统服务器进入到对外提供服务的状态。
优选地,所述判断动物园管理员系统服务器是否进入对外提供服务的状态的方法为:使用状态命令查看动物园管理员系统服务器的状态,若服务器响应的模式信息为关键字“追随者”或“领导者”,则动物园管理员系统服务器进入到对外提供服务的状态;
本办发明还提供一种保障动物园管理员系统快速完成领导者选举的装置,包括:
领导者选举状态判断单元,用于判断动物园管理员系统服务器是否进入领导者选举状态;
拒绝客户端请求配置单元,用于将动物园管理员系统服务器配置为拒绝动物园管理员系统客户端请求的状态;
对外提供服务状态判断单元,用于判断动物园管理员系统服务器是否进入对外提供服务的状态;
接收客户端请求配置单元,用于将动物园管理员系统服务器配置为重新接收客户端请求的状态。
本发明还提供一种保障动物园管理员系统快速完成领导者选举的系统,包括:中央处理器,存储器,输入和输出设备,其特征在于,所述存储器中存有一软件程序,启动此软件程序,能够按照所述的保障动物园管理员系统快速完成领导者选举的方法运行。
与现有技术相比,本申请具有以下优点:
在动物园管理员系统服务器领导者选举期间,配置动物园管理员系统服务器不再接收处理客户端发来的服务请求,当领导者选举程序结束后,新的领导者产生并且动物园管理员系统服务器进入到对外提供服务的正常状态中,这时清除此前配置的拒绝接受客户端发来的服务请求的配置,动物园管理员系统服务器重新接收并处理相应的服务请求。这样可以保证动物园管理员系统服务器在进行领导者选举程序期间不会受到动物园管理员系统客户端的服务请求的干 扰,动物园管理员系统服务器的领导者选举程序的进行不会拖延减慢,更不会失败,起到保障动物园管理员系统服务器的领导者选举程序快速顺利的完成的效果。进而能够尽早尽快为客户端的请求提供服务,最大限度地降低动物园管理员系统服务器在领导者选举程序执行期间对网络服务的影响,达到缩短动物园管理员系统服务不可用时间,提高动物园管理员系统服务可靠性的效果。
附图说明
图1是本发明第一实施例的流程示意图;
图2是本发明第二实施例的结构框图。
具体实施方式
在下面的描述中阐述了很多具体细节以便于充分理解本发明。但是本发明能够以很多不同于在此描述的其它方式来实施,本领域技术人员可以在不违背本发明内涵的情况下做类似推广,因此本发明不受下面公开的具体实施的限制。
本发明第一实施例提供一种保障动物园管理员系统服务器快速完成领导者选举的方法,如图1所示。在该实施例中根据动物园管理员系统服务器系统记录log文件或对一些命令的响应信息来判断动物园管理员系统服务器是否进入到领导者选举状态或对外提供服务的状态;当判断动物园管理员系统服务器进入到领导者选举的状态或对外提供服务的状态后,采用国际互联网协议表(英文名称:iptables)软件工具对动物园管理员系统服务器的数据包处理表,包括过滤(filter)表,网络地址转换(nat)表,破坏(mangle)表及输入(INPUT)链路,路由前(PREROUTING)链路进行配置,以拒绝或接受客户端的请求。其中动物园管理员系统服务器接收客户端请求传输控制协议(英文名称:TCP)消息的端口为2181。具体步骤如下:
步骤101:判断动物园管理员系统服务器是否进入领导者选举状态,若是,则进入下一步骤。
所述判断动物园管理员系统服务器是否进入领导者选举状态可以采用多种方法,本实施例提供如下所述的三种方法:
方法一,读取动物园管理员系统服务器的动物园管理员输出日志文件(即 文件zookeeper.out),检查当前是否正在反复打印输出包含有表示“领导者选举”的信息,即包含有关键字“Fast leader Election”的信息,例如动物园管理员系统服务器的zookeeper.out日志文件中正在打印输出如下信息:
“......Fast leader Election@542]-Notification:2(n.leader)......”
则认为动物园管理员系统服务器进入领导者选举状态;否则认为动物园管理员系统服务器没有进入到领导者选举状态。
方法二,可以使用状态命令(即:“status”命令)和“netstat”命令查看动物园管理员系统服务器的响应信息来判断动物园管理员系统服务器是否进入到领导者选举状态。
首先使用状态命令查看动物园管理员系统服务器,例如“#sh zkServer.shstatus”,若动物园管理员系统服务器响应的信息包含有表示“与服务联系时出错,服务可能未运行”的信息,即包含有关键字“Error contacting service.It is probably notrunning”的信息,例如动物园管理员系统服务器响应的信息为
“JMX enabled by default
Using config:/home/admin/zookeeper-3.4.3/bin/../conf/zoo.cfg
Error contacting service.It is probably not running.”
此响应表明动物园管理员服务故障,再使用带参数的“netstat”命令,例如“#netstat-nltp|grep 2181”查看动物园管理员系统服务器,此命令指定动物园管理员系统服务器响应输出使用传输控制协议端口2181状态为“LISTEN”的程序情况,其中的国际互联网协议地址以数字形式体现。若动物园管理员系统服务器对命令的进行了响应,有反馈输出,例如动物园管理员系统服务器响应的信息为
“TCP 0 00.0.0.0:2181 0.0.0.0:*LISTEN 26436/java”,此响应表明动物园管理员系统服务器接受客户端请求的传输控制协议端口状态为“LISTEN”,是活跃的,再结合前面动物园管理员服务故障的信息,可以判断认为动物园管理员系统服务器进入到领导者选举状态。
若动物园管理员系统服务器对命令“状态”的响应不包含关键字“Errorcontacting service.It is probably not running”或动物园管理员系统服务器对命令“netstat-nltp|grep 2181”无响应,则认为动物园管理员系统服务器没有进入到领导者选举状态。
方法三,可以使用四字命令"ruok"查看动物园管理员系统服务器,例如“#echo"ruok"|nc 127.0.0.1 2181,若动物园管理员系统服务器响应的信息不包含关键字“imok”,则认为动物园管理员系统服务器进入到领导者选举状态。若动物园管理员系统服务器响应的信息包含关键字“imok”,则认为动物园管理员系统服务器没有进入到领导者选举状态。
对于动物园管理员系统服务器已经进入到领导者选举状态的情况,继续执行步骤102。
对于zookeepe系统服务器没有进入到领导者选举状态的情况,继续采用本步骤内方法一,方法二或方法三查看动物园管理员系统服务器。
步骤102:将动物园管理员系统服务器配置为拒绝动物园管理员系统客户端请求的状态。
所述将动物园管理员系统服务器配置为拒绝动物园管理员系统客户端请求的状态可以采用多种方式实现,本实施例中提供如下所述的四种方法:
方法一,采用国际互联网协议表软件工具增加一条动物园管理员系统服务器过滤表输入链路传输控制协议消息2181目的端口数据包处理动作为丢弃(英文名称:DROP)的配置以拒绝客户端的服务请求,命令如下:iptables-A INPUT-p TCP--dport 2181-j DROP。
方法二,采用国际互联网协议表软件工具增加一条动物园管理员系统服务器破坏表输入链路传输控制协议消息2181目的端口数据包处理动作为丢弃的配置以拒绝客户端的服务请求,命令如下:iptables–t mangle-A INPUT-p TCP--dport 2181-j DROP。
方案三,采用国际互联网协议表软件工具增加一条动物园管理员系统服务器破坏表路由前链路传输控制协议消息2181目的端口数据包处理动作为丢弃的配置以拒绝客户端的服务请求,命令如下:iptables–t mangle-A PREROUTING-p TCP--dport 2181-jDROP。
方案四,采用国际互联网协议表软件工具增加一条动物园管理员系统服务器网络地址转换表路由前链路传输控制协议消息2181目的端口数据包处理动作为丢弃的配置以拒绝客户端的服务请求,命令如下:iptables–t nat-A PREROUTING-p TCP--dport 2181-jDROP。
步骤103:判断动物园管理员系统服务器是否进入对外提供服务的状态,若是,则进入下一步骤。
所述判断动物园管理员系统服务器是否进入对外提供服务的状态可以采用多种方式实现,本实施例提供如下所述的两种方法:
方法一,使用四字命令"ruok"查看动物园管理员系统服务器,例如“#echo"ruok"|nc 127.0.0.1 2181”,若动物园管理员系统服务器响应的信息包含关键字“imok”,则认为动物园管理员系统服务器进入对外提供服务的状态。
若动物园管理员系统服务器响应的信息不包含关键字“imok”,则认为动物园管理员系统服务器没有进入对外提供服务的状态。
方法二,可以使用“状态”命令查看动物园管理员系统服务器,例如“#shzkServer.sh状态”,若服务器响应的信息中模式(英文名称:Mode)参数为“领导者”(英文名称:“leader”)或“追随者”(英文名称:“follower”),例如动物园管理员系统服务器响应的信息为:
JMX enabled by default
Using config:/home/admin/zookeeper-3.4.3/bin/../conf/zoo.cfg
Mode:follower
或
JMX enabled by default
Using config:/home/admin/zookeeper-3.4.3/bin/../conf/zoo.cfg
Mode:leader
则认为动物园管理员系统服务器已经进入对外提供服务的状态。
若动物园管理员系统服务器响应的信息中没有模式为“领导者”或“追随者”的信息,则认为动物园管理员系统服务器没有进入对外提供服务的状态。
对于动物园管理员系统服务器进入对外提供服务的状态的情况,继续执行步骤104。
对于动物园管理员系统服务器没有进入对外提供服务的状态的情况,继续使用本步骤中方法一或方法二查看动物园管理员系统服务器。
步骤104:将动物园管理员系统服务器配置为重新接收客户端请求的状态。
本步骤需要根据步骤102中对动物园管理员系统服务器进行配置的具体方 法不同,采用不同的方法,即不同的命令参数组合清除步骤102中对动物园管理员系统服务器所实施的拒绝客户端服务请求的配置,以使动物园管理员系统服务器重新接收处理客户端的服务请求。
方法一,对于在步骤102中方法一采用国际互联网协议表软件工具增加一条动物园管理员系统服务器过滤表输入链路传输控制协议消息2181目的端口数据包处理动作为丢弃的配置以拒绝客户端的服务请求的情况,即在步骤102中使用命令参数组合“iptables-A INPUT-p TCP--dport 2181-j DROP”的情况,采用国际互联网协议表软件工具删除所述动物园管理员系统服务器过滤表输入链路传输控制协议消息2181目的端口数据包处理动作为丢弃的配置以使动物园管理员系统服务器重新接收处理客户端的服务请求,具体命令参数组合为:iptables-D INPUT-p TCP--dport 2181-j DROP。
方法二,对于在步骤102中方法二采用国际互联网协议表软件工具增加一条动物园管理员系统服务器破坏表输入链路传输控制协议消息2181目的端口数据包处理动作为丢弃的配置以拒绝客户端的服务请求的情况,即在步骤102中采用命令参数组合“iptables–t mangle-A INPUT-p TCP--dport 2181-j DROP”的情况。采用国际互联网协议表软件工具删除所述动物园管理员系统服务器破坏表输入链路传输控制协议消息2181目的端口数据包处理动作为丢弃的配置以使动物园管理员系统服务器重新接收处理客户端的服务请求。具体命令参数组合为:iptables–t mangle-D INPUT-p TCP--dport 2181-jDROP。
方法三,对于在步骤102中方法三采用国际互联网协议表软件工具增加一条动物园管理员系统服务器破坏表路由前链路传输控制协议消息2181目的端口数据包处理动作为丢弃的配置以拒绝客户端的服务请求的情况,即在步骤102中采用命令参数组合“iptables–t mangle-A PREROUTING-p TCP--dport 2181-j DROP”的情况,采用国际互联网协议表软件工具删除所述动物园管理员系统服务器破坏表路由前链路传输控制协议消息2181目的端口数据包处理动作为丢弃的配置以使动物园管理员系统服务器器重新接收处理客户端的服务请求。具体命令参数组合为:iptables–t mangle-D PREROUTING-pTCP--dport 2181-j DROP。
方法四,对于在步骤102中方法四采用国际互联网协议表软件工具增加一条动物园管理员系统服务器网络地址转换表路由前链路传输控制协议消息 2181目的端口数据包处理动作为丢弃的配置以拒绝客户端的服务请求的情况,即在步骤102中采用命令参数组合“iptables–t nat-A PREROUTING-p TCP--dport 2181-j DROP”的情况,采用国际互联网协议表软件工具删除所述动物园管理员系统服务器网络地址转换表路由前链路传输控制协议消息2181目的端口数据包处理动作为丢弃的配置以使动物园管理员系统服务器器重新接收处理客户端的服务请求。具体命令参数组合为:iptables–t nat-D PREROUTING-pTCP--dport 2181-j DROP。
在该实施例提供的技术方案中,当动物园管理员系统服务器进入领导者选举状态时,在动物园管理员系统服务器的数据包表和链路上针对动物园管理员系统客户端请求数据包设置丢弃的动作配置,使得动物园管理员系统服务器不再接收客户端的服务请求,当领导者选举结束,动物园管理员系统服务器重新对外提供服务后,清除动物园管理员系统服务器此前实施的配置,使得动物园管理员系统服务器重新接收客户端的服务请求。这样当动物园管理员系统服务器进入到领导者选举状态时,不再接收客户端的请求进行记录、查询、响应等工作,可以使动物园管理员系统服务器专注于领导者选举程序的执行,即客户端发来的请求不会拖延干扰服务器领导者选举程序的执行,达到保障动物园管理员系统服务器领导者选举程序快速顺利执行完成的效果。
本发明第二实施例提供一种保障动物园管理员系统快速完成领导者选举的装置,结构框图如图2所示,该装置能够完成上述第一实施例所述的保障动物园管理员系统快速完成领导者选举的方法。
该装置包括领导者选举状态判断单元U201、拒绝客户端请求配置单元U202、对外提供服务状态判断单元U203、接收客户端请求配置单元U204。
所述领导者选举状态判断单元U201用于判断动物园管理员系统服务器是否进入领导者选举状态。该单元按照第一实施例中步骤101所述的方法判断动物园管理员系统服务器是否进入领导者选举状态,当判断动物园管理员系统服务器没有进入领导者选举状态时,该单元反复按照第一实施例中步骤101所述的方法判断动物园管理员系统服务器是否进入领导者选举状态;当判断动物园管理员系统服务器进入领导者选举状态后,该单元向拒绝客户端请求配置单元U202发送启动信号,指示拒绝客户端请求配置单元U202执行操作。
所述拒绝客户端请求配置单元U202用于将动物园管理员系统服务器配置为 拒绝动物园管理员系统客户端请求的状态。该单元接收到领导者选举状态判断单元U201发送的启动信号后,按照第一实施例中步骤102所述的方法将动物园管理员系统服务器配置为拒绝动物园管理员系统客户端请求的状态,而后向对外提供服务状态判断单元U203发送启动信号,指示对外提供服务状态判断单元U203执行操作。
所述对外提供服务状态判断单元U203用于判断动物园管理员系统服务器是否进入对外提供服务的状态。该单元接收到拒绝客户端请求配置单元U202发送的启动信号后,按照第一实施例中步骤103所述的方法判断动物园管理员系统服务器是否进入对外提供服务的状态,当判断动物园管理员系统服务器没有进入对外提供服务的状态时,该单元反复按照第一实施例中步骤103所述的方法判断动物园管理员系统服务器是否进入对外提供服务的状态,当判断动物园管理员系统服务器进入对外提供服务的状态后,该单元向接收客户端请求配置单元U204发送启动信号,指示接收客户端请求配置单元U204执行操作。
所述接收客户端请求配置单元U204用于将动物园管理员系统服务器配置为重新接收客户端请求的状态。该单元接收到对外提供服务状态判断单元U203发送的启动信号后,按照第一实施例中步骤104所述的方法将动物园管理员系统服务器配置为重新接收客户端请求的状态。
该实施例提供的装置能够判断出动物园管理员系统服务器进入领导者选举状态的情况,并将动物园管理员服务器配置为拒绝客户端请求的状态;该装置还能够判断出动物园管理员系统服务器完成领导者选举重新进入对外提供服务的状态的情况,并将动物园管理员服务器配置为重新接收客户端请求的状态。达到保障动物园管理员系统服务器快速领导者选举、尽快提供服务的效果。
本发明第三实施例提供一种保障动物园管理员系统快速完成领导者选举的系统,包括中央处理器,存储器,输入和输出设备。所述存储器中存储有软件程序,启动该软件程序,可以按照本发明第一实施例中所述的方法执行。
本发明虽然以较佳实施例公开如上,但其并不是用来限定本发明,任何本领域技术人员在不脱离本发明的精神和范围内,都可以做出可能的变动和修改,因此本发明的保护范围应当以本发明权利要求所界定的范围为准。
Claims (18)
1.一种保障动物园管理员系统快速完成领导者选举的方法,其特征在于包括以下步骤:
判断动物园管理员系统服务器是否进入领导者选举状态,若是,则进入下一步骤;
将动物园管理员系统服务器配置为拒绝动物园管理员系统客户端请求的状态;
判断动物园管理员系统服务器是否进入对外提供服务的状态,若是,则进入下一步骤;
将动物园管理员系统服务器配置为重新接收客户端请求的状态。
2.根据权利要求1所述的保障动物园管理员系统快速完成领导者选举的方法,其特征在于,
所述将动物园管理员系统服务器配置为拒绝动物园管理员系统客户端请求的状态的方法为:配置动物园管理员系统服务器的过滤或破坏表输入链路的数据包处理动作为丢弃;
所述将动物园管理员系统服务器配置为重新接收客户端请求的状态的方法为:清除所述动物园管理员系统服务器的过滤或破坏表输入链路的数据包处理动作为丢弃的配置。
3.根据权利要求2所述的保障动物园管理员系统快速完成领导者选举的方法,其特征在于,
所述配置动物园管理员系统服务器的过滤或破坏表输入链路的数据包处理动作为丢弃的方法为:配置动物园管理员系统服务器的过滤或破坏表输入链路传输控制协议消息特定目的端口的数据包处理动作为丢弃;
所述清除动物园管理员系统服务器的过滤或破坏表输入链路数据包处理动作为丢弃的配置的方法为:清除所述动物园管理员系统服务器的过滤或破坏表输入链路传输控制协议消息特定目的端口的数据包处理动作为丢弃的配置;
其中,传输控制协议消息特定目的端口为动物园管理员系统服务器接受客户端请求的传输控制协议消息的端口。
4.根据权利要求3所述的保障动物园管理员系统快速完成领导者选举的方法,其特征在于,
所述配置动物园管理员系统服务器的过滤或破坏表输入链路传输控制协议消息特定目的端口的数据包处理动作为丢弃的方法为:增加动物园管理员系统服务器的过滤或破坏表输入链路传输控制协议消息特定目的端口的数据包处理动作丢弃;
所述清除动物园管理员系统服务器的过滤或破坏表输入链路传输控制协议消息特定目的端口的数据包处理动作为丢弃的配置的方法为:删除所述动物园管理员系统服务器的过滤或破坏表输入链路传输控制协议消息特定目的端口的数据包处理动作丢弃的配置。
5.根据权利要求4所述的保障动物园管理员系统快速完成领导者选举的方法,其特征在于,
所述增加动物园管理员系统服务器的过滤或破坏表输入链路传输控制协议消息特定目的端口的数据包处理动作丢弃的方法为:采用国际互联网协议表软件工具增加动物园管理员系统服务器的过滤或破坏表输入链路传输控制协议消息特定目的端口的数据包处理动作丢弃;
所述删除动物园管理员系统服务器的过滤或破坏表输入链路传输控制协议消息特定目的端口的数据包处理动作丢弃的配置的方法为:采用国际互联网协议表软件工具删除所述动物园管理员系统服务器的过滤或破坏表输入链路传输控制协议消息特定目的端口的数据包处理动作丢弃的配置。
6.根据权利要求3所述的保障动物园管理员系统快速完成领导者选举的方法,其特征在于,所述动物园管理员系统服务器接受客户端请求的传输控制协议消息的端口为2181。
7.根据权利要求1所述的保障动物园管理员系统快速完成领导者选举的方法,其特征在于,
所述将动物园管理员系统服务器配置为拒绝动物园管理员系统客户端请求的状态的方法为:配置动物园管理员系统服务器的网络地址转换或破坏表路由前链路的数据包处理动作为丢弃;
所述将动物园管理员系统服务器配置为重新接受客户端请求的状态的方法为:清除所述动物园管理员系统服务器的网络地址转换或破坏表路由前链路的数据包处理动作为丢弃的配置。
8.根据权利要求7所述的保障动物园管理员系统快速完成领导者选举的方法,其特征在于,
所述配置动物园管理员系统服务器的网络地址转换或破坏表路由前链路的数据包处理动作为丢弃的方法为:配置动物园管理员系统服务器的网络地址转换或破坏表路由前链路传输控制协议消息特定目的端口的数据包处理动作为丢弃;
所述清除动物园管理员系统服务器的网络地址转换或破坏表路由前链路的数据包处理动作为丢弃的配置的方法为:清除所述动物园管理员系统服务器的网络地址转换或破坏表路由前链路传输控制协议消息特定目的端口的数据包处理动作为丢弃的配置;
传输控制协议消息特定目的端口为动物园管理员系统服务器接受客户端请求的传输控制协议消息的端口。
9.根据权利要求8所述的保障动物园管理员系统快速完成领导者选举的方法,其特征在于,
所述配置动物园管理员系统服务器的网络地址转换或破坏表路由前链路传输控制协议消息特定目的端口的数据包处理动作为丢弃的方法为:增加动物园管理员系统服务器的网络地址转换或破坏表路由前链路传输控制协议消息特定目的端口的数据包处理动作丢弃;
所述清除动物园管理员系统服务器的网络地址转换或破坏表路由前链路传输控制协议消息特定目的端口的数据包处理动作为丢弃的配置的方法为:删除所述动物园管理员系统服务器的网络地址转换或破坏表路由前链路传输控制协议消息特定目的端口的数据包处理动作丢弃的配置。
10.根据权利要求9所述的保障动物园管理员系统快速完成领导者选举的方法,其特征在于,
所述增加动物园管理员系统服务器的网络地址转换或破坏表路由前链路传输控制协议消息特定目的端口的数据包处理动作为丢弃的方法为:采用国际互联网协议表软件工具增加动物园管理员系统服务器的网络地址转换或破坏表路由前链路传输控制协议消息特定目的端口的数据包处理动作丢弃;
所述删除动物园管理员系统服务器的网络地址转换或破坏表路由前链路传输控制协议消息特定目的端口的数据包处理动作为丢弃的配置的方法为:采用国际互联网协议表软件工具删除所述动物园管理员系统服务器的网络地址转换或破坏表路由前链路传输控制协议消息特定目的端口的数据包处理动作丢弃的配置。
11.根据权利要求8所述的保障动物园管理员系统快速完成领导者选举的方法,其特征在于,所述动物园管理员系统服务器接受客户端请求的传输控制协议消息的端口为2181。
12.根据权利要求1至11任一权利要求所述的保障动物园管理员系统快速完成领导者选举的方法,其特征在于,
所述判断动物园管理员系统服务器是否进入领导者选举状态的方法为:启动监控程序,检查动物园管理员输出日志文件,若当前正在输出打印包含有表示“领导者选举”的信息则动物园管理员系统服务器进入到领导者选举状态。
13.根据权利要求1至11任一权利要求所述的保障动物园管理员系统快速完成领导者选举的方法,其特征在于,
所述判断动物园管理员系统服务器是否进入领导者选举状态的方法为:启动监控程序,使用状态命令查看动物园管理员系统服务器的状态,若服务器响应的信息中包含有表示“与服务联系时出错,服务可能未运行”的信息,并且动物园管理员系统服务器接收客户端请求的端口仍然存活则动物园管理员系统服务器进入到领导者选举状态。
14.根据权利要求1至11任一权利要求所述的保障动物园管理员系统快速完成领导者选举的方法,其特征在于,
所述判断动物园管理员系统服务器是否进入领导者选举状态的方法为:启动监控程序,使用四字命令"ruok"查看动物园管理员系统服务器,若服务器响应的信息不含有关键字"imok"则动物园管理员系统服务器进入到领导者选举状态。
15.根据权利要求1至11任一权利要求所述的保障动物园管理员系统快速完成领导者选举的方法,其特征在于,
所述判断动物园管理员系统服务器是否进入对外提供服务的状态的方法为:使用四字命令"ruok"查看动物园管理员系统服务器,若服务器响应信息包含关键字"imok",则动物园管理员系统服务器进入到对外提供服务的状态。
16.根据权利要求1至11任一权利要求所述的保障动物园管理员系统快速完成领导者选举的方法,其特征在于,
所述判断动物园管理员系统服务器是否进入对外提供服务的状态的方法为:使用状态命令查看动物园管理员系统服务器的状态,若服务器响应的模式信息为关键字“追随者”或“领导者”,则动物园管理员系统服务器进入到对外提供服务的状态。
17.一种保障动物园管理员系统快速完成领导者选举的装置,包括:
领导者选举状态判断单元,用于判断动物园管理员系统服务器是否进入领导者选举状态;
拒绝客户端请求配置单元,用于将动物园管理员系统服务器配置为拒绝动物园管理员系统客户端请求的状态;
对外提供服务状态判断单元,用于判断动物园管理员系统服务器是否进入对外提供服务的状态;
接收客户端请求配置单元,用于将动物园管理员系统服务器配置为重新接收客户端请求的状态。
18.一种保障动物园管理员系统快速完成领导者选举的系统,包括:中央处理器,存储器,输入和输出设备,其特征在于,所述存储器中存储有软件程序,启动此软件程序,能够按照权利要求1至16所述的保障动物园管理员系统快速完成领导者选举的方法运行。
Priority Applications (4)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510165922.2A CN106161533B (zh) | 2015-04-09 | 2015-04-09 | 一种保障动物园管理员系统快速完成领导者选举的方法,装置及系统 |
TW104129024A TW201637417A (zh) | 2015-04-09 | 2015-09-02 | 一種保障動物園管理員系統快速完成領導者選舉的方法、裝置及系統 |
US15/093,286 US20160301587A1 (en) | 2015-04-09 | 2016-04-07 | Apparatus, system and method for fast leader election by coordination service |
PCT/US2016/026398 WO2016164553A1 (en) | 2015-04-09 | 2016-04-07 | Apparatus, system and method for fast leader election by coordination service |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201510165922.2A CN106161533B (zh) | 2015-04-09 | 2015-04-09 | 一种保障动物园管理员系统快速完成领导者选举的方法,装置及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN106161533A CN106161533A (zh) | 2016-11-23 |
CN106161533B true CN106161533B (zh) | 2019-09-10 |
Family
ID=57072085
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201510165922.2A Active CN106161533B (zh) | 2015-04-09 | 2015-04-09 | 一种保障动物园管理员系统快速完成领导者选举的方法,装置及系统 |
Country Status (4)
Country | Link |
---|---|
US (1) | US20160301587A1 (zh) |
CN (1) | CN106161533B (zh) |
TW (1) | TW201637417A (zh) |
WO (1) | WO2016164553A1 (zh) |
Families Citing this family (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106685706A (zh) * | 2016-12-14 | 2017-05-17 | 深圳中顺易金融服务有限公司 | 一种基于Zookeeper的配置更新方法及系统 |
CN108810142A (zh) * | 2018-06-13 | 2018-11-13 | 平安科技(深圳)有限公司 | Zookeeper的监控方法、装置、计算机设备及存储介质 |
CN109861887B (zh) * | 2019-02-27 | 2020-08-28 | 浪潮云信息技术股份公司 | 一种基于Zookeeper的OpenTsdb服务指标聚合方法 |
US20200402170A1 (en) * | 2019-06-19 | 2020-12-24 | Chicago Mercantile Exchange Inc. | Deterministic Message Processing in a Distributed Network |
CN112068939A (zh) * | 2020-08-24 | 2020-12-11 | 浙江知水信息技术有限公司 | 一种多预警服务调度的方法及系统 |
CN113055461B (zh) * | 2021-03-09 | 2022-08-30 | 中国人民解放军军事科学院国防科技创新研究院 | 一种基于ZooKeeper的无人集群分布式协同指挥控制方法 |
CN113342483B (zh) * | 2021-03-16 | 2024-05-10 | 江苏大学 | 一种基于Raft的分布式任务调度系统 |
CN113873005B (zh) * | 2021-08-20 | 2023-12-19 | 浙江中控技术股份有限公司 | 一种微服务集群的节点选主方法、系统、设备及介质 |
CN116775382B (zh) * | 2023-08-21 | 2023-10-27 | 江苏拓浦高科技有限公司 | 基于ZooKeeper分布式协调服务的主备服务器切换方法及系统 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7139790B1 (en) * | 1999-08-17 | 2006-11-21 | Microsoft Corporation | Weak leader election |
CN101175013A (zh) * | 2006-11-03 | 2008-05-07 | 飞塔信息科技(北京)有限公司 | 一种拒绝服务攻击防护方法、网络系统和代理服务器 |
Family Cites Families (5)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7035918B1 (en) * | 1999-09-03 | 2006-04-25 | Safenet Canada. Inc. | License management system and method with multiple license servers |
US7065547B2 (en) * | 2000-03-09 | 2006-06-20 | Persels Conrad G | Integrated on-line system with enchanced data transfer protocol |
US6594044B1 (en) * | 2000-03-15 | 2003-07-15 | Lucent Technologies Inc. | Apparatus and method for automatic port identity discovery in heterogenous optical communications systems |
WO2002079905A2 (en) * | 2001-04-02 | 2002-10-10 | Akamai Technologies, Inc. | Scalable, high performance and highly available distributed storage system for internet content |
US20080071878A1 (en) * | 2006-09-18 | 2008-03-20 | Reuter James M | Method and system for strong-leader election in a distributed computer system |
-
2015
- 2015-04-09 CN CN201510165922.2A patent/CN106161533B/zh active Active
- 2015-09-02 TW TW104129024A patent/TW201637417A/zh unknown
-
2016
- 2016-04-07 US US15/093,286 patent/US20160301587A1/en not_active Abandoned
- 2016-04-07 WO PCT/US2016/026398 patent/WO2016164553A1/en active Application Filing
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7139790B1 (en) * | 1999-08-17 | 2006-11-21 | Microsoft Corporation | Weak leader election |
CN101175013A (zh) * | 2006-11-03 | 2008-05-07 | 飞塔信息科技(北京)有限公司 | 一种拒绝服务攻击防护方法、网络系统和代理服务器 |
Also Published As
Publication number | Publication date |
---|---|
US20160301587A1 (en) | 2016-10-13 |
CN106161533A (zh) | 2016-11-23 |
TW201637417A (zh) | 2016-10-16 |
WO2016164553A1 (en) | 2016-10-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN106161533B (zh) | 一种保障动物园管理员系统快速完成领导者选举的方法,装置及系统 | |
US8843605B2 (en) | Method and system for filtering and suppression of telemetry data | |
JP3372455B2 (ja) | パケット中継制御方法,パケット中継装置およびプログラム記憶媒体 | |
US9967165B2 (en) | Methods, systems, and computer readable media for packet monitoring in a virtual environment | |
US7487384B2 (en) | Analysis of pipelined networks | |
CN104639374B (zh) | 一种应用程序部署管理系统 | |
JP4851595B2 (ja) | 目標ipネットワークの論理的配備、配備解除、及び監視のための方法 | |
CN110557437B (zh) | 基于自定义协议的普适性拟态分发表决调度装置及方法 | |
WO2022179140A1 (zh) | 一种数据处理方法及系统 | |
CN104219327B (zh) | 一种分布式缓存系统 | |
US10623278B2 (en) | Reactive mechanism for in-situ operation, administration, and maintenance traffic | |
JP2003501879A (ja) | ネットワーク障害分離 | |
CN105607590A (zh) | 用于在过程控制系统中提供冗余性的方法和装置 | |
CN108683553A (zh) | 故障注入的方法和装置 | |
WO2000047003A1 (en) | Method, system and computer program product for adaptive logging | |
US20030036896A1 (en) | Apparatus for simulating communications equipment | |
US6697751B2 (en) | Apparatus for assessing communication equipment | |
US10419392B2 (en) | Method, device and system for implementing address sharing | |
CN104378449A (zh) | 一种虚拟ip的实现方法 | |
DE60313026T2 (de) | Verfahren und gerät zur verteilung von datenpaketen von einem computer zu einem clustersystem | |
US8055746B2 (en) | Method and system for improved management of a communication network by extending the simple network management protocol | |
CN110087107A (zh) | 一种提高系统自适应能力的方法和视联网系统 | |
CN114205218A (zh) | 一种容器网络故障的诊断方法和系统 | |
CN112003748B (zh) | 适用于虚拟网关的故障处理方法、系统、装置和存储介质 | |
JP5304200B2 (ja) | ネットワーク管理システム、ネットワーク管理方法、マネージャおよびエージェント |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |