[发明专利]基于git子模块的类型安全系统、实现方法和电子设备在审
申请号: | 202210548750.7 | 申请日: | 2022-05-20 |
公开(公告)号: | CN114860225A | 公开(公告)日: | 2022-08-05 |
发明(设计)人: | 李朝 | 申请(专利权)人: | 北京智源人工智能研究院 |
主分类号: | G06F8/35 | 分类号: | G06F8/35;G06F8/71;G06F21/12 |
代理公司: | 北京动力号知识产权代理有限公司 11775 | 代理人: | 梁艳 |
地址: | 100084 北京市海淀区*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 基于 git 模块 类型 安全 系统 实现 方法 电子设备 | ||
本发明公开了基于git子模块的类型安全系统、实现方法和电子设备。包括数据类型git子模块和API git子模块;前端和后端均使用类型安全语言;各类数据的类型定义分别对应存放于各数据类型git子模块中;通过导入或更新数据类型git子模块实现项目对数据类型的定义或更新;各微服务提供对应的API git子模块接口,通过导入或更新所述API git子模块实现项目获得调用对应API的资格;各git子模块之间设置有依赖关系。该系统可以做细致的微服务拆分;不需要人为设置配置文件,减少了配置过程出现的各种问题;可以确保数据在任何微服务中都有相同的定义;可以把任何类型的共享代码放入git子模块。
技术领域
本发明涉及计算机技术领域,尤其涉及一种基于git子模块的类型安全系统、实现方法和电子设备。
背景技术
随着信息技术的持续发展,以及将人工智能技术应用到各个交叉领域的需求不断增加,搭建越来越大规模的计算机系统以存储、处理复杂的大规模的业务数据成为了必然。
目前,大多采用前后端分离技术和微服务架构搭建大规模的计算机系统。其中,前后端分离技术是指前后端开发者可以分别独立开发,前端完全不需要依赖后端,后期完成前后端集成。可以实现前后端应用的解耦合,极大的提升了开发效率。微服务架构是将单一应用程序划分成一组小的服务,服务之间相互协调、互相配合,每个服务运行在其独立的进程中,服务和服务之间采用轻量级的通信机制相互沟通。每个服务都围绕着具体的业务进行构建,并且能够被独立的部署到生产环境、类生产环境等,各服务之间的关联性低,开发效率高。
但是这两种技术存在如下两个方面的问题:
1.没有统一的、成熟的类型安全解决方案。一般采用前后端分离技术形成的前后端系统未强调类型安全的理念,因此处理的数据往往是使用松散的json表达,并且在不同的位置(例如后端微服务、前端页面)会使用不同的语言和数据结构来存储和处理。这从根本上阻碍了类型安全的数据在系统的前后端自由交换、沟通。
2.没有很好的代码共享机制。因为有了前后端代码分离,并且把后端的代码拆分成了很多微服务,所以系统中往往存在大量的重复代码。一般来说,常用的解决方案是为整个系统创建不同的代码包,定义数据类型等公用代码,然后通过修改系统配置文件,让各个微服务调用这些代码包实现自身特有功能。然而,这种方式对类型安全的支持并不完美。一方面,修改配置文件是比较繁琐的过程,可能因为敲错一个字符、环境设置问题导致配置失败;另一方面,共享的代码包为了能够兼容编译器,往往需要确保自己也是可以编译使用的,而不能是一段需要被嵌入各个系统的零碎代码。这就大大限制了共享代码包的适用范围,导致很多微服务仍然需要写一些重复代码。
发明内容
为了解决现有技术中存在的问题,本发明提供了如下技术方案。
本发明一方面提供了一种基于git子模块的类型安全系统,所述系统包括前端和后端,且所述系统采用微服务架构,所述系统包括多种git子模块,所述git子模块包括数据类型git子模块和API git子模块;
所述前端和后端均使用类型安全语言;
各类数据的类型定义分别对应存放于各所述数据类型git子模块中;通过在项目中导入或更新所述数据类型git子模块实现项目对数据类型的定义或更新;
各微服务提供对应的所述API git子模块接口,通过在项目中导入或更新所述APIgit子模块实现项目获得调用对应API的资格;
各所述git子模块之间设置有依赖关系。
优选地,所述git子模块还包括CommonUtils git子模块,各微服务运行所需要的功能均存放于所述CommonUtils git子模块中。
优选地,各类数据的类型由对应的微服务定义。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京智源人工智能研究院,未经北京智源人工智能研究院许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202210548750.7/2.html,转载请声明来源钻瓜专利网。