一种管理服务器集群的方法及装置制造方法及图纸

技术编号:20119232 阅读:45 留言:0更新日期:2019-01-16 12:19
本发明专利技术的实施例公开一种管理服务器集群的方法及装置,涉及集群管理技术,能够服务器集群的资源利用率。所述管理服务器集群的方法包括:在触发启动基于分布式推送策略的服务器后,同步启动的所述基于分布式推送策略的服务器的本地数据库;检测启动的所述基于分布式推送策略的服务器是否为所属服务器集群中的主服务器,若启动的所述基于分布式推送策略的服务器为主服务器,通过同步的所述本地数据库向外提供服务,所述服务器集群中启动有多个主服务器;开启预先设置的监控进程,监控所述服务器集群中其他服务器的连接状态,并依据监控得到的连接状态更新所述连接状态对应的服务器列表。本发明专利技术适用于对采用分布式推送策略的多台服务器进行管理。

A Method and Device for Management of Server Cluster

The embodiment of the present invention discloses a method and device for managing server cluster, which relates to cluster management technology and can utilize resource of server cluster. The method of managing server cluster includes: starting the local database of the server based on distributed push strategy synchronously after triggering the server based on distributed push strategy; detecting whether the server based on distributed push strategy is the main server in the cluster of servers to which it belongs if the server based on distributed push strategy is started. The server serves as the main server by synchronizing the local database. The server cluster has multiple primary servers; the pre-set monitoring process is opened to monitor the connection status of other servers in the server cluster, and the server list corresponding to the connection status is updated according to the connection status monitored. The invention is suitable for managing multiple servers adopting distributed push strategy.

【技术实现步骤摘要】
一种管理服务器集群的方法及装置
本专利技术涉及集群管理技术,尤其涉及一种管理服务器集群的方法及装置。
技术介绍
随着计算机技术以及互联网通信技术的不断发展,使得互联网页面提供的内容越来越丰富,由于在浏览器中通过超文本传输协议(HTTP,HyperTextTransferProtocol)仅能实现单向的通信,使得浏览器需要不断的向服务器发出请求才能实现准实时交互,需要占用较多的带宽资源,而随着客户端(浏览器)对服务器的实时性要求越来越高,导致HTTP方式在某些应用场景内已经不能满足用户的实时性需求。为了提升用户的实时性体验,提出了基于WebSocket技术的分布式推送服务,其中,WebSocket是基于HTML5的协议,能够实现浏览器与服务器的全双工通信(full-duplex),从而无需浏览器向服务器发送请求,服务器能够主动向浏览器推送服务,适用于各类需要实时推送的业务功能,例如:聊天室、页面通知、实时公告、动态座位表等。目前,为了提升实时推送服务的服务器的可靠性,基于分布式推送策略的多台服务器组成一服务器集群,并对服务器集群内各服务器进行管理,即在服务器集群内,设置包含有一主(master)服务器以及一台或多台从(slave)服务器,主服务器向外提供服务,从服务器监控主服务器的运行状态,并与主服务器保持数据同步,在监测到主服务器发生异常后,按照预先设置的选举策略,选举一从服务器接管发生异常的主服务器,并负责向外提供服务。但该管理服务器集群内服务器的方法,一台或多台从服务器作为主服务器的备份服务器,只有在主服务发生异常时才选举一从服务器接管主服务器,使得从服务器的资源得不到有效利用,导致服务器集群的资源利用率较低;进一步地,由主服务器向外提供服务,在服务请求较多或需要推送服务的浏览器数量较多的情况下,可能会导致主服务器的响应速度或推送速度变慢,从而降低了主服务器的服务效率。
技术实现思路
有鉴于此,本专利技术实施例提供一种管理服务器集群的方法及装置,能够提升服务器集群的资源利用率,以解决现有基于分布式推送策略的管理服务器集群的方法中,从服务器的资源得不到有效利用导致的服务器集群的资源利用率较低的问题。第一方面,本专利技术实施例提供一种管理服务器集群的方法,包括:在触发启动基于分布式推送策略的服务器后,同步启动的所述基于分布式推送策略的服务器的本地数据库;检测启动的所述基于分布式推送策略的服务器是否为所属服务器集群中的主服务器,若启动的所述基于分布式推送策略的服务器为主服务器,通过同步的所述本地数据库向外提供服务,所述服务器集群中启动有多个主服务器;开启启动的所述基于分布式推送策略的服务器中预先设置的监控进程,监控所述服务器集群中除启动的所述基于分布式推送策略的服务器之外的其他服务器的连接状态,并依据监控得到的连接状态更新所述连接状态对应的服务器列表。结合第一方面,在第一方面的第一种实施方式中,所述同步启动的所述基于分布式推送策略的服务器的本地数据库包括:构建与所属服务器集群中除启动的所述基于分布式推送策略的服务器之外的其它运行的服务器的TCP长连接;通过所述TCP长连接接收所述服务器集群中的数据库更新消息,依据所述数据库更新消息更新本地数据库。结合第一方面,在第一方面的第二种实施方式中,在所述在触发启动基于分布式推送策略的服务器后之后,同步启动的所述基于分布式推送策略的服务器的本地数据库之前,所述方法还包括:判断是否已注册到服务器集群,如果是,执行所述同步启动的所述基于分布式推送策略的服务器的本地数据库的步骤;如果不是,向所述服务器集群中任一主服务器发送加入请求,如果所述加入请求通过认证,执行所述同步启动的所述基于分布式推送策略的服务器的本地数据库的步骤。结合第一方面的第二种实施方式,在第一方面的第三种实施方式中,所述向所述服务器集群中任一主服务器发送加入请求,如果所述加入请求通过认证包括:主服务器接收加入请求,在加入请求认证通过后,将发送加入请求的服务器信息添加至本地数据库中的服务器列表中,将添加服务器信息的服务器列表携带在加入请求中,返回至发送加入请求的服务器,将发送加入请求的服务器信息封装为数据库更新消息,在所述服务器集群中进行广播。结合第一方面、第一方面的第一种至第三种中任一种实施方式,在第一方面的第四种实施方式中,所述检测是否为所属服务器集群中的主服务器包括:根据已同步的本地数据库中的服务器列表,检测是否为所属服务器集群中的主服务器。结合第一方面、第一方面的第一种至第三种中任一种实施方式,在第一方面的第五种实施方式中,所述监控所述服务器集群中其他服务器的连接状态,并依据监控得到的连接状态更新所述连接状态对应的服务器列表包括:按照预先设置的心跳周期向所述服务器集群中的其他服务器发送ping请求;如果在预先设置的心跳检测时间阈值内未收到服务器返回的ping请求响应,将未返回ping请求响应的服务器从所述服务器列表中删除,得到更新服务器列表;将所述更新服务器列表推送至所述更新服务器列表中包含的各服务器。结合第一方面的第五种实施方式,在第一方面的第六种实施方式中,在所述如果在预先设置的心跳检测时间阈值内未收到服务器返回的ping请求响应之后,将未返回ping请求响应的服务器从所述服务器列表中删除之前,所述方法还包括:向未返回ping请求响应的服务器依次发送ping请求,如果在预先设置的心跳检测时间阈值内未收到ping请求响应的次数达到预先设置的心跳检测次数阈值,执行所述将未返回ping请求响应的服务器从所述服务器列表中删除的步骤。结合第一方面、第一方面的第一种至第三种中任一种实施方式,在第一方面的第七种实施方式中,所述方法还包括:若检测到自身为所属服务器集群中的从服务器,则按照预先设置的更新周期,从运行正常的主服务器同步本地数据库,并在监测到主服务器发生异常后,利用预先设置的选举策略选举一从服务器,替代发生异常的主服务器。第二方面,本专利技术实施例提供一种管理服务器集群的装置,包括:同步模块、检测模块以及进程监控模块,其中,同步模块,用于在触发启动基于分布式推送策略的服务器后,同步启动的所述基于分布式推送策略的服务器的本地数据库;检测模块,用于检测启动的所述基于分布式推送策略的服务器是否为所属服务器集群中的主服务器,若启动的所述基于分布式推送策略的服务器为主服务器,通过同步的所述本地数据库向外提供服务,所述服务器集群中启动有多个主服务器;进程监控模块,用于开启启动的所述基于分布式推送策略的服务器中预先设置的监控进程,监控所述服务器集群中除启动的所述基于分布式推送策略的服务器之外的其他服务器的连接状态,并依据监控得到的连接状态更新所述连接状态对应的服务器列表。结合第二方面,在第二方面的第一种实施方式中,所述同步模块包括:启动单元、连接单元以及同步单元,其中,启动单元,用于在在触发启动基于分布式推送策略的服务器后,通知链接单元;连接单元,用于构建与所属服务器集群中除启动的所述基于分布式推送策略的服务器之外的其它运行的服务器的TCP长连接;同步单元,用于通过所述TCP长连接接收所述服务器集群中的数据库更新消息,依据所述数据库更新消息更新本地数据库。本专利技术实施例提供的一种管理服务器集群的方法及装置,通过在触发启动本文档来自技高网
...

【技术保护点】
1.一种管理服务器集群的方法,其特征在于,包括:在触发启动基于分布式推送策略的服务器后,同步启动的所述基于分布式推送策略的服务器的本地数据库;检测启动的所述基于分布式推送策略的服务器是否为所属服务器集群中的主服务器,若启动的所述基于分布式推送策略的服务器为主服务器,通过同步的所述本地数据库向外提供服务,所述服务器集群中启动有多个主服务器;开启启动的所述基于分布式推送策略的服务器中预先设置的监控进程,监控所述服务器集群中除启动的所述基于分布式推送策略的服务器之外的其他服务器的连接状态,并依据监控得到的连接状态更新所述连接状态对应的服务器列表。

【技术特征摘要】
1.一种管理服务器集群的方法,其特征在于,包括:在触发启动基于分布式推送策略的服务器后,同步启动的所述基于分布式推送策略的服务器的本地数据库;检测启动的所述基于分布式推送策略的服务器是否为所属服务器集群中的主服务器,若启动的所述基于分布式推送策略的服务器为主服务器,通过同步的所述本地数据库向外提供服务,所述服务器集群中启动有多个主服务器;开启启动的所述基于分布式推送策略的服务器中预先设置的监控进程,监控所述服务器集群中除启动的所述基于分布式推送策略的服务器之外的其他服务器的连接状态,并依据监控得到的连接状态更新所述连接状态对应的服务器列表。2.根据权利要求1所述的管理服务器集群的方法,其特征在于,所述同步启动的所述基于分布式推送策略的服务器的本地数据库包括:构建与所属服务器集群中除启动的所述基于分布式推送策略的服务器之外的其它运行的服务器的TCP长连接;通过所述TCP长连接接收所述服务器集群中的数据库更新消息,依据所述数据库更新消息更新本地数据库。3.根据权利要求1所述的管理服务器集群的方法,其特征在于,在所述在触发启动基于分布式推送策略的服务器后之后,同步启动的所述基于分布式推送策略的服务器的本地数据库之前,所述方法还包括:判断是否已注册到服务器集群,如果是,执行所述同步启动的所述基于分布式推送策略的服务器的本地数据库的步骤;如果不是,向所述服务器集群中任一主服务器发送加入请求,如果所述加入请求通过认证,执行所述同步启动的所述基于分布式推送策略的服务器的本地数据库的步骤。4.根据权利要求3所述的管理服务器集群的方法,其特征在于,所述向所述服务器集群中任一主服务器发送加入请求,如果所述加入请求通过认证包括:主服务器接收加入请求,在加入请求认证通过后,将发送加入请求的服务器信息添加至本地数据库中的服务器列表中,将添加服务器信息的服务器列表携带在加入请求中,返回至发送加入请求的服务器,将发送加入请求的服务器信息封装为数据库更新消息,在所述服务器集群中进行广播。5.根据权利要求1至4任一项所述的管理服务器集群的方法,其特征在于,所述检测是否为所属服务器集群中的主服务器包括:根据已同步的本地数据库中的服务器列表,检测是否为所属服务器集群中的主服务器。6.根据权利要求1至4任一项所述的管理服务器集群的方法,其特征在于,所述监控所述服务器集群中其他服务器的连接状态,并依据监控得到的连接状态更新所述连接状态对应的服务器...

【专利技术属性】
技术研发人员:孙少磊燕卓李璟
申请(专利权)人:北京微影时代科技有限公司
类型:发明
国别省市:北京,11

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1