基于分布式的可视化超高效服务器开发系统技术方案

技术编号:38339424 阅读:7 留言:0更新日期:2023-08-02 09:20
本发明专利技术涉及服务器信息系统开发技术领域领域,具体涉及一种基于分布式的可视化超高效服务器开发系统。包括构架底层核心库、协程调度器及协程可伸缩栈、可视化开发模块、部署模块。解决了把复杂C++编程方式转换成可视化的编程方式,通过使用本系统,服务器开发编写难度大大降低。从而使企业在开发时节省时间成本和人力、资金成本。资金成本。

【技术实现步骤摘要】
基于分布式的可视化超高效服务器开发系统


[0001]本专利技术涉及服务器信息系统开发
领域,具体涉及一种基于分布式的可视化超高效服务器开发系统。

技术介绍

[0002]随着互联网应用的不断深入,各研发单位对互联网大数据应用提出了新的需求。与此同时,在物联网、元宇宙技术的推动下,对微服务系统的规模及复杂度提出了新的需求,对怎么降低超大规模微服务系统的开发、运维难度及成本,提出了一个大的挑战。
[0003]传统开发模式仍然体现了如下缺点:需求响应速度慢。现代应用系统快速发展,业务需求不断变化,而在传统开发模式下,为了响应新的需求,需要从设计到编程、测试,经过一系列的验证和实践,才能保证在系统可用的前提下增加功能。
[0004]系统维护困难。系统上线后,为了保证系统正常运行,尤其是大型信息系统,难免对产生的错误和问题进行修改或维护。而一旦超过了系统运维期,再进行系统的维护将会产生大量的维护费用,如果原开发团队解散,甚至会形成无法继续维护的窘境。
[0005]微服务是一种可持续集成部署的分布式架构系统,在服务之间具有高度自主性,并使用轻量级协议进行通信。

技术实现思路

[0006]本专利技术意在提供基于分布式的可视化超高效服务器开发系统,降低对开发人员的素质要求,以可视化的方式进行微服务系统的开发。
[0007]为达到上述目的,本专利技术采用如下技术方案:基于分布式的可视化超高效服务器开发系统,包括构架底层核心库、协程调度器及协程可伸缩栈、可视化开发模块、部署模块,/>[0008]所述构架底层核心库中包含内存管理、字符集转换、基础数据结构;
[0009]所述可视化开发模块包括网关、服务、协议;网关及服务继承与对应的模板代码、通过协议进行内部及外部交互,协议描述交互的参数,及方法;
[0010]所述部署模块,通过编写K8s接口进行部署;通过HTTPS对部署服务的数据流状态进行监控。
[0011]本方案的原理及优点是:实际应用时,解决了把复杂C++编程方式转换成可视化的编程方式,通过使用本系统的可视化开发模块,连接构架底层核心库,可以提供直观方便的开发方式,使得服务器开发编写难度大大降低。从而使企业在开发时,节省时间成本和人力、资金成本。
[0012]优选的,作为一种改进,所述协程调度器及协程可伸缩栈,初始化栈大小为4KB。
[0013]优选的,作为一种改进,当栈消耗超过90%时将重新分配栈,并把旧栈数据拷贝到新栈中,并重新修改当前线程栈的地址到新分配栈。
[0014]优选的,作为一种改进,还包括通过Hook重新编写系统Sleep、IOEvent、同步锁的系统函数。
[0015]优选的,作为一种改进,还包括基于Actor并行模型构建系统并行模块。
[0016]优选的,作为一种改进,所述可视化开发模块,包括界面设计器、组件选择器、组件属性配置、事件驱动管理、代码能力嵌入、流程设计、实时效果预览、代码生成预览。
[0017]优选的,作为一种改进,所述可视化开发模块,配置组件的属性和行为,实时生成代码。
具体实施方式
[0018]下面通过具体实施方式进一步详细说明:
[0019]具体实施过程如下:
[0020]基于分布式的可视化超高效服务器开发系统,包括构架底层核心库、协程调度器及协程可伸缩栈、可视化开发模块、部署模块,
[0021]所述构架底层核心库中包含内存管理、字符集转换、基础数据结构;
[0022]所述可视化开发模块包括网关、服务、协议;网关及服务继承与对应的模板代码、通过协议进行内部及外部交互,协议描述交互的参数,及方法;
[0023]所述部署模块,通过编写K8s接口进行部署;通过HTTPS对部署服务的数据流状态进行监控。
[0024]本方法构建一个完整的开发环境:
[0025]①
构架底层核心库Core,此库包含内存管理、字符集转换、基础数据结构;
[0026]②
协程调度器及协程可伸缩栈,由于在大并发下开启过多线程对内存及操作系统上下文切换开销过大,所以我们使用协程来替代线程,协程工作原理只是备份及还原当前线程的栈状态,所以不存在系统上下文切换因此系统开销小,但由于线程栈大小未知如果协程的栈空间也使用固定大小在分配数量过多时占用太多内存:如:栈大小为1MB时,分配10万个将消耗掉97GB内存,哪么分配过小又会存在栈溢出问题,所以我们协程采用了可伸缩栈的方法:
[0027](1)初始化栈大小为4KB。
[0028](2)栈的前2个字节表示栈使用大小。
[0029](3)当栈消耗超过90%时将重新分配栈,并把旧栈数据拷贝到新栈中,并重新修改当前线程栈的地址到新分配栈。
[0030]③
通过Hook重新编写系统Sleep、IOEvent、同步锁等系统函数。
[0031]④
基于Actor并行模型构建系统并行模块。
[0032]⑤
构建基于面板及插件化的软件管理体系。
[0033]⑥
可视化开发系统,可视化开发系统由3类图元组成:网关、服务、协议组成:网关及服务继承与对应的模板代码、通过协议进行内部及外部交互,协议描述交互的参数,及方法:方法由自定义HASHID确定所在服务及唯一性HASHID由所在图元及字符串HASH值组成,协议采用数据序列化的方式通过TCP/UDP在客户端网关与服务之间进行交互,协议的描述struct xxxx{
[0034]@param类型名称=序列号;
[0035]@service名称(参数1

n)返回;};
[0036]此描述语句通过编译器生成相应代码并加入到对应图元中。
[0037]⑦
通过编写K8s接口进行快速部署。通过HTTPS对部署服务的数据流状态进行监控。
[0038]本专利技术公开描述一种服务器开发系统,其中开发和部署软件应用程序的过程可以在开发者计算系统上执行。可视化开发环境允许开发者使用可视化脚本范例来产生调用并访问各种服务的代码。可视化开发环境存在于用户会话之间的编程逻辑组件。用户可使用可视化脚本范例来开发应用程序。整个系统可使用可视化脚本范例来创建,使得系统的所有代码都使用可视化开发环境来产生。集成开发环境包括代码编辑器、编译器、调试器等工具。集成了代码编写功能、分析功能、编译功能、调试功能等一体化的开发功能。
[0039]本专利技术涉及一种基于分布式的可视化超高效服务器开发系统,其中采用了一种可视化编程方法,使得开发人员可以将复杂的C++编程方式转换为可视化编程方式,从而大大降低了编写难度。本系统构建了一个完整的开发环境,包括底层核心库、协程调度器和协程可伸缩栈、Hook重新编写系统函数、基于Actor并行模型的系统并行模块、基于面板及插件化的软件管理体系等。
[0040]在底层核心库方面,本系统包含内存管理、字符集转换、基础数据结构等,为本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.基于分布式的可视化超高效服务器开发系统,其特征在于:包括构架底层核心库、协程调度器及协程可伸缩栈、可视化开发模块、部署模块,所述构架底层核心库中包含内存管理、字符集转换、基础数据结构;所述可视化开发模块包括网关、服务、协议;网关及服务继承与对应的模板代码、通过协议进行内部及外部交互,协议描述交互的参数及方法;所述部署模块,通过编写K8s接口进行部署;通过HTTPS对部署服务的数据流状态进行监控。2.根据权利要求1所述的基于分布式的可视化超高效服务器开发系统,其特征在于:所述协程调度器及协程可伸缩栈,初始化栈大小为4KB。3.根据权利要求2所述的基于分布式的可视化超高效服务器开发系统,其特征在于:当栈消耗超过90%时将重新分配栈,并把旧栈数据拷贝到新栈中...

【专利技术属性】
技术研发人员:梁渝
申请(专利权)人:云车智途重庆科技有限公司
类型:发明
国别省市:

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

1