System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 一种多域名静态资源重试方法及系统技术方案_技高网

一种多域名静态资源重试方法及系统技术方案

技术编号:41236863 阅读:2 留言:0更新日期:2024-05-09 23:50
本发明专利技术公开了一种多域名静态资源重试方法及系统,所述方法包括:检测多个第一静态资源的加载状态;若任一所述第一静态资源加载失败,通过重试逻辑函数对失败的静态资源进行统一的加载重试处理,得到第二静态资源,其中,所述重试逻辑函数通过监听静态资源标签的错误事件得到;当页面添加子元素方法触发时,将所述第二静态资源挂载到对应的静态资源标签上。本发明专利技术在静态资源加载失败时统一通过重试逻辑函数进行重试处理,解决了现有技术需要为每个静态资源单独设置错误监听方法而导致开发成本高的问题。

【技术实现步骤摘要】

本专利技术涉及信息处理,尤其涉及一种多域名静态资源重试方法及系统


技术介绍

1、在未进行性能优化的普通网页中,所有的静态资源(如js、css和img)均采用同步方式一起加载,这种方式虽然简单,但是在网络环境不佳或者资源文件较多的情况下,会导致页面加载缓慢、影响用户体验。因此,为了提高页面性能和用户体验,逐渐出现了对静态资源进行分级加载的方式。

2、具体来说,网站会将页面的静态资源进行分类,将首屏需要展示的静态资源通过同步方式加载,而非首屏和异步交互的静态资源则通过异步方式加载。这样可以提升页面的加载速度和响应速度,同时减少网络流量和服务器负载。

3、对于静态资源的加载重试,一般采用的是直接在静态资源标签上添加错误监听事件的方式,获取静态资源加载的状态,从而对错误的同步静态资源进行重试。但是,这种方式并不能解决异步静态资源的加载重试问题。

4、大多数网站通过构建工具的方式来管理静态资源的加载和优化,但是这些工具不支持异步静态资源的加载重试。一些网站的处理方式是为每个静态资源标签都添加错误监听事件,这样会增加开发时间和代码复杂度,降低开发效率。


技术实现思路

1、为了解决上述提出的至少一个技术问题,本专利技术提供一种多域名静态资源重试方法及系统,以解决现有网站在静态资源加载重试只考虑同步资源而未顾及异步资源的问题。

2、一方面,提供了一种多域名静态资源重试方法,包括:

3、检测多个第一静态资源的加载状态;

4、若任一所述第一静态资源加载失败,通过重试逻辑函数对失败的静态资源进行统一的加载重试处理,得到第二静态资源,其中,所述重试逻辑函数通过监听静态资源标签的错误事件得到;

5、当页面添加子元素方法触发时,将所述第二静态资源挂载到对应的静态资源标签上。

6、优选地,所述重试逻辑函数的处理操作具体包括:

7、检测到任一所述第一静态资源加载失败,获取多个备用域名地址;

8、采用所述备用域名地址,对所述静态资源的请求链接进行域名替换并请求;

9、若域名替换后的静态资源请求失败,则进行下一轮重试,直至所述静态资源请求成功,得到所述第二静态资源;

10、若所述多个备用域名地址替换后,所述静态资源均未请求成功,则停止重试。

11、优选地,所述第一静态资源,包括:script标签和link标签。

12、优选地,所述重试逻辑函数通过拦截静态资源标签的生成函数得到,包括:

13、拦截所述静态资源标签的生成函数,判断当前生成元素的标签类型;

14、若所述标签类型为script标签,则生成script标签虚拟元素;

15、若所述标签类型为link标签,则生成link标签虚拟元素;

16、当检测到静态资源加载失败时,触发所述script标签虚拟元素或link标签虚拟元素的加载失败事件,执行所述重试逻辑函数。

17、优选地,所述方法还包括:

18、若所述静态资源请求重试超过预设最大次数,则停止重试。

19、优选地,所述方法还包括:

20、记录并静态资源请求重试失败所用的备用域名地址,得到失效地址数据;

21、当所述失效地址数据的条数大于最大故障数时,触发监控sdk告警。

22、第二方面,提供了一种多域名静态资源重试系统,包括:

23、数据检测单元,用于检测多个第一静态资源的加载状态;

24、第一数据处理单元,用于若任一所述第一静态资源加载失败,通过重试逻辑函数对失败的静态资源进行统一的加载重试处理,得到第二静态资源,其中,所述重试逻辑函数通过监听静态资源标签的错误事件得到;

25、第二数据处理单元,当页面添加子元素方法触发时,将所述第二静态资源挂载到对应的静态资源标签上。

26、第三方面,提供了一种电子设备,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;存储器,用于存放计算机程序;处理器,用于执行存储器上所存放的程序时,实现所述的一种多域名静态资源重试方法。

27、第四方面,提供了一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被电子设备的处理器执行时,使所述处理器执行所述的多域名静态资源重试方法。

28、本申请通过在重试逻辑函数中对加载失败的静态资源的统一管理和重试处理,从而避免了传统方法中需要对每个静态资源单独设置加载错误监听的繁琐操作,大幅度地减少了开发工作量;利用拦截技术,在静态资源生成函数中返回虚拟元素,仅在虚拟元素成功请求后才实例化真实元素,有效地防止了因重复创建元素而造成的内存浪费问题;本申请还提供了一套完善的失败预警机制,通过在重试过程中及时向管理员反馈失败的备用地址并发出预警,确保了系统的稳定性和可靠性。

29、应当理解的是,以上的一般描述和后文的细节描述仅是示例性和解释性的,而非限制本公开。

本文档来自技高网...

【技术保护点】

1.一种多域名静态资源重试方法,其特征在于,包括:

2.根据权利要求1所述的一种多域名静态资源重试方法,其特征在于,所述重试逻辑函数的处理操作具体包括:

3.根据权利要求1所述的一种多域名静态资源重试方法,其特征在于,所述第一静态资源,包括:script标签和link标签。

4.根据权利要求3所述的一种多域名静态资源重试方法,其特征在于,所述重试逻辑函数通过拦截静态资源标签的生成函数得到,包括:

5.根据权利要求2所述的一种多域名静态资源重试方法,其特征在于,所述方法还包括:

6.根据权利要求5所述的一种多域名静态资源重试方法,其特征在于,所述方法还包括:

7.一种多域名静态资源重试系统,其特征在于,包括:

8.一种电子设备,其特征在于,包括处理器、通信接口、存储器和通信总线,其中,处理器,通信接口,存储器通过通信总线完成相互间的通信;

9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机程序,所述计算机程序包括程序指令,所述程序指令当被电子设备的处理器执行时,使所述处理器执行权利要求1至7中任意一项所述的多域名静态资源重试方法。

...

【技术特征摘要】

1.一种多域名静态资源重试方法,其特征在于,包括:

2.根据权利要求1所述的一种多域名静态资源重试方法,其特征在于,所述重试逻辑函数的处理操作具体包括:

3.根据权利要求1所述的一种多域名静态资源重试方法,其特征在于,所述第一静态资源,包括:script标签和link标签。

4.根据权利要求3所述的一种多域名静态资源重试方法,其特征在于,所述重试逻辑函数通过拦截静态资源标签的生成函数得到,包括:

5.根据权利要求2所述的一种多域名静态资源重试方法,其特征在于,所述方法还包括:

【专利技术属性】
技术研发人员:张旭东
申请(专利权)人:深圳小鹅网络技术有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1