[发明专利]一种业务的获取方法、装置、存储介质及计算机设备在审
申请号: | 201711310252.4 | 申请日: | 2017-12-11 |
公开(公告)号: | CN108063808A | 公开(公告)日: | 2018-05-22 |
发明(设计)人: | 蒋鹏 | 申请(专利权)人: | 海尔优家智能科技(北京)有限公司 |
主分类号: | H04L29/08 | 分类号: | H04L29/08;G06F9/50 |
代理公司: | 工业和信息化部电子专利中心 11010 | 代理人: | 于金平 |
地址: | 100086 北京市海淀区知春*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 业务 获取 方法 装置 存储 介质 计算机 设备 | ||
本发明公开了一种业务的获取方法、装置、存储介质及计算机设备,其中,该方法包括:获取预定业务对应的模值;检测预设服务器列表中与模值相同的列表号对应的服务器标识号是否与自身服务器标识号相同;在服务器标识号与自身服务器标识号相同的情况下,获取预定业务。本发明通过不同业务的业务流水号不同,计算出业务流水号对应的模值,并根据模值确定出预定业务实际应该归属哪个服务器进行处理,使服务器只需要获取自己应当处理的预定业务,不会出现多个任务在不同服务器上同时处理同一个业务的情况,解决了现有技术中业务在执行时,出现的重复调度或调度冲突等问题。
技术领域
本发明涉及分布式应用程序协调服务ZooKeeper技术,特别是涉及一种业务的获取方法、装置、存储介质及计算机设备。
背景技术
ZooKeeper是一个分布式的、开放源码的分布式应用程序协调服务,是谷歌Google的分布式文件系统Chubby一个开源的实现,它是集群的管理者,监视着集群中各个节点状态根据节点提交的反馈进行下一步合理操作,最终,将简单易用的接口和性能高效、功能稳定的系统提供给用户。
图1为ZooKeeper的数据模型结构示意图,如图1所示,ZooKeeper数据模型的结构与Unix文件系统类似,整体上可以看作是一棵树,每个节点称做一个ZNode,每个ZNode都存在其唯一的路径标识,比如图1中第三层的第一个ZNode,它的路径是/app1/c1。ZNode分为常规型节点(Regular ZNode)和临时型节点(Ephemeral ZNode),其中,Regular ZNode只能通过用户的显式操作进行创建或删除,Ephemeral Znode可以通过用户的显式操作进行创建或删除,或在创建之后,创建该Ephemeral Znode的会话(Session)结束,由ZooKeeper 进行主动的删除。
当单台服务器能力不够的时候,就需要更多的服务器来进行横向扩展,通过多台服务器的分工,来实现更强的并发处理能力,更短的响应时间。多台服务器在处理任务时,会出现同一个业务被多个不同服务器分别调用,造成业务重复执行,用户得到重复结果的情况;或出现多个任务程序同时调用同一个业务造成冲突,尤其是定时任务在进行处理时,可能会因为处理数据库同一条记录造成死锁的情况。
针对在处理定时任务时出现的问题,现有的部分开源的分布式定时任务框架可以进行解决,但由于其原理复杂、封装程度较高,当定时任务框架出现问题时短时间无法解决,并且开源的分布式定时任务框架提供了较多功能,追求通用性,但是执行效率较低,使用者却无法对直接对框架进行优化,需要非常高的成本。
发明内容
本发明提供一种业务的获取方法、装置、存储介质及计算机设备,用以解决现有技术中业务在执行时,出现的重复调度或调度冲突等问题。
为解决上述技术问题,一方面,本发明提供一种业务的获取方法,包括:获取预定业务对应的模值;检测预设服务器列表中与模值相同的列表号对应的服务器标识号是否与自身服务器标识号相同;在服务器标识号与自身服务器标识号相同的情况下,获取预定业务。
进一步,获取预定业务对应的模值,包括:获取预定业务的业务流水号以及当前处于工作状态的所有服务器的数量;将业务流水号与服务器的数量进行取模运算,确定预定业务对应的模值。
进一步,获取当前处于工作状态的所有服务器的数量之前,还包括:建立与ZooKeeper的连接;获取与ZooKeeper连接的服务器的信息,其中,信息至少包括服务器名称和服务器标识号;根据信息和与ZooKeeper连接的服务器的数量建立预设服务器列表。
进一步,根据信息和与ZooKeeper连接的服务器的数量建立预设服务器列表之后,还包括:检测与ZooKeeper连接的服务器的数量是否改变;在服务器的数量改变的情况下,根据改变后服务器的数量修改预设服务器列表。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于海尔优家智能科技(北京)有限公司,未经海尔优家智能科技(北京)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201711310252.4/2.html,转载请声明来源钻瓜专利网。