System.ArgumentOutOfRangeException: 索引和长度必须引用该字符串内的位置。 参数名: length 在 System.String.Substring(Int32 startIndex, Int32 length) 在 zhuanliShow.Bind() 操作命令生成方法、微服务架构通讯方法及微服务系统技术方案_技高网

操作命令生成方法、微服务架构通讯方法及微服务系统技术方案

技术编号:40827846 阅读:2 留言:0更新日期:2024-04-01 14:49
本发明专利技术实施例涉及通讯技术领域,具体涉及操作命令生成方法、微服务架构通讯方法及微服务系统,实现以上技术效果:网关周期轮询各个微服务程序的通讯接口标识符,确定各个微服务程序的操作命令是否有变更,如有变更,即时更新操作命令。并在网关微服务中保存了操作命令和对应微服务的通讯地址。且在微服务系统中使用网关作为所有的消息入口,统一了与客户端的通讯地址;整个服务端向外提供了统一的通讯地址,提供了统一的命令接口。客户端不用变更通讯地址。隐藏了命令和微服务之间的关系,整个服务端就像只有一个微服务。提高了系统的安全性。网关实时自动更新每个微服务操作命令。方便业务微服务的升级和管理。

【技术实现步骤摘要】

本专利技术实施例涉及通讯,具体涉及操作命令生成方法、微服务架构通讯方法及微服务系统


技术介绍

1、微服务架构(microservice architecture)是一种架构概念,旨在通过将功能分解到各个离散的服务中以实现对解决方案的解耦。微服务架构把一个大型的单个应用程序和服务拆分为数个甚至数十个的支持微服务,它可扩展单个组件而不是整个的应用程序堆栈,从而满足服务等级协议。围绕业务领域组件来创建应用,这些应用可独立地进行开发、管理和迭代。在分散的组件中使用云架构和平台式部署、管理和服务功能,使产品交付变得更加简单。

2、在现代微服务架构中,后端的多个微服务程序如何与前端进行通讯.。其实现方式有多种多样,大致划分为如下三种:

3、(1)多个微服务通过不同ip与前端通讯;

4、(2)多个微服务通过相同的ip和不同的端口与前端通讯;

5、(3)多个微服务通过网关,使用相同的ip和不同的下级路径与前端通讯。

6、通过网关根据下级路径的不同,自动转发到对应的微服务中。不同的微服务,使用了不同的本地ip地址。

7、但上述方法,在前端来看,事实上都是不同的网址路径。如果后端相关接口变更时,前端也需要同步做网址变更。另外每个微服务的通讯接口是独立的,无法向前端提供统一的通讯接口。同时容易向外暴露了后端微服务的工作情况,造成了信息安全隐患。


技术实现思路

1、鉴于上述问题,本专利技术实施例提供了操作命令生成方法、微服务架构通讯方法及微服务系统,解决了微服务架构一致性差、信息安全差的问题。

2、根据本专利技术实施例的一个方面,提供了一种操作命令生成方法,应用于设有网关、及多个微服务程序的微服务系统中,所述方法包括:

3、启动所述微服务系统;

4、所述网关周期轮询每个微服务程序,判断所述微服务程序的操作命令是否发生变化;

5、若操作命令发生变化则接收所述微服务程序的操作命令集,将所述操作命令集与微服务程序进行绑定;且合并所有的微服务程序的操作命令集,向客户端提供统一的操作命令接口;

6、否则不进行处理。

7、在一种可选的方式中,所述网关周期轮询每个微服务程序,判断所述微服务程序的操作命令是否发生变化,具体包括:

8、所述网关启动;

9、所述网关向各个所述微服务程序发送通信接口标识符获取指令,并从所述微服务程序获取通信接口标识符;

10、解析所述通信接口标识符,判断通信接口标识符是否发生变化。

11、在一种可选的方式中,所述网关轮询每个微服务程序的周期为1秒。

12、在一种可选的方式中,所述微服务程序生成操作命令集,具体包括:

13、所述微服务程序启动;

14、生成所述微服务程序的操作命令集,并根据设备特征码和系统时间生成通讯接口标识符;

15、若所述微服务程序接收到通信接口标识符获取指令,则向网关返回通信接口标识符;

16、若所述微服务程序接收到获取通讯接口请求,则向网关返回通讯接口内容。

17、在一种可选的方式中,将所述操作命令集与微服务程序进行绑定,包括:

18、所述网关通过loadedendpoint数组,保存微服务程序的通信地址、通信接口标识符、操作命令集。

19、在一种可选的方式中,所述合并所有的微服务程序的操作命令集,包括:

20、定义所述操作命令集格式,并将所述微服务程序的操作命令集通过query类型和mutation类型进行通讯格式合并。

21、在一种可选的方式中,所述操作命令集通过sdl语言实现,且所述操作命令集的格式:sdl:schema{query:query;mutation:mutation},其中,query为查询模式,mutation为修改模式。

22、根据本专利技术实施例的另一方面,提供了一种微服务架构通讯方法,所述方法包括:

23、所述网关接收并解析客户端的请求信息,获取微服务程序的通信地址,并根据所述通信地址将请求信息转发到微服务程序中,其中,所述请求信息包括上述一种操作命令生成方法中的任一操作命令。

24、在一种可选的方式中,当所述微服务程序根据所述请求信息执行操作命令后,将执行结果发送到所述网关中,再通过所述网关发送到客户端。

25、根据本专利技术实施例的又一方面,提供了一种微服务系统,包括:

26、所述客户端,用于向所述服务端发送请求信息;

27、所述服务端,包括网关、以及多个微服务程序,用于接收并解析客户端的请求信息,获取微服务程序的通信地址,并根据所述通信地址将请求信息转发到微服务程序中,其中,所述请求信息包括上述一种操作命令生成方法中的任一操作命令。

28、本专利技术实施例设计了操作命令生成方法、微服务架构通讯方法及微服务系统,实现以上技术效果:网关周期轮询各个微服务程序的通讯接口标识符,确定各个微服务程序的操作命令是否有变更,如有变更,即时更新操作命令。并在网关微服务中保存了操作命令和对应微服务的通讯地址。且在微服务系统中使用网关作为所有的消息入口,统一了与客户端的通讯地址;整个服务端向外提供了统一的通讯地址,提供了统一的命令接口。客户端不用变更通讯地址。隐藏了命令和微服务之间的关系,整个服务端就像只有一个微服务。提高了系统的安全性。网关实时自动更新每个微服务操作命令。方便业务微服务的升级和管理。

29、上述说明仅是本专利技术实施例技术方案的概述,为了能够更清楚了解本专利技术实施例的技术手段,而可依照说明书的内容予以实施,并且为了让本专利技术实施例的上述和其它目的、特征和优点能够更明显易懂,以下特举本专利技术的具体实施方式。

本文档来自技高网...

【技术保护点】

1.一种操作命令生成方法,其特征在于,应用于设有网关、及多个微服务程序的微服务系统中,所述方法包括:

2.根据权利要求1所述的一种操作命令生成方法,其特征在于,所述网关周期轮询每个微服务程序,判断所述微服务程序的操作命令是否发生变化,具体包括:

3.根据权利要求2所述的一种操作命令生成方法,其特征在于,所述网关轮询每个微服务程序的周期为1秒。

4.根据权利要求2所述的一种操作命令生成方法,其特征在于,所述微服务程序生成操作命令集,具体包括:

5.根据权利要求1所述的一种操作命令生成方法,其特征在于,将所述操作命令集与微服务程序进行绑定,包括:

6.根据权利要求1所述的一种操作命令生成方法,其特征在于,所述合并所有的微服务程序的操作命令集,包括:

7.根据权利要求6所述的一种操作命令生成方法,其特征在于,所述操作命令集通过SDL语言实现,且所述操作命令集的格式:sdl:schema{query:Query;mutation:Mutation},其中,query为查询模式,mutation为修改模式。

>8.一种微服务架构通讯方法,其特征在于,所述方法包括:

9.根据权利要求8所述的一种微服务架构通讯方法,其特征在于,当所述微服务程序根据所述请求信息执行操作命令后,将执行结果发送到所述网关中,再通过所述网关发送到客户端。

10.一种微服务系统,其特征在于,包括:

...

【技术特征摘要】

1.一种操作命令生成方法,其特征在于,应用于设有网关、及多个微服务程序的微服务系统中,所述方法包括:

2.根据权利要求1所述的一种操作命令生成方法,其特征在于,所述网关周期轮询每个微服务程序,判断所述微服务程序的操作命令是否发生变化,具体包括:

3.根据权利要求2所述的一种操作命令生成方法,其特征在于,所述网关轮询每个微服务程序的周期为1秒。

4.根据权利要求2所述的一种操作命令生成方法,其特征在于,所述微服务程序生成操作命令集,具体包括:

5.根据权利要求1所述的一种操作命令生成方法,其特征在于,将所述操作命令集与微服务程序进行绑定,包括:

6.根据权利要求1所述的一种操作...

【专利技术属性】
技术研发人员:潘家跃汤志敏李伟邹伟华
申请(专利权)人:伟乐视讯科技股份有限公司
类型:发明
国别省市:

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

1