一种基于C++的微服务开发方法和系统[发明专利]

(19)中华人民共和国国家知识产权局
(12)发明专利申请
(10)申请公布号 (43)申请公布日 (21)申请号 202010192834.2
(22)申请日 2020.03.18
(71)申请人 成都中科合迅科技有限公司
地址 610041 四川省成都市高新区科园南
路1号4号楼8层
(72)发明人 刘巧红 
(74)专利代理机构 成都欣圣知识产权代理有限
公司 51292
代理人 王海文
(51)Int.Cl.
G06F  8/20(2018.01)
(54)发明名称
一种基于C++的微服务开发方法和系统
(57)摘要
本发明提供了一种基于C++的微服务开发方
法和系统,该方法和系统提供了以C++系语言为
进行服务化的微服务框架模式,其同时也支持
java语言的服务扩展,该方法和系统能够对微服
务开发框架对应划分形成的微服务进行隔离,还
能够支持多种客户端进行访问和支持跨平台的
国产化操作系统,该方法和系统还能够实现不同
微服务之间的高度解耦,并便于接入相应的服务
治理平台进行统一管理和监控。权利要求书3页  说明书7页  附图1页CN 111427547 A 2020.07.17
C N  111427547
A
1.一种基于C++的微服务开发方法,其特征在于,所述基于C++的微服务开发方法包括如下步骤:
步骤S1,提供基于C++的微服务开发框架,并根据所述微服务开发框架,形成相应的业务生成模板和/或业务服务操作;
步骤S2,根据所述微服务开发框架,依次执行相应的工程规范服务和开发导向服务;
步骤S3,根据所述开发导向服务,构建相应的服务治理平台;
步骤S4,通过所述服务治理平台,对所述微服务开放框架对应形成的各个微服务区块进行适应性的调整。
2.根据权利要求1所述的基于C++的微服务开发方法,其特征在于:
在所述步骤S1中,提供基于C++的微服务开发框架,并根据所述微服务开发框架,形成相应的业务生成模板和/或业务服务操作具体包括,
步骤S101,提供基于C++的微服务开发框架,并从所述微服务开发框架中获取相应的开发工程规范和/或接口规范;
步骤S102,根据所述开发工程规范和/或所述接口规范,形成相应的开发导向工具和/或服务打包工具;
步骤S103,根据所述开发导向工具和/或所述服务打包工具,生成相应的代码模板和/或执行相应的业务服务打包操作。
3.根据权利要求1所述的基于C++的微服务开发方法,其特征在于:
在所述步骤S2中,根据所述微服务开发框架,依次执行相应的工程规范服务和开发导向服务具体包括,
步骤S201,根据所述微服务开发框架,定义相关的工程规范和开发导向模式;
步骤S202,对所述工程规范和所述开发导向模式进行标准化统一处理,以此确定相应的工程规范服务和开发导向服务;
步骤S203,根据所述工程规范服务和所述开发导向服务各自的解耦特征,对以此执行所述工程规范服务和所述开发导向服务。
4.根据权利要求1所述的基于C++的微服务开发方法,其特征在于:
在所述步骤S3中,根据所述开发导向服务,构建相应的服务治理平台具体包括,
步骤S301,根据所述开发导向服务的执行结果,确定关于所述微服务开发框架的工程文件和模板代码;
步骤S302,对所述工程文件和所述模板代码进行解析处理,以此确定所述微服务开发框架形成的微服务系统的系统状态信息;
步骤S303,根据所述系统状态信息,确定包含服务注册、容错控制、网关中转、通信场景设定、数据监控与查看和微服务配置的所述服务治理平台。
5.根据权利要求1所述的基于C++的微服务开发方法,其特征在于:
在所述步骤S4中,通过所述服务治理平台,对所述微服务开放框架对应形成的各个微服务区块进行适应性的调整具体包括,
步骤S401,通过所述服务治理平台的服务注册,对各个微服务区块进行全生命周期的管理、注册发现与健康监测和双机热备中的至少一者;
步骤S402,通过所述服务治理平台,对各个微服务区块进行关于服务级联调用的服务
异常连锁反应监测;
步骤S403,通过所述服务治理平台,对来自外界的请求数据进行网关过滤、网关权限校验和网关限流中的至少一者;
步骤S404,根据所述服务治理平台,对提供关于用户客户端与微服务之间的调用通信场景、服务治理平台内部各个功能模块之间的通信场景和不同微服务区块之间的代用通信场景中的至少一者的消息队列通信;
步骤S405,根据所述服务治理平台,对各个微服务区块的数据产生和/或运行状态进行监控与查看;
步骤S406,根据所述服务治理平台,对各个微服务区块进行关于配置信息的分发与调配。
6.一种基于C++的微服务开发系统,其特征在于:
所述基于C++的微服务开发系统包括微服务业务执行模块、工程规范服务模块、开发导向服务模块、服务治理模块和微服务区块调整模块;其中,
所述微服务业务执行模块用于根据微服务开发框架,形成相应的业务生成模板和/或业务服务操作;
所述工程规范服务模块用于根据所述微服务开发框架,执行相应的工程规范服务;
所述开发导向服务模块用于根据所述微服务开发框架,执行相应的开发导向服务;
所述服务治理模块用于根据所述开发导向服务,构建相应的服务治理平台;
所述微服务区块调整模块用于根据所述服务治理平台,对所述微服务开放框架对应形成的各个微服务区块进行适应性的调整。
7.根据权利要求6所述的基于C++的微服务开发系统,其特征在于:
所述微服务业务执行模块包括规范形成子模块、工具形成子模块和工具执行子模块;其中,
所述规范形成子模块用于从所述微服务开发框架中获取相应的开发工程规范和/或接口规范;
所述工具形成子模块用于根据所述开发工程规范和/或所述接口规范,形成相应的开发导向工具和/或服务打包工具;
所述工具执行子模块用于根据所述开发导向工具和/或所述服务打包工具,相应的代码模板和/或执行相应的业务服务打包操作。
8.根据权利要求6所述的基于C++的微服务开发系统,其特征在于:
所述工程规范服务模块和所述开发导向服务模块还用于根据所述微服务开发框架,分别定义相关的工程规范和开发导向模式;
或者,
所述工程规范服务模块和所述开发导向服务模块还用于分别对所述工程规范和所述开发导向模式进行标准化统一处理,以此确定相应的工程规范服务和开发导向服务;
或者,
所述工程规范服务模块和所述开发导向服务模块还用于分别根据所述工程规范服务和所述开发导向服务各自的解耦特征,对以此执行所述工程规范服务和所述开发导向服务。
9.根据权利要求6所述的基于C++的微服务开发系统,其特征在于:
所述服务治理模块包括源数据确定子模块、系统状态信息确定子模块和服务治理平台构建子模块;其中,
所述源数据确定子模块用于根据所述开发导向服务的执行结果,确定关于所述微服务开发框架的工程文件和模板代码;
所述系统状态信息确定子模块用于对所述工程文件和所述模板代码进行解析处理,以此确定所述微服务开发框架形成的微服务系统的系统状态信息;
所述服务治理平台构建子模块用于根据所述系统状态信息,构建包含服务注册、容错控制、网关中转、通信场景设定、数据监控与查看和微服务配置的所述服务治理平台。
10.根据权利要求6所述的基于C++的微服务开发系统,其特征在于:
所述微服务区块调整模块包括服务注册子模块、容错控制子模块、网关子模块、通信子模块、监控子模块和配置子模块;其中,
所述服务注册子模块用于通过所述服务治理平台的服务注册,对各个微服务区块进行全生命周期的管理、注册发现与健康监测和双机热备中的至少一者;
所述容错控制子模块用于通过所述服务治理平台,对各个微服务区块进行关于服务级联调用的服务异常连锁反应监测;
所述网关子模块用于通过所述服务治理平台,对来自外界的请求数据进行网关过滤、网关权限校验和网关限流中的至少一者;
所述通信子模块用于根据所述服务治理平台,对提供关于用户客户端与微服务之间的调用通信场景、服务治理平台内部各个功能模块之间的通信场景和不同微服务区块之间的代用通信场景中的至少一者的消息队列通信;
所述监控子模块用于根据所述服务治理平台,对各个微服务区块的数据产生和/或运行状态进行监控与查看;
所述配置子模块用于根据所述服务治理平台,对各个微服务区块进行关于配置信息的分发与调配。
一种基于C++的微服务开发方法和系统技术领域
[0001]本发明涉及微服务架构的技术领域,尤其涉及一种基于C++的微服务开发方法和系统。
背景技术
[0002]微服务是指用于协调工作的小而自治的服务,而微服务框架就是将软件系统按照微服务进行划分,按照业务的边界来确定服务的边界,从而让整个软件系统具有更强的自治性、弹性、扩展性,同时也能够满足技术上的异构性。目前,对微服务的实现框架主要是通过java语言来实现的,其包括java服务的开发框架和服务治理平台,上述开发框架是按照微服务的框架思想,满足了不同基于java的业务系统开发的服务化需求。但是,由于传统软件行业对于高实时性、高性能的要求,以及C++语言仍然广泛覆盖较多的领域,现有的基于java语言的微服务开发框架并不能直接应用于基于C++语言的微服务开发框架,这严重地影响了对基于C++语言的微服务开发框架实现。
发明内容
[0003]针对上述现有技术存在的缺陷,本发明提供一种基于C++的微服务开发方法和系统,该基于C++的微服务开发方法和系统通过提供基于C++的微服务开发框架,并根据该微服务开发框架,形成相应的业务生成模板和/或业务服务操作,并根据该微服务开发框架,依次执行相应的工程规范服务和开发导向服务,再根据该开发导向服务,构建相应的服务治理平台,最后通过该服务治理平台,对该微服务开放框架对应形成的各个微服务区块进行适应性的调整;可见,该基于C++的微服务开发方法和系统提供了以C++系语言为主进行服务化的微服务框架模式,其同时也支持java语言的服务扩展,该方法和系统能够对微服务开发框架对应划分形成的微服务进行隔离,还能够支持多种客户端进行访问和支持跨平台的国产化操作系统,该方法和系统还能够实现不同微服务之间的高度解耦,并便于接入相应的服务治
理平台进行统一管理和监控。
[0004]本发明提供一种基于C++的微服务开发方法,其特征在于,所述基于C++的微服务开发方法包括如下步骤:
步骤S1,提供基于C++的微服务开发框架,并根据所述微服务开发框架,形成相应的业务生成模板和/或业务服务操作;
步骤S2,根据所述微服务开发框架,依次执行相应的工程规范服务和开发导向服务;步骤S3,根据所述开发导向服务,构建相应的服务治理平台;
步骤S4,通过所述服务治理平台,对所述微服务开放框架对应形成的各个微服务区块进行适应性的调整;
进一步,在所述步骤S1中,提供基于C++的微服务开发框架,并根据所述微服务开发框架,形成相应的业务生成模板和/或业务服务操作具体包括,
步骤S101,提供基于C++的微服务开发框架,并从所述微服务开发框架中获取相应的开
说 明 书
1/7页CN 111427547 A

本文发布于:2024-09-21 15:29:39,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/1/445873.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:服务   开发   进行   模块   框架
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议