一种基于异步分发算法的三维软件架构的制作方法

未命名 09-13 阅读:89 评论:0


1.本发明属于网站加载开发技术领域,尤其与一种基于异步分发算法的三维软件架构。


背景技术:

2.随着4g网络的普及,移动互联网也随之倔起,移动网站越来越受到重视。网页的加载速度也是用户体验中就重要的一环。百度推出的闪电算法更是要求移动端的网页必须在2秒内完全加载,这也成了整个行业的标准。同时网站的加载速度也将直接影响搜索引擎中的排名。网站打开速度的快与慢,直接关系到访客的用户体验度。网站被加载的速度与多个要素相关,如服务器优与劣,网络带宽大与小,页面代码繁与简等。如果受限于资金,那么通过优化网页代码来加速网站打开速度,就是很有效的方法。用户在打开一个网页时,后台程序响应用户所需的时间并不多,用户等待的时间主要花费在下载网页元素上了,即html、css、javascript、flash、图片等,统计显示,每增加一个元素,网页载入的时间就增加25-40毫秒(取决于用户的带宽情况)。所以,想要提高网页打开速度,就要优化请求顺序和减少页面请求。
3.在任何给定时间,应用、系统和服务之间都会有大量数据以消息形式移动。如果应用未准备就绪,或者发生服务中断,消息和事务可能就会丢失或重复,企业就不得不花费大量时间和资金来纠正错误。通过在不同平台上作为应用之间的消息传递中心,mq(消息队列)几乎可在任何地方连接所有内容,减少了集成时间和成本,并能够可靠地移动消息。设计成就安全-内置高可用性和灾难恢复能力-mq(消息队列)可通过细粒度认证和强大的数据加密技术来保护静态数据、动态数据和内存中的数据。由于mq(消息队列)可处理连接和消息重试操作,它使开发者能够将时间用在更关键的计划上。它还易于缩放,能够无缝地管理事务量的变化。
4.mq(消息队列)可靠性的核心在于一次且仅限一次传递,能够确信必将传递消息。其他产品则使用至少一次或至多一次传递,这意味着将会重复或丢失消息。在异步消息传递环境中,mq(消息队列)可充当应用之间的减震器。如果存在网络或应用中断,那么它会将消息保存在特殊队列中,直到所有内容都运行为止。mq(消息队列)的传输层安全性(tls)可保护线上的消息,而内置的访问控制则可在目标队列上保护这些消息。


技术实现要素:

5.针对上述背景技术存在的问题,本发明的目的在于解决传统开发方法中存在的网页加载慢,开发维护成本高的问题,提出一种解决页面请求响应技术的一种基于异步分发算法的三维软件架构,实现综合应用消息队列(mq)、多线程并发、优先权重算法等先进技术,对并发任务进行队列管理,优化页面渲染性能。同时降低开发维护成本,对不同的任务进行时序管理与精细化页面渲染。
6.为此,本发明采用以下技术方案:一种基于异步分发算法的三维软件架构,包括快
service)和易消息管理系统模块(easymq manager);
23.其中快开式模块具有页面渲染功能的可重用的客户端(client)模块,易消息守护进程模块负责对正在工作中的程序进行数据同步、唤起页面渲染;当引擎(engine)接收到模块注册请求后,对其所关联的进程进行监听;所述的请求/支撑数据转换服务模块作为中间对接模块,负责对数据进行加工分析处理工作;易消息管理系统模块通过优先权重算法,实现二维数据、三维场景中对并发数据进行实时交互。
24.作为对上述技术方案的补充和完善,本发明还包括以下技术特征。
25.所述的优先权重算法具体步骤为:
26.公式1:
[0027][0028]
w:系统得到的最优执行权
[0029]
α:对页面渲染的影响系数。α∈[0,1],α∈r,该值参考卡尔曼增益系数。当α

1时,权重越高,说明其对页面渲染的影响越大;当α

0时,对渲染影响越小;当α=1时,表示绝对影响,为即时数据;当α=0时,表示数据包可忽略;
[0030]
ρ:任务优先级。ρ∈[1,-∞],ρ∈n,数值越大优先级越高。如果系统未给出变量则默认为1;
[0031]
t
p
:任务的计划用时,单位为s;
[0032]
t
k-1
:任务的上次用时;
[0033]
t:任务的实时用时;
[0034]
c:对客户端的性能估值,c为常数;其数值越大,表示计算机性能越高,默认为1。
[0035]
以下一个典型的编码流程:
[0036]
(1)、声明引擎。声明一个triangulumnengine引擎类,该引擎至少由1个模块基类,1个初始化方法,1个获得实例的接口构成,并且实现它。
[0037]
(2)、注册模块。调用triangulumnengine类的单例,向engine注册模块,需配置模块的唯一识别号、模块名称、模块类型等基础属性。(3)、定义模块。实现对模块基类的easymq处理,包括但不限于虚函数实现、以及更多接口方法。如果easymq包被标记为raw原始数据时,先将包内数据送往r/p service请求/支撑数据转换服务进行数据加工。
[0038]
(4)、定义easymqdaemon消息守护进程。每个守护进程为一个模块服务,其对进行基于异步的多线程的监听,监听来自easymqmanager的easymq任务,将任务解析后传入模块进行执行,协助完成页面渲染等一系统动作。
[0039]
(5)、为每个模块实现请求/支撑数据转换服务(r/p service)。该服务做为模块中间件,其i/o接口必须为可序列化的易消息(easymq)包结构。其实现可以是任意开发语言或接口,可以是内置代码环境,也可以是网页请求(http/https)、长连接(websocket)、动态消息队列(activemq)、深度人工智能(deep ai)数据分析软件等。
[0040]
(6)、定义易消息管理系统(easymqmanager)。一个守护管理器和守护的易消息(easymq)至少需要满足该发明专利的公式

的算法。每当从守护进程或者数据转换服务获取到easymq包后,读取包内数据,并根据公式

算法计算得到最优执行权(w),然后插入到消息池中,最后向路由指定的守护进程或者数据转换服务进行广播、挂起、等待。至此,已完
成整个系统的消息注册与管理。
[0041]
以3d object类型的模块为例,一套完整的3d scens可能包括:主建筑2栋、附近建筑10栋、道路5条、树木50颗、路标40个、汽车30辆、行人100位。共计237个scens,其中,观察优先级ρ时:主建筑最高,道路其次,行人优先级最低;而观察时间t
p
时:主建筑的用时最长,附近建筑次之,树木最快;而观察影响系数α时:主建筑为绝对影响,道路为次影响,汽车、路标、行人为低影响,且部分为可忽略。表格如下:
[0042]
场景数量影响α优先级ρ用时tp优先权重w主建筑20.982036.533333333附近建筑100.55922.475道路50.8150.1580树木500.6100.160路标400.240.24汽车300.1520.31行人1000.110.40.25
[0043]
根据计算后的w值可知,易消息(easymq)队列先后次序为:道路》树木》主建筑》路标》附近建筑》路标》行人》汽车。注:不同的行人、建筑的参数之间可能也有不同,由于算法是一致的,这里不再赘述。
[0044]
以上显示和描述了本发明的基本原理和主要特征和本发明的优点。本行业的技术人员应该了解,本发明不受上述实施例的限制,上述实施例和说明书中描述的只是说明本发明的原理,在不脱离本发明精神和范围的前提下,本发明还会有各种变化和改进,这些变化和改进都落入要求保护的本发明范围内。本发明要求保护范围由所附的权利要求书及其等效物界定。

技术特征:
1.一种基于异步分发算法的三维软件架构,其特征在于:所述的基于异步分发算法的三维软件架构包括快开式模块(quickmodule)、易消息守护进程模块(easymq daemon)、请求/支撑数据转换服务模块(r/p service)和易消息管理系统模块(easymq manager);其中所述的快开式模块具有页面渲染功能的可重用的客户端(client)模块,所述的易消息守护进程模块负责对正在工作中的程序进行数据同步、唤起页面渲染;当引擎(engine)接收到模块注册请求后,对其所关联的进程进行监听;所述的请求/支撑数据转换服务模块作为中间对接模块,负责对数据进行加工分析处理工作;易消息管理系统模块通过优先权重算法,实现二维数据、三维场景中对并发数据进行实时交互。2.根据权利要求1所述的一种基于异步分发算法的三维软件架构,其特征在于所述的优先权重算法具体步骤为:公式1:w:系统得到的最优执行权α:对页面渲染的影响系数。α∈[0,1],α∈r,该值参考卡尔曼增益系数。当α

1时,权重越高,说明其对页面渲染的影响越大;当α

0时,对渲染影响越小;当α=1时,表示绝对影响,为即时数据;当α=0时,表示数据包可忽略;ρ:任务优先级。ρ∈[1,-∞],ρ∈n,数值越大优先级越高。如果系统未给出变量则默认为1;t
p
:任务的计划用时,单位为s;t
k-1
:任务的上次用时;t:任务的实时用时;c:对客户端的性能估值,c为常数;其数值越大,表示计算机性能越高,默认为1。

技术总结
一种基于异步分发算法的三维软件架构,属于网站加载开发技术领域。本发明包括快开式模块(QuickModule)、易消息守护进程模块(EasyMQ Daemon)、请求/支撑数据转换服务模块(R/P Service)和易消息管理系统模块(EasyMQ Manager);其中快开式模块具有页面渲染功能的可重用的客户端(Client)模块,所述的易消息守护进程模块负责对正在工作中的程序进行数据同步、唤起页面渲染;当引擎(Engine)接收到模块注册请求后,对其所关联的进程进行监听;所述的请求/支撑数据转换服务模块作为中间对接模块,负责对数据进行加工分析处理工作;易消息管理系统模块通过优先权重算法,实现二维数据、三维场景中对并发数据进行实时交互。三维场景中对并发数据进行实时交互。三维场景中对并发数据进行实时交互。


技术研发人员:张龙 赵向明 程玉成 赵杨 张猛 谢星
受保护的技术使用者:杭州徽华信息技术有限公司
技术研发日:2022.03.03
技术公布日:2023/9/12
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐