一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

一种系统链路连通性补偿方法及系统与流程

2021-10-29 22:48:00 来源:中国专利 TAG:系统 链路 连通性 补偿 连接


1.本发明涉及网络连接技术领域,尤其涉及一种系统链路连通性补偿方法及系统。


背景技术:

2.目前,请求系统通过域名的方式访问目标系统时,经过dns服务器获取域名对应的ip地址,由于域名和ip地址的对应关系变化不频繁,dns服务器采用ttl(生存时间)机制降低频繁访问dns服务器带来的巨大压力,请求服务器在ttl时间范围内无需访问dns服务器,通过本地缓存即可获取ip地址。以上的通用方案对于实时性要求较高的系统(例如:银行的联机交易型系统)存在一个问题:当ip地址在ttl时间范围内发生变化时,请求系统将无法访问目标系统,系统链路中断,直至ttl失效并再次获取新的ip后才能恢复。这样的系统存在系统连通性服务无法保证的风险,一旦ip地址在ttl时间范围内发生变化,目标系统将不可访问,会严重影响系统的用户体验,降低系统可用性。
3.针对这一问题,现有技术一般采用两种技术方案解决:一是缩短ttl时间,通过较短的ttl时间减少ttl时间范围内ip地址变化对系统链路连通性造成的影响,但是较短的ttl时间会明显加重dns服务器的工作负担,在应对大量访问请求时会使dns服务器成为连通性瓶颈,拖累整个系统链路性能;二是在ttl时间范围内ip地址发送变化时,通过人工干预重启服务、刷新缓存,获取新的ip地址保证连通性,但需要投入额外的人力成本和运维成本,且不利于系统的自动化运行。


技术实现要素:

4.为解决现有技术的不足,本发明提出一种系统链路连通性补偿方法及系统,通过监控ttl时间范围内的连接是否超时自动判断是否需要在ttl时间范围内重新访问dns服务器获取新的ip地址,在不缩短ttl时间或增加额外人力投入的前提下,提高了系统链路连通性,同时不影响系统自动化运行。
5.为实现以上目的,本发明所采用的技术方案包括:
6.一种系统链路连通性补偿方法,其特征在于,包括:
7.对目标系统连接进行超时监控;
8.目标系统连接超时自动进行超时重发请求,并同时记录超时重发请求次数;
9.超时重发请求次数达到重发预设阈值时,自动访问dns服务器重新获取目标系统ip地址。
10.进一步地,还包括:
11.超时重发请求次数达到重发预设阈值时,自动访问dns服务器重新获取目标系统ip地址和新的ttl时间。
12.进一步地,还包括:
13.将重新获取得到的目标系统ip地址和新的ttl时间存储在请求系统的dns缓存中。
14.进一步地,还包括:
15.重新获取得到目标系统ip地址和新的ttl时间后,将超时重发请求次数记录归零。
16.进一步地,还包括:
17.使用存储于请求系统dns缓存中的目标系统ip地址自动进行超时重发请求。
18.进一步地,还包括:
19.超时重发请求次数达到重发预设阈值时,自动访问dns服务器重新获取目标系统ip地址,同时停止自动进行超时重发请求,或,同时保持自动进行超时重发请求。
20.进一步地,还包括:
21.重发预设阈值使用参数化配置。
22.进一步地,还包括:
23.请求系统验证dns缓存中是否存在对应目标系统的ip地址;
24.当dns缓存中不存在对应目标系统的ip地址时,访问dns服务器重新获取目标系统ip地址和新的ttl时间。
25.本发明还涉及一种系统链路连通性补偿系统,其特征在于,包括:
26.dns缓存,用于存储目标系统ip地址和ttl时间;
27.超时监控模块,用于对目标系统连接进行超时监控;
28.超时重发计数器模块,用于记录超时重发请求次数;
29.dns请求模块,用于向dns服务器发送访问请求。
30.本发明还涉及一种计算机可读存储介质,其特征在于,所述存储介质上存储有计算机程序,所述计算机程序被处理器执行时实现上述的方法。
31.本发明的有益效果为:
32.采用本发明所述系统链路连通性补偿方法及系统,通过在应用系统中新增连通性补偿机制的方式保证当ip地址在dns服务器的ttl时间范围内发生变化时系统的连通性,因此,本发明适用于绝大部分保证连通性的场景,可以保证ip地址在ttl时间内发生变化时系统具备及时回复连接的能力,极大的提高系统的高可用性,提升系统通讯容错能力。
附图说明
33.图1为本发明系统链路连通性补偿方法流程示意图。
34.图2为现有技术方法流程示意图。
35.图3为本发明系统链路连通性补偿系统结构示意图。
36.图4为现有技术系统结构示意图。
具体实施方式
37.为了更清楚的理解本发明的内容,将结合附图和实施例详细说明。
38.现有的dns服务器技术方案可以满足大多数系统的访问需求,但是对实时性要求较高的系统存在系统连通性服务无法保证的风险,一旦ip地址在ttl时间范围内发生变化,目标系统将不可访问,这样会影响系统的用户体验,降低系统高可用性。因此,需要对该机制做进一步优化,保证系统的连通性。
39.本发明针对ip地址在dns服务器的ttl时间范围内发生变化的场景,提供了一种提高系统连通性的技术解决方案,并提供完整的处理逻辑。本发明重点解决的问题包括:在保
证ttl时间不变(不缩减)的前提下,通过增加系统访问超时监控判断请求系统与目标系统的连通性,若目标系统不可达,程序重新发起dns解析请求,及时获取最新ip地址,极大的保证系统连通性。
40.如图1所示为本发明系统链路连通性补偿方法的一种优选实施例流程示意图,主要执行步骤包括:
41.s1、请求系统采用域名方式发起对目标系统的访问请求;
42.s2、操作系统查询dns缓存(dns cache)是否存在域名和ip的对应关系,如果存在对应关系则进行步骤s3,否则进行步骤s4;
43.s3、从dns缓存中获取ttl时间,判断是否超时,如果未超时则进行步骤s6,否则进行步骤s4;
44.s4、访问dns服务器;
45.s5、dns服务器返回ip地址以及ttl时间,并存入请求系统的dns缓存中;
46.s6、从缓存中获取ip地址,组装通讯报文发往目标系统,同时启动超时监控功能;
47.s7、若请求未超时,则连接成功,进行后续操作,否则进行步骤s8;
48.s8、访问超时重发计数器;
49.s9、判断超时重发次数是否超限(可以参数化配置超时重发次数的重发预设阈值),如果超限则进行步骤s10,否则进行步骤s11;
50.s10、重新向dns服务器发起dns解析请求,跳转至步骤s4;
51.s11、再次发起向目标系统的访问请求,并将超时重发计数器的记录数增加1,跳转至步骤s6。
52.相较图2所示的现有技术典型执行流程,本发明的方法主要解决了ip地址在ttl时间范围内发生变化,则ttl时间段内的请求将全部失败的问题,特别是对实时性要求高的系统影响较大。在应用过程中,可以根据实际需求自行确定重发预设阈值,进而实现在原有ttl时间以外的第二种动态自动访问dns服务器机制,特别是通过改变重发预设阈值的具体设定,可以调节这一动态机制的松紧度,以匹配dns服务器的工作承受能力,同时也并不影响原有ttl时间的执行,可以高度兼容任意现有访问系统。
53.本发明还涉及一种系统链路连通性补偿系统,如图3所示为该系统的一种优选实施例,在如图4所示现有系统结构的基础上,添加了用于对目标系统连接进行超时监控的超时监控模块、用于记录超时重发请求次数的超时重发计数器模块和用于向dns服务器发送访问请求的dns请求模块,并且与原结构中的dns缓存相连接,通过该补偿系统所获得的ip地址以及ttl时间被存储在dns缓存并进行调用。通过应用如图3所示的系统即可实现执行上述系统链路连通性补偿方法,从而为系统链路连通性提供充分的补偿,特别适用于高实时性要求的场景。
54.在实际使用中,上述方法及系统可以直接加入到原有请求系统中,作为请求系统的一个固有部分进行执行,也可以打包为一个单独的功能模块包供请求系统在有需要时进行调用,例如可以将上述方法及系统的实现打包为jar包,请求系统通过api即可调用该jar包,从而实现连通性补偿的功能效果。
55.例如,以编写jar包为例,本发明的系统链路连通性补偿方法及系统以补偿程序的形式制作形成名称为connectionmechanism.jar的jar包发布。该jar包以独立进程运行,需
要应用程序(请求系统)启动时单独调起(可采用应用程序嵌入式调起、shell脚本调起等方式,例如编写startconnmechanism.sh脚本,用于启动连通性守护进程,该脚本在启动服务时调起)。该jar包除提供重新发起dns域名解析请求的功能外,还可以api的形式提供resend()超时重发方法,为缺乏超时重发机制的系统提供重发功能。
56.调用jar包时需要在应用程序根目录下添加配置文件:conninfo.properties,用于配置重要的参数,例如:
57.resendtimes=超时重发计数器
58.overtime=超时时间
59.dnsaddress=dns域名解析服务器地址
60.overtimecode=超时应答码
61.当超时次数超过重发计数器限制时,jar清空应用服务器dns缓存,并重新发起dns域名解析请求,达到及时更新ip地址的效果。一种典型的参数配置可以为:
62.resendtimes=3(超时重发次数为3)
63.overtime=20(20s超时)
64.dnsaddress=128.22.6.122(dns域名解析服务器地址)
65.对于缺乏超时重发机制的系统可以通过调用resend()方法实现超时重发功能,可以根据系统需要设定重发次数。
66.以上所述仅为本发明较佳的具体实施方式,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明揭露的技术范围内,可轻易想到的变化或替换等都应涵盖在本发明的保护范围之内。因此,本发明的保护范围应该以权利要求书的保护范围为准。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献

  • 日榜
  • 周榜
  • 月榜