[发明专利]一种分布式系统中命令分发方法、装置及系统有效
申请号: | 201610110755.6 | 申请日: | 2016-02-29 |
公开(公告)号: | CN107135240B | 公开(公告)日: | 2020-12-15 |
发明(设计)人: | 吴国军;黄西华;刘存伟 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | H04L29/08 | 分类号: | H04L29/08 |
代理公司: | 广州三环专利商标代理有限公司 44202 | 代理人: | 郝传鑫;熊永强 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 分布式 系统 命令 分发 方法 装置 | ||
本发明实施例公开一种分布式系统中命令分发方法、装置及系统,该方法包括:接收客户端发送的携带有命令类型的第一命令;当第一命令的命令类型用于指示第一命令为读命令时,根据预设规则从服务器集群中选取一个服务器作为目标服务器,服务器集群包括分布式系统中的所有服务器或存储有第一命令所需操作数据的服务器;发送第一命令至目标服务器,以触发目标服务器执行第一命令。实施本发明实施例,可以降低服务器集群中主服务器上的负载。
技术领域
本发明涉及计算机技术领域,尤其涉及一种分布式系统中命令分发方法、装置及系统。
背景技术
在分布式系统中,为了保证分布式系统的容灾性,需要保证服务器集群(即处于分布式系统中的所有服务器)中每个服务器数据的一致性。其中,为了保证服务器集群中每个服务器数据的一致性,将从服务器集群中选择一个服务器作为主服务器,并将其余的服务器作为从服务器,主服务器负责接收客户端发送的命令,当主服务器接收的命令为写命令时,主服务器执行这个命令,并将这个命令通过异步的方式发送给所有从服务器执行。当主服务器接收的命令为读命令时,由于主服务器中的数据包括所有备份数据,因此,主服务器将直接执行这个命令。然而,由于读命令只能在主服务器上执行,将会导致主服务器的负载过高。
发明内容
本申请中的术语“第一”、“第二”等仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括一个或者更多个该特征。在本发明的描述中,除非另有说明,“多个”的含义是两个或两个以上。本申请中的术语“和/或”,仅仅是一种描述关联对象的关联关系,表示可以存在三种关系,例如,A和/或B,可以表示:单独存在A,同时存在A和B,单独存在B这三种情况。另外,本文中字符“/”,一般表示前后关联对象是一种“或”的关系。
本发明实施例公开了一种分布式系统中命令分发方法、装置及系统,用于降低服务器集群中主服务器上的负载。
本实施例第一方面公开一种命令分发方法,包括:接收客户端发送的携带有命令类型的第一命令,当第一命令的命令类型用于指示第一命令为读命令时,将根据预设规则从服务器集群中选取一个服务器作为目标服务器,以及发送第一命令至目标服务器,以便目标服务器执行第一命令,即目标服务器读取第一命令所要读取的数据并发送给本端;服务器集群可以包括分布式系统中的所有服务器,也可以包括存储有第一命令所需操作数据的服务器。由于目标服务器是从服务器集群中按照预设规则选取的一个服务器,可以为服务器集群中的主服务器,也可以为服务器集群中的从服务器,因此,读命令不一定全部发送至服务器集群中的主服务器执行,可以减少服务器集群中的主服务器上执行的读命令的数量,从而可以降低服务器集群中主服务器上的负载。
在一个实施例中,根据预设规则从服务器集群中选取一个服务器作为目标服务器时,可以先从服务器集群中选取执行完第二命令的服务器为候选服务器,之后从候选服务器中确定一个服务器作为目标服务器,从而可以保证当第一命令为读命令时,能够从目标服务器读取到的数据是最新数据。第二命令是在第一命令前接收的与第一命令的接收时间相距最近的写命令,第一命令与第二命令所需操作数据的标识相同。
在一个实施例中,从服务器集群中选取执行完第二命令的服务器为候选服务器时,可以先将第二命令的索引值与服务器集群中每个服务器最近执行完的目标写命令(即执行完的时间与当前时间距离最短的目标写命令)的索引值进行比较,之后从服务器集群中选取最近执行完的目标写命令的索引值等于第二命令的索引值的服务器为候选服务器,即选取执行完第二命令的服务器为候选服务器,从而可以保证候选服务器中第一命令所要读取的数据都为最新的数据。其中,一个命令唯一对应一个索引值。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201610110755.6/2.html,转载请声明来源钻瓜专利网。
- 上一篇:一种智能电动车仪表平台
- 下一篇:一种业务处理方法和装置