[发明专利]连续序号生成系统和方法在审
申请号: | 201310688165.8 | 申请日: | 2013-12-16 |
公开(公告)号: | CN103647833A | 公开(公告)日: | 2014-03-19 |
发明(设计)人: | 陈不骄 | 申请(专利权)人: | 百度在线网络技术(北京)有限公司 |
主分类号: | H04L29/08 | 分类号: | H04L29/08 |
代理公司: | 北京清亦华知识产权代理事务所(普通合伙) 11201 | 代理人: | 宋合成 |
地址: | 100085 北京市*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 连续 序号 生成 系统 方法 | ||
技术领域
本发明涉及网络技术领域,尤其涉及一种连续序号生成系统和方法。
背景技术
随着互联网的快速发展,越来越多的应用场景中使用序号生成器生成连续序号,例如,支付产品的订单号、物流的运单号、注册用户的账号id(Identity,身份标识号码)等。目前,连续序号生成的主要方法为使用单台服务器生成连续序号,例如,当客户端向服务器发送新序号申请请求时,首先,服务器打开本地文件中保存的上次产生的序号,再将其值自增,之后,将新序号存回文件中并响应至客户端,以实现连续序号的产生。
目前存在的问题是,如果本台服务器一旦发生故障,整个服务无法使用,例如,服务器宕机、磁盘永久损坏等,严重影响服务的正常运行,可用性差。
发明内容
本发明旨在至少解决上述技术问题之一。
为此,本发明的第一个目的在于提出一种连续序号生成系统。该系统实现了分布式环境中高效可靠地产生连续序号,此外,当部分服务崩溃无法启动或宕机时,可切换至其他服务器以继续提供服务,无需人工干预,提高了可用性。
本发明的第二个目的在于提出一种连续序号生成方法。
为了实现上述目的,本发明第一方面实施例的连续序号生成系统,包括:N个服务器,所述N个服务器之间相互连接,每个所述服务器包括序号保持文件和接收缓存文件,其中,所述N为正整数,所述序号保持文件用于存储当前最大序号,所述接收缓存文件用于接收其他服务器发送的同步信号,所述同步信号中包括其他服务器的当前最大序号,当第M个服务器接收到序号分配请求之后,其中,所述M大于0小于等于N,所述第M个服务器用于:获取所述第M个服务器中的当前最大序号;根据所述当前最大序号生成新序号并通过序号分配响应反馈;以及所述第M个服务器向其他服务器发送同步信号,所述同步信号具有所述新序号。
本发明实施例的连续序号生成系统,可通过获取第M个服务器中的序号保持文件中的当前最大序号,并根据当前最大序号生成新序号并通过序号分配响应反馈,第M个服务器向其他服务器发送具有新序号的同步信号,以使得其他服务器更新自身存储的当前最大序号,至少具有以下优点:(1)实现了分布式环境中高效可靠地产生连续序号,具有高并发、高可用性、高度容灾性;(2)当一台服务崩溃无法启动或宕机时,可通过keepalived自动切换至其他服务器,由其他服务器继续提供服务,无需人工干预;(3)在任何时刻、任何一台服务器出现问题,都不影响整个服务,不会产生重复序列;(4)产生轻度网络分割时,也不会影响服务;(5)生成的序列严格递增,不会浪费。
为了实现上述目的,本发明第二方面实施例的连续序号生成方法包括:服务器为N个,所述N个服务器之间相互连接,每个所述服务器包括序号保持文件和接收缓存文件,其中,所述N为正整数,所述序号保持文件用于存储当前最大序号,所述接收缓存文件用于接收其他服务器发送的同步信号,所述同步信号中包括其他服务器的当前最大序号,当第M个服务器接收到序号分配请求之后,其中,所述M大于0小于等于N,所述方法包括以下步骤:所述第M个服务器获取所述第M个服务器中的当前最大序号;所述第M个服务器根据所述当前最大序号生成新序号并通过序号分配响应反馈;以及所述第M个服务器向其他服务器发送同步信号,所述同步信号具有所述新序号。
本发明实施例的连续序号生成方法,可通过获取第M个服务器中的序号保持文件中的当前最大序号,并根据当前最大序号生成新序号并通过序号分配响应反馈,第M个服务器向其他服务器发送具有新序号的同步信号,以使得其他服务器更新自身存储的当前最大序号,至少具有以下优点:(1)实现了分布式环境中高效可靠地产生连续序号,具有高并发、高可用性、高度容灾性;(2)当一台服务崩溃无法启动或宕机时,可通过keepalived自动切换至其他服务器,由其他服务器继续提供服务,无需人工干预;(3)在任何时刻、任何一台服务器出现问题,都不影响整个服务,不会产生重复序列;(4)产生轻度网络分割时,也不会影响服务;(5)生成的序列严格递增,不会浪费。
本发明附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本发明的实践了解到。
附图说明
本发明上述的和/或附加的方面和优点从下面结合附图对实施例的描述中将变得明显和容易理解,其中,
图1是根据本发明一个实施例的连续序号生成系统的结构示意图;
图2是根据本发明一个实施例的连续序号生成方法的流程图;
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于百度在线网络技术(北京)有限公司,未经百度在线网络技术(北京)有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310688165.8/2.html,转载请声明来源钻瓜专利网。
- 上一篇:用于ZPW-2000A型自动闭塞系统实训的考核装置
- 下一篇:光纤适配器