云海系统前端高并发接口调用优化装置及方法.pdf

上传人:zhu****_FC 文档编号:10599233 上传时间:2021-06-25 格式:PDF 页数:8 大小:343.93KB
收藏 版权申诉 举报 下载
云海系统前端高并发接口调用优化装置及方法.pdf_第1页
第1页 / 共8页
云海系统前端高并发接口调用优化装置及方法.pdf_第2页
第2页 / 共8页
云海系统前端高并发接口调用优化装置及方法.pdf_第3页
第3页 / 共8页
文档描述:

《云海系统前端高并发接口调用优化装置及方法.pdf》由会员分享,可在线阅读,更多相关《云海系统前端高并发接口调用优化装置及方法.pdf(8页完成版)》请在专利查询网上搜索。

1、(19)中华人民共和国国家知识产权局 (12)发明专利申请 (10)申请公布号 (43)申请公布日 (21)申请号 202010093626.7 (22)申请日 2020.02.14 (71)申请人 苏州浪潮智能科技有限公司 地址 215100 江苏省苏州市吴中区吴中经 济开发区郭巷街道官浦路1号9幢 (72)发明人 尚玉康 (74)专利代理机构 济南诚智商标专利事务所有 限公司 37105 代理人 王敏 (51)Int.Cl. G06F 9/54(2006.01) (54)发明名称 一种云海系统前端高并发接口调用优化装 置及方法 (57)摘要 本发明实施例公开了一种云海系统前端高 并发接口调。

2、用优化装置及方法, 装置包括容器模 块、 状态管理模块、 计时模块和初始化模块, 所述 容器模块用于处理队列中多个请求的调用排序, 所述容器模块用于对请求的状态进行标记, 所述 容器模块用于将请求的状态发送到状态管理模 块, 所述状态管理模块用于显示队列中请求的订 阅和请求的状态; 方法包括: 初始化容器模块和 状态管理模块, 遍历容器中所有请求的状态, 处 理容器模块的队列中多个请求的调用排序, 对容 器模块中请求的状态进行标记, 在状态管理模块 显示队列中请求的订阅和请求的状态。 本发明解 决了现有技术中处理批量异步请求的接口调用 机制容易造成阻塞和延迟的问题。 权利要求书2页 说明书4页。

3、 附图1页 CN 111338815 A 2020.06.26 CN 111338815 A 1.一种云海系统前端高并发接口调用优化装置, 其特征在于, 所述装置包括容器模块、 状态管理模块、 计时模块和初始化模块, 所述容器模块用于处理队列中多个请求的调用排 序, 所述容器模块用于对请求的状态进行标记, 所述容器模块用于将请求的状态发送到状 态管理模块, 所述状态管理模块用于显示队列中请求的订阅和请求的状态, 所述计时模块 用于处理请求超时, 所述初始化模块用于初始化容器模块和状态管理模块。 2.根据权利要求1所述的一种云海系统前端高并发接口调用优化装置, 其特征在于, 所 述容器模块包括遍。

4、历单元、 排序单元和标记单元, 所述遍历单元用于遍历容器中所有请求 的状态, 所述遍历单元用于将请求的状态发送到所述状态管理模块中, 所述排序单元用于 处理队列中多个请求的调用排序, 所述标记单元用于对请求的已完成、 执行中和队列中的 状态进行标记, 所述标记单元用于对已完成的请求成功和失败的状态进行标记。 3.根据权利要求2所述的一种云海系统前端高并发接口调用优化装置, 其特征在于, 所 述排序单元设置有插队策略, 当第二请求依赖第一请求时, 在第一请求执行完成后, 所述排 序单元立即调用和执行第二请求。 4.根据权利要求1所述的一种云海系统前端高并发接口调用优化装置, 其特征在于, 所 述。

5、状态管理模块包括订阅单元和刷新单元, 所述订阅单元用于显示所述容器模块中请求的 订阅和请求的状态, 当所述容器模块中请求的状态发生改变时, 所述刷新单元刷新请求的 状态并将刷新后的请求状态发送给所述订阅单元。 5.根据权利要求1所述的一种云海系统前端高并发接口调用优化装置, 其特征在于, 所 述装置包括进度展示模块, 所述进度展示模块用于从所述容器模块获取队列中请求的已完 成、 执行中和队列中的状态, 所述进度展示模块用于展示当前所有请求状态的数量。 6.一种云海系统前端高并发接口调用优化方法, 应用于权利要求1-5任一项所述装置, 其特征在于, 所述方法包括: 初始化容器模块和状态管理模块;。

6、 遍历容器中所有请求的状态; 处理容器模块的队列中多个请求的调用排序; 对容器模块中请求的状态进行标记; 在状态管理模块显示队列中请求的订阅和请求的状态。 7.根据权利要求6所述的一种云海系统前端高并发接口调用优化方法, 其特征在于, 所 述处理队列中多个请求的调用排序包括插队策略, 当第二请求依赖第一请求时, 在第一请 求执行完成后, 所述排序单元立即调用和执行第二请求。 8.根据权利要求6所述的一种云海系统前端高并发接口调用优化方法, 其特征在于, 所 述对容器模块中请求的状态进行标记具体为: 对请求的已完成、 执行中和队列中的状态进行标记, 对已完成的请求成功和失败的状 态进行标记。 9。

7、.根据权利要求6所述的一种云海系统前端高并发接口调用优化方法, 其特征在于, 所 述在状态管理模块显示队列中请求的订阅和请求的状态包括: 遍历容器中所有请求的状态后, 在状态管理模块显示队列中请求的订阅和请求的状 态; 当所述容器模块中请求的状态发生改变时, 刷新请求的状态, 在状态管理模块显示刷 权利要求书 1/2 页 2 CN 111338815 A 2 新后的请求的订阅和请求的状态。 10.根据权利要求6所述的一种云海系统前端高并发接口调用优化方法, 其特征在于, 所述方法包括进度展示, 从所述容器模块获取队列中请求的已完成、 执行中和队列中的状 态, 展示当前所有请求状态的数量。 权利。

8、要求书 2/2 页 3 CN 111338815 A 3 一种云海系统前端高并发接口调用优化装置及方法 技术领域 0001 本发明涉及数据传输技术领域, 具体涉及一种云海系统前端高并发接口调用优化 装置及方法。 背景技术 0002 随着业务承载量不断成长, 系统中业务场景越来越复杂, 后端接口越来越原子化, 如将单一复杂的接口转化为多个简单的原子接口, 让他们分别承载不同的任务。 相应的前 端工程越来越复杂, 给前端工程的性能有了越来越高的要求, 带来了越来越大的挑战, 需要 我们对接口本身和接口调用逻辑进行优化。 0003 目前在大并发接口情况下的数据处理和界面加载, 还没有接口调用优化机制。

9、, 如 在某些极端场景下, 初始化或者刷新一个界面需要同时调用很多接口去获取资源, 会出现 请求排队阻塞的现象。 在一种批量场景下, 需要批量重复调用同一个接口, 当量达到一定程 度, 例如100次, 这些接口需要时间调用, 会在界面造成明显的延迟, 或者阻塞用户接下来的 操作。 0004 现有的处理批量异步请求的接口调用机制, 容易造成阻塞和延迟, 客户的使用和 操作体验较差。 发明内容 0005 本发明实施例中提供了一种云海系统前端高并发接口调用优化装置及方法, 以解 决现有技术中处理批量异步请求的接口调用机制容易造成阻塞和延迟的问题。 0006 本发明实施例公开了如下技术方案: 0007。

10、 本发明第一方面提供了一种云海系统前端高并发接口调用优化装置, 包括容器模 块、 状态管理模块、 计时模块和初始化模块, 所述容器模块用于处理队列中多个请求的调用 排序, 所述容器模块用于对请求的状态进行标记, 所述容器模块用于将请求的状态发送到 状态管理模块, 所述状态管理模块用于显示队列中请求的订阅和请求的状态, 所述计时模 块用于处理请求超时, 所述初始化模块用于初始化容器模块和状态管理模块。 0008 进一步地, 所述容器模块包括遍历单元、 排序单元和标记单元, 所述遍历单元用于 遍历容器中所有请求的状态, 所述遍历单元用于将请求的状态发送到所述状态管理模块 中, 所述排序单元用于处理。

11、队列中多个请求的调用排序, 所述标记单元用于对请求的已完 成、 执行中和队列中的状态进行标记, 所述标记单元用于对已完成的请求成功和失败的状 态进行标记。 0009 进一步地, 所述排序单元设置有插队策略, 当第二请求依赖第一请求时, 在第一请 求执行完成后, 所述排序单元立即调用和执行第二请求。 0010 进一步地, 所述状态管理模块包括订阅单元和刷新单元, 所述订阅单元用于显示 所述容器模块中请求的订阅和请求的状态, 当所述容器模块中请求的状态发生改变时, 所 述刷新单元刷新请求的状态并将刷新后的请求状态发送给所述订阅单元。 说明书 1/4 页 4 CN 111338815 A 4 001。

12、1 进一步地, 所述装置包括进度展示模块, 所述进度展示模块用于从所述容器模块 获取队列中请求的已完成、 执行中和队列中的状态, 所述进度展示模块用于展示当前所有 请求状态的数量。 0012 本发明第二方面提供了一种云海系统前端高并发接口调用优化方法, 包括: 0013 初始化容器模块和状态管理模块; 0014 遍历容器中所有请求的状态; 0015 处理容器模块的队列中多个请求的调用排序; 0016 对容器模块中请求的状态进行标记; 0017 在状态管理模块显示队列中请求的订阅和请求的状态。 0018 进一步地, 所述处理队列中多个请求的调用排序包括插队策略, 当第二请求依赖 第一请求时, 在。

13、第一请求执行完成后, 所述排序单元立即调用和执行第二请求。 0019 进一步地, 所述对容器模块中请求的状态进行标记具体为: 0020 对请求的已完成、 执行中和队列中的状态进行标记, 对已完成的请求成功和失败 的状态进行标记。 0021 进一步地, 所述在状态管理模块显示队列中请求的订阅和请求的状态包括: 0022 遍历容器中所有请求的状态后, 在状态管理模块显示队列中请求的订阅和请求的 状态; 0023 当所述容器模块中请求的状态发生改变时, 刷新请求的状态, 在状态管理模块显 示刷新后的请求的订阅和请求的状态。 0024 进一步地, 所述方法包括进度展示, 从所述容器模块获取队列中请求的。

14、已完成、 执 行中和队列中的状态, 展示当前所有请求状态的数量。 0025 发明内容中提供的效果仅仅是实施例的效果, 而不是发明所有的全部效果, 上述 技术方案中的一个技术方案具有如下优点或有益效果: 0026 本发明提供的云海系统前端高并发接口调用优化装置及方法, 对容器模块的队列 中多个请求进行调用排序, 并对请求的状态进行标记, 在状态管理模块显示队列中请求的 订阅和请求的状态。 本发明将现有的异步并发调用过程分离成组件, 使整个代码更加的直 观, 阅读起来更加简洁清晰, 分离的逻辑和接口, 提高了代码的原子性和粒度, 增强代码的 可维护性和复用程度, 本发明实现了大批量接口异步调用场景。

15、下的接口调度。 附图说明 0027 为了更清楚地说明本发明实施例或现有技术中的技术方案, 下面将对实施例或现 有技术描述中所需要使用的附图作简单地介绍, 显而易见地, 对于本领域普通技术人员而 言, 在不付出创造性劳动的前提下, 还可以根据这些附图获得其他的附图。 0028 图1为本发明所述装置结构框图; 0029 图2为本发明所述方法流程图。 具体实施方式 0030 为了能清楚说明本方案的技术特点, 下面通过具体实施方式, 并结合其附图, 对本 发明进行详细阐述。 下文的公开提供了许多不同的实施例或例子用来实现本发明的不同结 说明书 2/4 页 5 CN 111338815 A 5 构。 为。

16、了简化本发明的公开, 下文中对特定例子的部件和设置进行描述。 此外, 本发明可以 在不同例子中重复参考数字和/或字母。 这种重复是为了简化和清楚的目的, 其本身不指示 所讨论各种实施例和/或设置之间的关系。 应当注意, 在附图中所图示的部件不一定按比例 绘制。 本发明省略了对公知组件和处理技术及工艺的描述以避免不必要地限制本发明。 0031 本发明使用了jQuery框架提供的AJAX方法, jQuery是继prototype之后又一个优 秀的轻量级JavaScript框架, 是一个快速和简洁的JavaScript库, 可以简化HTML文档元素 的遍历、 事件处理、 动画和Ajax交互, 以实现。

17、快速Web开发。 AJAX是异步的JavaScript和XML 的简称, 可以开发出非常灵敏无刷新的网页, 使用AJAX特效后, 可以对页面进行局部刷新, 提供动态的效果。 0032 本发明使用了ECMA(前端语法的规范委员会。 )规范本身的一些模块, 如导入、 导 出、 构造函数等特性, 还使用了订阅者-观察者模式的调用机制。 0033 如图1所示, 为本发明所述装置结构框图, 装置包括容器模块、 状态管理模块、 计时 模块和初始化模块, 容器模块用于处理队列中多个请求的调用排序, 容器模块用于对请求 的状态进行标记, 容器模块用于将请求的状态发送到状态管理模块, 状态管理模块用于显 示队列。

18、中请求的订阅和请求的状态, 计时模块用于处理请求超时, 初始化模块用于初始化 容器模块和状态管理模块。 0034 容器模块包括遍历单元、 排序单元和标记单元, 遍历单元用于遍历容器中所有请 求的状态, 遍历单元用于将请求的状态发送到状态管理模块中, 排序单元用于处理队列中 多个请求的调用排序, 标记单元用于对请求的已完成、 执行中和队列中的状态进行标记, 标 记单元用于对已完成的请求成功和失败的状态进行标记。 0035 容器的实质是个数组, 我们把多个请求放到数组里。 在容器模块初始化时, 把多个 请求一次性放到该数组里, 或者容器已经创建后, 单独提供方法去操作这个容器, 来实现把 新的请求。

19、对象放(pull进容器里那个数组)进去。 0036 每一个请求都是一个对象, 本装置负责管理这些对象, 不插手这些对象内部发生 的一切, 只获取这些对象执行成功、 失败、 执行中和队列中的情况进行标记。 0037 容器中包括队列本身(数组)、 操作容器的函数、 操作队列的函数和各种回调函数, 队列本身就是承载各种请求的操作容器的函数, 主要是为了对外暴露, 便于操作容器, 操作 队列是为了排序, 给请求对象挂载函数是为了标记对象状态和刷新状态, 并向状态管理模 块发送订阅。 0038 遍历单元遍历容器模块里的请求, 请求会按照各自相应的逻辑去更新状态。 如果 请求执行失败了, 则调用请求执行失。

20、败的回调函数, 按照请求执行失败去标记状态, 如果请 求执行成功了, 则调用请求成功的回调函数, 按照请求执行成功去标机状态。 0039 排序单元设置有插队策略, 当第二请求依赖第一请求时, 在第一请求执行完成后, 排序单元立即调用和执行第二请求。 0040 请求是有url的, 按照url去区分各种不同的请求并制定调度的策略。 如果几个请 求有依赖关系, 如c接口依赖a和b, 则控制a和b调用完成后, 立马给c插队去调用。 还有一些 其他策略, 本发明不再赘述。 0041 状态管理模块包括订阅单元和刷新单元, 订阅单元用于显示容器模块中请求的订 阅和请求的状态, 当容器模块中请求的状态发生改变。

21、时, 刷新单元刷新请求的状态并将刷 说明书 3/4 页 6 CN 111338815 A 6 新后的请求状态发送给订阅单元。 0042 每一个请求需要在状态管理模块订阅, 以保证每个请求能够成功消费掉, 并且有 相应的执行结果。 0043 计时模块的计时从容器初始化的时候开始计时, 容器的初始化包括容器内各个模 块的初始化。 如果超时, 计时模块将中断所有请求的处理, 直接返回超时信息。 设置计时模 块是为了提升用户体验, 达到将系统卡或者响应慢当做性能问题来优化的目的, 相当于一 个性能指标。 0044 装置包括进度展示模块, 进度展示模块用于从容器模块获取队列中请求的已完 成、 执行中和队。

22、列中的状态, 进度展示模块用于展示当前所有请求状态的数量。 0045 如图2所示, 为本发明所述方法流程图, 方法包括: 0046 初始化容器模块和状态管理模块; 0047 遍历容器中所有请求的状态; 0048 处理容器模块的队列中多个请求的调用排序; 0049 对容器模块中请求的状态进行标记; 0050 在状态管理模块显示队列中请求的订阅和请求的状态。 0051 处理队列中多个请求的调用排序包括插队策略, 当第二请求依赖第一请求时, 在 第一请求执行完成后, 排序单元立即调用和执行第二请求。 0052 对容器模块中请求的状态进行标记具体为: 0053 对请求的已完成、 执行中和队列中的状态进。

23、行标记, 对已完成的请求成功和失败 的状态进行标记。 0054 在状态管理模块显示队列中请求的订阅和请求的状态包括: 0055 遍历容器中所有请求的状态后, 在状态管理模块显示队列中请求的订阅和请求的 状态; 0056 当容器模块中请求的状态发生改变时, 刷新请求的状态, 在状态管理模块显示刷 新后的请求的订阅和请求的状态。 0057 方法包括进度展示, 从容器模块获取队列中请求的已完成、 执行中和队列中的状 态, 展示当前所有请求状态的数量。 0058 本发明可以根据实际需要进行接口的灵活调用, 增加调度处理模块, 通过记录数 据库的形式, 统计每次的接口调用性能信息, 作为调度模块调度接口的参考依据。 同时, 装 置上的进度展示模块, 可根据需要进行模块化记载, 按照业务实际需要加载, 可以优化以提 高性能。 0059 以上所述只是本发明的优选实施方式, 对于本技术领域的普通技术人员来说, 在 不脱离本发明原理的前提下, 还可以做出若干改进和润饰, 这些改进和润饰也被视为本发 明的保护范围。 说明书 4/4 页 7 CN 111338815 A 7 图1 图2 说明书附图 1/1 页 8 CN 111338815 A 8 。

展开阅读全文
内容关键字: 云海 系统 前端 并发 接口 调用 优化 装置 方法
关于本文
本文标题:云海系统前端高并发接口调用优化装置及方法.pdf
链接地址:https://www.zhuanlichaxun.net/pdf/10599233.html
关于我们 - 网站声明 - 网站地图 - 资源地图 - 友情链接 - 网站客服 - 联系我们

copyright@ 2017-2018 zhuanlichaxun.net网站版权所有
经营许可证编号:粤ICP备2021068784号-1