System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind()
【技术实现步骤摘要】
本专利技术涉及云对讲服务,尤其涉及一种基于云端分布式活跃度的sip注册限流方法及设备介质。
技术介绍
1、在大规模、高并发的iot(internet of things,物联网)云对讲平台中,常常会碰到突发的大批量sip(session initialization protocol,会话初始协议)终端设备往云端sip服务集群发送sip注册请求的情况,例如,云端数据库异常持续一段时间后导致堆积大量终端设备的sip周期性注册请求或者由于终端设备所处网络环境从故障中恢复过来进而触发大规模的终端设备瞬间发起大批量sip注册请求,类似的场景对云端sip服务集群会产生巨大的瞬时冲击效应。如果处理不当将会造成服务失效,进而产生连环效应,最终形成服务雪崩的效应。
2、为了保证在突发的大规模sip终端设备批量向云端sip服务集群发送注册请求导致超出云端sip服务集群以及后端业务服务处理能力的情况下,不至于发生服务雪崩,需要引入业界分布式系统常用的限流策略,在服务过载的时候将外部的客户端请求流量限制住,也就是丢弃掉一部分请求流量,保证现有的集群服务处理能力超过请求流量,以减少对系统的冲击。
3、现有业界常用的限流策略主要是令牌桶算法以及漏桶算法,这两个算法均只能无差别地随机丢弃来自客户端的请求流量,无法满足云对讲平台对于最大限度保障高活跃终端设备服务体验的行业诉求。
4、公开号为cn115733803a的中国专利技术,提供了一种数据限流方法、装置、电子设备及存储介质,涉及云计算
,该方法包括:响应于针对视
技术实现思路
1、有鉴于此,本专利技术的目的在于提出一种基于云端分布式活跃度的sip注册限流方法,是一种云端分布式环境下根据终端设备活跃度的sip注册请求限流方法,解决需要差异化丢弃客户端请求流量,保证最大限度满足活跃终端iot设备sip功能的目的;保证iot云平台sip服务集群稳定可靠以及实现不同活跃度的终端设备差异化完成周期性注册的过程。
2、为了实现上述的技术目的,本专利技术所采用的技术方案为:
3、本专利技术提供了一种基于云端分布式活跃度的sip注册限流方法,包括如下步骤:
4、步骤1、多台终端设备发起sip注册请求到云端sip服务集群的每一个服务节点;
5、步骤2、当所述云端sip服务集群处于过载状态时,限流模型协调服务器调整限流参数并下发给云端sip服务集群中所有服务节点的限流模型协调器客户端;
6、步骤3、所述云端sip服务集群中所有服务节点的sip信令处理模块调用限流器模块,所述限流器模块根据活跃度流式服务器和限流模型协调器客户端获取终端设备的活跃度和当前的限流参数,并确定终端设备的限流状态;
7、步骤4、所述限流器模块将终端设备的限流状态返回给sip信令处理模块;
8、步骤5、所述sip信令处理模块根据限流状态进行注册业务的处理;
9、步骤6、判断所述云端sip服务集群是否从过载状态恢复到正常状态,若是,则结束流程;否则,返回步骤2。
10、进一步的,所述步骤1具体包括:
11、步骤11、多台终端设备按照设定的注册周期实时发起sip注册请求;
12、步骤12、根据负载均衡策略将所有sip注册请求平均地分配到云端sip服务集群的每一个服务节点中。
13、进一步的,所述步骤2具体包括:
14、步骤21、建立所述云端sip服务集群中所有服务节点的限流模型协调器客户端与限流模型协调服务器之间的长连接;
15、步骤22、当所述云端sip服务集群处于过载状态时,运维人员通过所述限流模型协调服务器根据云端sip服务集群的过载状态调整限流参数;
16、步骤23、所述限流模型协调服务器将调整后的限流参数下发给云端sip服务集群中所有服务节点的限流模型协调器客户端。
17、进一步的,所述步骤22具体包括:
18、步骤221、根据过去的某一设定时间段内所有终端设备的活跃度信息按照从大到小的顺序进行排列,得到活跃度分布图;
19、步骤222、确定百分点为m%,0<m≤100且m为整数;判断所述活跃度分布图中第m%的位置上是否存在对应的活跃度信息,若是,则将所述活跃度分布图中第m%的位置上所对应的活跃度信息设置为初始的限流参数;否则,将与所述活跃度分布图中第m%的位置相邻且数值高的活跃度信息设置为初始的限流参数;
20、步骤223、根据所述云端sip服务集群的负载情况判断云端sip服务集群是否处于过载状态,若是,则说明需要调整初始的限流参数或上一次的限流参数;否则,结束流程;
21、步骤224、若当前的限流参数为初始的限流参数,则所述限流模型协调服务器从m%开始按1个百分点的精度进行向下调整,得到新的百分点的位置上所对应的限流参数作为调整后的限流参数;若当前的限流参数不为初始的限流参数,则所述限流模型协调服务器从上一次的限流参数对应的百分点开始按1个百分点的精度进行向下调整,得到新的百分点的位置上所对应的限流参数作为调整后的限流参数。
22、进一步的,所述步骤3具体包括:
23、步骤31、所述云端sip服务集群中所有服务节点的sip信令处理模块接收sip注册请求,判断该sip注册请求提供的sip账号和密码是否正确,若是,则进入步骤32;否则,结束流程;
24、步骤32、所述sip信令处理模块调用限流器模块,通过所述限流器模块判断进程的内存中是否有该sip账号的活跃度信息,若否,则通过活跃度流式服务器获取该sip账号的活跃度信息,并缓存在内存中,进入步骤33;若是,则直接进入步骤33;
25、步骤33、通过限流模型协调器客户端获取当前的限流参数;
26、步骤34、将所述sip账号的活跃度信息与当前的限流参数进行对比,判断所述sip账号的活跃度信息是否低于当前的限流参数,若是,则表明该终端设备的本次sip注册请求命中限流策略;若否,则表明该终端设备的本次sip注册请求没有命中限流策略。
27、进一步的,所述步骤32中通过活跃度流式服务器获取该sip账号的活跃度信息,具体包括:
28、步骤321、所述活跃度流式服务器用于实时计算每一个sip账号在过去的某一设定时间段内的通话次数,所述活跃度流式服务器为每一个sip账号提供对应的http接口;
29、步骤322、终端设备在第一次注册成功后,具备sip通话功能,在sip通话过程中,主动发起sip通话的一方作为主叫终端设备,被主叫终端设备呼叫的一方作为被叫终端设本文档来自技高网...
【技术保护点】
1.一种基于云端分布式活跃度的SIP注册限流方法,其特征在于,包括如下步骤:
2.如权利要求1所述的基于云端分布式活跃度的SIP注册限流方法,其特征在于,所述步骤1具体包括:
3.如权利要求1所述的基于云端分布式活跃度的SIP注册限流方法,其特征在于,所述步骤2具体包括:
4.如权利要求3所述的基于云端分布式活跃度的SIP注册限流方法,其特征在于,所述步骤22具体包括:
5.如权利要求1所述的基于云端分布式活跃度的SIP注册限流方法,其特征在于,所述步骤3具体包括:
6.如权利要求5所述的基于云端分布式活跃度的SIP注册限流方法,其特征在于,所述步骤32中通过活跃度流式服务器获取该SIP账号的活跃度信息,具体包括:
7.如权利要求1所述的基于云端分布式活跃度的SIP注册限流方法,其特征在于,所述步骤5具体包括:
8.如权利要求5所述的基于云端分布式活跃度的SIP注册限流方法,其特征在于,所述步骤6具体为:
9.一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程
10.一种计算机可读存储介质,其上存储有计算机程序,其特征在于,该程序被处理器执行时实现如权利要求1至8任一项所述的一种基于云端分布式活跃度的SIP注册限流方法。
...【技术特征摘要】
1.一种基于云端分布式活跃度的sip注册限流方法,其特征在于,包括如下步骤:
2.如权利要求1所述的基于云端分布式活跃度的sip注册限流方法,其特征在于,所述步骤1具体包括:
3.如权利要求1所述的基于云端分布式活跃度的sip注册限流方法,其特征在于,所述步骤2具体包括:
4.如权利要求3所述的基于云端分布式活跃度的sip注册限流方法,其特征在于,所述步骤22具体包括:
5.如权利要求1所述的基于云端分布式活跃度的sip注册限流方法,其特征在于,所述步骤3具体包括:
6.如权利要求5所述的基于云端分布式活跃度的sip注册限流方法,其特征在于,所述步骤32中通过活跃度流式服务器获...
【专利技术属性】
技术研发人员:陈毅聪,陈镇兴,陈志伟,张佳侨,
申请(专利权)人:睿云联厦门网络通讯技术有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。