[发明专利]客户端与服务端的连接方法及系统、客户端和服务端有效
申请号: | 201110301644.0 | 申请日: | 2011-10-08 |
公开(公告)号: | CN102387069A | 公开(公告)日: | 2012-03-21 |
发明(设计)人: | 王志红 | 申请(专利权)人: | 华为技术有限公司 |
主分类号: | H04L12/56 | 分类号: | H04L12/56;H04L29/08 |
代理公司: | 深圳市深佳知识产权代理事务所(普通合伙) 44285 | 代理人: | 彭愿洁;李文红 |
地址: | 518129 广东*** | 国省代码: | 广东;44 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 客户端 服务端 连接 方法 系统 | ||
技术领域
本发明涉及通信技术领域,具体涉及一种客户端与服务端的连接方法及系统、客户端和服务端。
背景技术
在计算机领域,存在大量的客户端和服务端体系结构,一个或者多个甚至大量的客户端连接到服务端,与服务端进行交互,并获得服务,从而满足客户端的需求。
目前,随着业务增长的需要,一个服务端可能为十万甚至上百万客户端同时提供服务,其经常需要不断的处理来自客户端的连接请求。当某个服务端出现异常,如重启或宕机时,那么断连的客户端将立即请求重连服务端,以保证客户端能够尽快连接。
但是,每个服务端总的连接能力在一定情况下是固定的,尽管其可以通过优化逐步提升,但仍有一个合理的上限值,即最大连接能力。同时,每个服务端每秒能够处理接入的能力在一定情况下也是固定的,也有一个合理的值,即连接处理速率。显然,最大连接能力会远远大于连接处理速率。如果该服务端重启或者宕机,立即请求重新连接的大量客户端可能会使得服务端达到或超过其最大连接能力,而服务端连接处理速率无法同时处理如此大量连接,则会出现浪涌请求。
所谓浪涌,即客户端并发向服务端请求服务,并发请求的速率超过服务端的处理能力。当客户端单位时间内连接请求的数量超出了服务端的处理能力时,超出处理能力部分的连接请求将会无法正常连接。
面对此种情况,客户端存在相应的重连机制,当客户端连接失败时又会重新向服务端发起连接,使连接请求呈指数级增长,从而导致服务质量下降甚至中断,带来灾难性的后果。
发明内容
本发明实施例提供一种客户端与服务端的连接方法及系统、客户端和服务端,防止浪涌请求现象的发生,即避免服务端出现不可用或中断服务的情况。
一种客户端与服务端的连接方法,包括:
客户端获取随机数种子信息;
客户端在与服务端断连后,根据随机数种子信息以及随机函数计算得到随机延时时间,随机延时时间为客户端与服务端重连的延时时间;
客户端在经过随机延时时间后,向服务端发送连接请求。
一种客户端与服务端连接处理系统,包括:
客户端和服务端;
客户端,用于获取随机数种子信息;还用于在与服务端断连后,根据随机数种子信息以及随机函数计算得到随机延时时间,随机延时时间为客户端与服务端重连的延时时间;还用于在经过随机延时时间后,向服务端发送连接请求;
服务端,用于生成随机数种子信息,还用于向客户端发送随机数种子信息。
一种客户端,包括:
获取单元,用于获取随机数种子信息;
计算单元,用于根据随机数种子信息以及随机函数计算得到随机延时时间,随机延时时间为客户端与服务端重连的延时时间;
请求单元,用于在经过随机延时时间后,向服务端发送连接请求。
一种服务端,包括:
信息生成单元,用于生成随机数种子信息;
发送单元,用于向客户端发送随机数种子信息。
本发明实施例的优点在于:在服务端异常重启或者宕机的情况下,各客户端会根据获取的随机数种子信息及随机函数计算各自与服务端重连的随机延时时间,并分别在随机延时时间后进行延时连接,从而避免大量客户端同时请求连接服务端情况的发生。由于所有客户端都是在服务端的处理能力范围内重新建立连接,从而保证服务端的稳定可靠运行。
附图说明
图1是本发明实施例客户端与服务端连接流程示意图;
图2是本发明另一实施例客户端与服务端连接流程示意图;
图3是本发明又一实施例客户端与服务端连接流程示意图;
图4是本发明客户端与服务端连接处理系统的结构示意图;
图5是本发明客户端逻辑结构示意图;
图6是本发明服务端逻辑结构示意图。
具体实施方式
本发明实施例提供一种客户端与服务端的连接方法及系统、客户端和服务端,能够在服务端重启或宕机情况下,防止出现客户端的重新连接请求超过服务端的处理能力的情况,避免服务端不可用或中断服务。
下面对本发明进行详细说明。
请参阅图1,本发明实施例的客户端与服务端的连接方法的流程一个实施例包括:
101、客户端获取随机数种子信息。
客户端可以是连接服务端的各类计算机终端,服务端包括Web系统服务端,云服务系统服务端,云存储服务端,云杀毒系统服务端等。随机数种子信息是含有随机数种子的信息,随机数种子是延时随机数种子,用于计算随机延时时间。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于华为技术有限公司,未经华为技术有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201110301644.0/2.html,转载请声明来源钻瓜专利网。