CN111581576A - 基于微服务的开发处理方法、装置及存储介质 - Google Patents

基于微服务的开发处理方法、装置及存储介质 Download PDF

Info

Publication number
CN111581576A
CN111581576A CN202010381718.5A CN202010381718A CN111581576A CN 111581576 A CN111581576 A CN 111581576A CN 202010381718 A CN202010381718 A CN 202010381718A CN 111581576 A CN111581576 A CN 111581576A
Authority
CN
China
Prior art keywords
application
micro
target
applications
target application
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN202010381718.5A
Other languages
English (en)
Other versions
CN111581576B (zh
Inventor
吴耀乾
王晓斌
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Hunan Eefung Software Co ltd
Original Assignee
Hunan Eefung Software Co ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Hunan Eefung Software Co ltd filed Critical Hunan Eefung Software Co ltd
Priority to CN202010381718.5A priority Critical patent/CN111581576B/zh
Publication of CN111581576A publication Critical patent/CN111581576A/zh
Application granted granted Critical
Publication of CN111581576B publication Critical patent/CN111581576B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/958Organisation or management of web site content, e.g. publishing, maintaining pages or automatic linking
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management
    • G06F8/71Version control; Configuration management

Abstract

本发明公开了一种基于微服务的开发处理方法,其特征在于,所述方法包括:将待开发的应用拆分成多个不同功能的微应用;对所述微应用进行独立开发;基于不同的业务需求,将开发完成的所述微应用中全部或部分所述微应用配置到目标应用的主应用中。本发明还同时公开了一种基于微服务的开发处理装置及存储介质。所述方法解决了现有技术中应用开发效率低及容易出错的问题。

Description

基于微服务的开发处理方法、装置及存储介质
技术领域
本发明涉及通信技术或软件技术领域,尤其涉及一种基于微服务的开发处理方法、装置及存储介质。
背景技术
目前,随着互联网公司之间的竞争越来越激烈,其应用产品,例如,全球广域网(World Wide Web,Web)应用网站的更新频率也越来越频繁。各大互联网公司为了加快推出自己的产品,通常是未全部开发完所有功能,就先行上线。之后根据客户的反馈,不断的更新迭代;如此,使得应用不断有新的内容出现,例如,小到按钮位置或颜色的微调,或者大到新功能模块的上线。
为了适应频繁的更新频率,需要经常性的对应用的各个组件进行改动。然而,传统的Web应用内的多个组件往往是紧耦合的,每个组件的小小改动,都得让整个应用进行一次打包、升级。如此,不仅使得开发、部署的效率非常低,也容易造成其它未改动组件的出错。
发明内容
有鉴于此,本发明的主要目的在于提供一种基于微服务的开发处理方法、装置及存储介质,旨在解决现有技术中应用开发效率低及容易出错的问题。
为达到上述目的,本发明的技术方案是这样实现的:本发明提供了一种网基于微服务的开发处理方法,所述方法包括:
将待开发的Web应用拆分成多个不同功能的微应用;
对所述微应用进行独立开发;
基于业务需求,将开发完成的所述微应用中全部或部分所述微应用配置到目标应用的主应用中。
上述方案中,一个所述微应用包括:一个前端界面和一个与所述前端界面对应的后端微服务;
所述目标应用的主应用用于对所述微应用进行组织管理。
上述方案中,所述方法还包括以下至少之一:
利用所述微应用实现特定功能浏览器界面展示和交互;
利用所述微应用实现特定功能后端数据分析和业务处理。
上述方案中,所述方法还包括以下至少之一:
利用所述目标应用的主应用实现与浏览器之间的通信;
利用所述目标应用的主应用实现各所述微应用之间的通信。
上述方案中,所述利用所述目标应用的主应用实现与浏览器之间的通信,包括:
利用所述目标应用的主应用接收浏览器发送的请求信息,并在所述请求信息中添加所述微应用的标识信息;
将添加所述标识信息后的所述请求信息发送给所述微应用。
上述方案中,所述利用所述目标应用的主应用实现与浏览器之间的通信,还包括:
利用所述目标应用的主应用接收所述微应用基于所述请求信息返回的响应信息;
将所述响应信息发送给所述浏览器。
上述方案中,所述将添加所述标识信息后的所述请求信息发送给所述微应用,包括:
基于第一类接口,将添加所述标识信息后的所述请求信息发送给所述微应用;
和/或,
所述利用所述目标应用的主应用接收所述微应用基于所述请求信息返回的响应消息,包括:
所述目标应用的主应用基于所述第一类接口,接收所述微应用基于所述请求信息返回的所述响应消息;
其中,所述第一类接口为所述目标应用的主应用与所述微应用之间的内部通信接口。
上述方案中,所述方法包括:
为所述微应用及所述目标应用的主应用配置一个共同的声明服务代理;
所述利用所述目标应用的主应用实现各所述微应用之间的通信,包括:
在所述目标应用的主应用中,利用所述声明服务代理提供的目标服务进行各所述微应用之间的通信。
上述方案中,所述目标服务包括以下至少之一:
注册服务、消息服务、广播服务、监听服务及资源服务。
上述方案中,所述基于业务需求,将开发完成的所述微应用中全部或部分所述微应用配置到目标应用的主应用中,包括:
基于第二类接口,将开发完成的至少两个所述微应用中全部或部分所述微应用配置到所述目标应用的主应用中;其中,所述第二类接口为所述微应用针对所述目标应用的主应用配置的适配器。
为了实现上述目的,本发明还公开了一种基于微服务的开发处理装置,所述装置包括:
处理器;
以及通过通信总线与所述处理器连接的存储器;其中,
所述存储器,用于存储基于微服务的开发处理程序;
所述处理器,用于执行所述基于微服务的开发处理程序,以实现本发明任意实施例所述的基于微服务的开发处理方法。
为了实现上述目的,本发明还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以使所述一个或者多个处理器执行实现本发明任意实施例所述的基于微服务的开发处理方法。
本发明所提供的一种基于微服务的开发处理方法,将待开发的Web应用拆分成多个不同功能的微应用;对所述微应用进行独立开发;基于业务需求,将开发完成的所述微应用中全部或部分所述微应用配置到目标应用的主应用中。如此,本发明实施例不仅能够独立开发单个的微应用,大大降低整个业务系统所对应的应用的开发难度,提高应用的开发效率;还能够实现应用的灵活配置,减少现有技术中对未改动组件也进行升级、或部署等开发而带来的错误情况。
附图说明
图1为本发明一可选实施例中基于微服务的开发处理方法流程示意图;
图2为本发明一可选实施例中一种应用部署结构示意图;
图3为本发明一可选实施例中另一种应用部署结构示意图;
图4为本发明一可选实施例中基于微服务的开发处理方法流程示意图;
图5为本发明一可选实施例中一种服务端转发流程示意图;
图6为本发明一可选实施例中一种基于声明服务代理进行交互的流程示意图;
图7为本发明一可选实施例中另一种基于声明服务代理进行交互的流程示意图;
图8为本发明一可选实施例中基于所述微服务的开发处理结构示意图。
具体实施方式
以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。
图1为一种基于微服务的开发处理方法的示意图,请参阅图1,本发明实施例提供了一种基于微服务的开发处理方法,所述方法包括:
步骤S101:将待开发的Web应用拆分成多个不同功能的微应用。
在本发明实施例中,所述基于微服务的开发处理方法,可以应用于终端设备中。这里,所述终端设备可以为计算机、平板电脑或服务器等。
在本发明实施例中,一个功能对应一个模块或组件;一个模块或组件对应一个微服务。需要说明的是,一个待开发应用可以分割成多个模块或组件,每个模块或组件完成独立的功能,模块或组件之间协同工作。
例如,所述待开发应用中有2个不同功能的模块或组件,则可以将所述待开发应用拆分成2个微应用。又如,所述待开发应用中包括3个不同功能的模块或组件,则可以将所述待开发应用拆分成3个微应用。
这里,一个所述微应用包括:一个前端界面和一个与所述前端界面对应的后端微服务;所述目标应用的主应用用于对所述微应用进行组织管理。
在其它实施例中,所述步骤S101还可以是单独开发的一个所述微应用。如此,在本发明实施例中,可以获取本身单独开发的一个微应用。
在一实施例中,所述待开发应用为待开发的Web应用。
需要说明的是,所述目标应用和待开发应用均可以是各种类型的应用程序。例如,所述目标应用、待开发应用可以为Web应用。又如,所述目标应用、待开发应用可以为微信、或支付宝等。总之,所述目标应用、待开发应用可以是能够处理一定业务的应用,具体应用类型在此不作限制。
这里,所述主应用和待开发应用为一种单应用;所述单应用可以根据包括的多个组件分解成多个微应用;所述单应用中的各个组件是紧耦合的。所述微应用为一种基于微服务架构下的微服务应用;一个微应用仅对应于一个组件。
在本发明实施例中,所述目标应用、所述待开发应用均可以为一个或多个。
例如,如图2所示,提供一种应用部署结构示意图。其中,待开发应用包括单应用A、单应用B及单应用C;所述单应用A、所述单应用B及所述单应用C均包括组件X、组件Y及组件Z。
在现有技术中,若单应用A中组件X需要升级,则其组件Y和组件Z也需要升级。且,若单应用B或C需要组件X、组件Y和/或组件Z,则需要将单应用A中的组件X、组件Y及组件Z全部复制过来。如此,应用的开发效率很低且浪费的资源较多。
在本发明实施例中,如图3所示,先将待开发应用,例如,上述图2中单应用A、单应用B及单应用C的共用组件X、组件Y、组件Z提取出独立的微应用。其中,所述组件X、组件Y及组件Z对应的微应用分别为微应用X、微应用Y及微应用Z。
如此,在本发明实施例中,可以将一个复杂的应用系统中多个微服务拆分出来,有利于对该微服务所对应的微应用进行独立开发等。
步骤S102:对所述微应用进行独立开发。
在本发明实施例中,所述步骤S102,包括:将所述微应用分别作为一个独立的开发、调试、部署和/或运行单元,进行独立开发。
步骤S103:基于业务需求,将开发完成的所述微应用中全部或部分所述微应用配置到目标应用的主应用中。
这里,所述目标应用包括一个或多个。
在本发明实施中,可以基于第二业务的业务需求,将开发完成的一个或多个微应用配置到目标应用的主应用中。例如,请再次参见图3,目标应用包括A应用,B应用及C应用;其中,所述A应用包括主应用A;所述B应用包括主应用B;所述C应用包括主应用C;若所述主应用A、所述主应用B及所述主应用C根据业务需求,均需要组件X、组件Y、组件Z所分别对应的微应用,则将微应用X、微应用Y及微应用Z均配置到目标应用的主应用A、主应用B及主应用C中。
当然,在其它实施例中,若所述主应用A根据业务需求,仅需要组件X、组件Y所分别对应的微应用,则可仅将微应用X、及微应用Y配置到主应用A中。若所述主应用C根据业务需求,仅需要组件X、组件Y所分别对应的微应用,则可仅将微应用X、及微应用Z配置到主应用C中。
在本发明实施例中,所述目标应用可以配置一个或多个开发完成的所述微应用;或者,其中,一个开发完成的所述微应用也可以配置到一个或多个目标应用中。
在一些实施例中,基于第二类接口,将开发完成的至少两个所述微应用中全部或部分所述微应用配置到所述目标应用的主应用中;其中,所述第二类接口为所述微应用针对所述目标应用的主应用配置的适配器(Adapter)。
这里,需要说明的是,所述适配器为连接所述微应用与所述主应用之间的兼容性桥梁。每个微应用针对不同的主应用,需配置不同的适配器。例如,如图3所示中,微应用X针对目标应用的主应用A所配置的适配器为适配器A;微应用X针对目标应用的主应用B所配置的适配器为适配器B;微应用X针对目标应用的主应用C所配置的适配器为适配器C。
在本发明实施例中,可以根据业务需求,实现目标应用的灵活配置,即可以组合多个开发完成的微应用。本发明实施例不仅能够独立开发单个的微应用,大大降低整个业务系统所对应的应用的开发难度,提高应用的开发效率;还能够实现应用的灵活配置,减少现有技术中对未改动组件也进行升级、或部署等开发而带来的错误情况。
在一些实施例中,所述方法还包括以下至少之一:
利用所述微应用实现特定功能浏览器界面展示和交互;
利用所述微应用实现特定功能后端数据分析和业务处理。
如此,在本发明实施例中,可以基于独立开发的微应用实现在特定功能界面展示、交互以及特定功能后端数据分析或业务处理等;从而能够适用更广泛的应用场景,扩展由微应用组合而成目标应用的功能等。
如图4所示,在一些实施例中,所述还方法包括以下至少之一:
步骤S104:利用所述目标应用的主应用实现与浏览器之间的通信。
这里,所述步骤S104,包括:利用所述目标应用的主应用,实现所述目标应用中各所述微应用与所述浏览器之间的通信。
在一些实施例中,所述步骤S104,包括:
利用所述目标应用的主应用接收浏览器发送的请求信息,并在所述请求信息中添加所述微应用的标识信息;
将添加所述标识信息后的所述请求信息发送给所述微应用。
这里,可以理解的是,所述利用所述目标应用的主应用接收浏览器发送的请求信息,可以为:所述服务端利用所述目标应用的主应用接收浏览器端发送的请求信息。
在本发明实施例中,所述浏览器仅通过所述主应用的域名访问所述主应用中的微应用。例如,所述浏览器发送请求信息给所述主应用,所述主应用转发所述请求信息给所述微应用。其中,所述主应用转发所述请求信息时,还在所述请求信息中添加所述微应用的标识信息,以使得所述对应的微应用接收到所述请求信息。
更进一步地,所述微应用可以基于所述标识信息,还可以到所述目标应用的主应用中获取到当前用户的用户信息(user info)等。
当然,在其它实施例中,所述浏览器中发送的所述请求消息,也可以携带所述微应用的所述标识信息。此时,所述主应用可以直接转换所述请求信息,无需再添加所述标识信息。
这里,所述标识信息为用户令牌(user token)或用户标识(user id)等。
在一实施例中,所述标识信息还可以为加密后的用户令牌或用户标识。这里,所述微应用与所述主应用可以事先协商好加密规则,从而利用所述加密规则对所述用户令牌或用户标识等进行加密。
如此,在本发明实施例中,可以使得多个微应用与所述主应用之间的会话(session)数据能够共享;且,通过加密标识信息或者会话数据等,能够保证所述微应用与主应用之间数据相关操作的安全性。
在另一些实施例中,所述步骤S104,包括:
利用所述目标应用的主应用接收浏览器发送的请求信息,并在所述请求信息中添加所述微应用的标识信息;
将添加所述标识信息后的所述请求信息发送给所述微应用;
利用所述目标应用的主应用接收所述微应用基于所述请求信息返回的响应信息;
将所述响应信息发送给所述浏览器。
在本发明实施例中,所述微应用利用所述目标应用的主应用接收到所述请求信息后,基于所述请求信息确定出响应信息。并将所述响应信息发送给所述目标应用的主应用,所述目标应用的主应用将所述响应信息发送给所述浏览器。
如此,在本发明实施例中,所述目标应用的主应用以代理的模式转发所述微应用与浏览器之间的请求信息和/或响应信息;从而相对于浏览器来说,该种通信交互是透明的;所述浏览器只与所述目标应用的主应用直接进行数据传递。如此,本发明实施例不存在跨域问题,解决了多个微应用与目标应用的主应用之间的跨域问题。
在一些实施例中,所述将添加所述标识信息后的所述请求信息发送给所述微应用,包括:
基于第一类接口,将添加所述标识信息后的所述请求信息发送给所述微应用;
和/或,
所述利用所述目标应用的主应用接收所述微应用基于所述请求信息返回的响应消息,包括:
所述目标应用的主应用基于所述第一类接口,接收所述微应用基于所述请求信息返回的所述响应消息;
其中,所述第一类接口为所述目标应用的主应用与所述微应用之间的内部通信接口。
在本发明实施例中,所述目标应用的主应用提供相应的内部通信接口,以实现的所述微应用与所述目标应用的主应用之间的数据交互。
示例性的,如图5提供一种服务端转发流程示意图,如图5所示,包括以下步骤:
该实施例中主应用是指所述目标应用中的主应用。
步骤①:浏览器发起首页请求;所述主应用基于读取的动态配置,在返回的超文本标记语言(html)携带各微应用的入口脚本地址。例如,微应用X和微应用Y的入口脚本地址为:
<script src=/main-webapp-filer/path-to-micro-x/entry-content.js>;
<script src=/main-webapp-filer/path-to-micro-y/entry-content.js>。
这里,所述首页请求用于请求所述微应用的入口页。
如此,在本实施例中,可以将微应用X、微应用Y配置到所述主应用中。
步骤②:所述主应用接收到所述浏览器发送的所述首页请求时,拦截所述首页请求;并在所述首页请求中携带token、及user id后,转发所述首页请求到所述微应用中。
这里,所述首页请求中也可以携带加密后的token及user id。
这里,所述主应用可以在转发所述首页请求时,自动添加加密后的token及userid等信息。
步骤③:所述微应用接收到携带所述token及所述user id的首页请求后,根据所述token及所述user id,确定出对应的适配器信息及所述微应用的核心信息;并将所述适配器信息及所述核心信息返回给所述浏览器。
这里,所述核心信息为响应所述首次请求的信息。
这里,所述将所述适配器信息及所述核心信息返回给所述浏览器,包括:所述微应用将所述适配器信息及所述核心信息返回给主应用;所述主应用将所述适配器信息及所述核心信息返回给所述浏览器。
步骤S105:利用所述目标应用的主应用实现各所述微应用之间的通信。
在一些实施例中,所述方法包括:
为所述微应用及所述主应用配置一个共同的声明服务代理;
所述步骤S105,包括:
在所述目标应用的主应用中,利用所述声明服务代理提供的目标服务进行各所述微应用之间的通信。
在一实施例中,所述方法还包括:
利用所述目标应用的主应用实现所述目标应用的主应用与各所述微应用之间的通信。
其中,所述目标服务包括以下至少之一:
注册服务、消息服务、广播服务、监听服务及资源服务。
这里,所述声明服务代理用于管理各所述微应用之间的通信,以及所述微应用与所述目标应用的主应用之间的通信。
图6提供了一种基于声明服务代理进行交互的流程示意图;如图6所示,所述目标应用的主应用A中部署微应用X、微应用Y、及微应用Z;其中,所述主应用的转发所述微应用X、所述微应用Y及所述微应用Z分别与所述浏览器之间通信的数据。这里,所述微应用X、所述微应用Y及所述微应用Z基于所述声明服务代理进行交互。具体地,一个微应用可以提前(例如在微应用的开发阶段)获取需要交互的微应用提供的服务,基于该服务进行相应的适配。
示例性的,图7提供一种基于声明服务代理进行交互的流程示意图;如图7所示,目标应用的主应用A发布一个key为左侧导航栏(LeftNavMenu)的“注册服务”声明。这里,在没有微应用注入前,左侧菜单栏中没有任何一个按钮;当所述微应用X被加载后,按照发布的服务规则进行注入,此时该左侧菜单栏中就会出现一个所述微应用X的提供的一个具体按钮。
同理,目标应用的主应用A发布的其它服务与示例的处理过程类似。例如,主应用与微应用X或微应用Y的即时消息服务、广播服务、监听服务及资源服务等的交互与上述示例中的注册服务类似。
在本发明实施例中,当目标应用的主应用中其中一个微应用与其它微应用或主应用交互时,采用声明的方式来实现。如此,微应用的开发可以实现不同的框架来实现,做到相对独立;从而能够大大降低应用开发的耦合度。
本发明实施例提供了一种基于微服务的开发处理装置,所述装置包括:
拆分模块,用于将待开发的Web应用拆分成多个不同功能的微应用;
开发模块,对所述微应用进行独立开发;
组合模块,用于基于业务需求,将开发完成的所述微应用中全部或部分所述微应用配置到目标模块的主应用中。
在一些实施例中,一个所述微应用包括:一个前端界面和一个与所述前端界面对应的后端微服务;
所述目标应用的主应用用于对所述微应用进行组织管理。
在一些是实施例中,所述方法还包括:
处理模块,用于利用所述微应用实现特定功能浏览器界面展示和交互;
和/或,
利用所述微应用实现特定功能后端数据分析和业务处理。
在一些实施例中,所述装置还包括:
通信模块,用于利用所述目标应用的主应用实现与浏览器之间的通信;
和/或,
利用所述目标应用的主应用实现各所述微应用之间的通信。
在一些实施例中,所述通信模块,用于利用所述目标应用的主应用接收浏览器发送的请求信息,并在所述请求信息中添加所述微应用的标识信息;
将添加所述标识信息后的所述请求信息发送给所述微应用。
在一些实施例中,所述通信模块,还用于利用所述目标应用的主应用接收所述微应用基于所述请求信息返回的响应信息;
将所述响应信息发送给所述浏览器。
所述通信模块,用于基于第一类接口,将添加所述标识信息后的所述请求信息发送给所述微应用;
和/或,
所述目标应用的主应用基于所述第一类接口,接收所述微应用基于所述请求信息返回的所述响应消息;
其中,所述第一类接口为所述目标应用的主应用与所述微应用之间的内部通信接口。
在一些实施例中,所述装置还包括:
配置模块,用于为所述微应用及所述目标应用的主应用配置一个共同的声明服务代理;
所述通信模块,用于在所述目标应用的主应用中,利用所述声明服务代理提供的目标服务进行各所述微应用之间的通信。
在一些实施例中,所述目标服务包括以下至少之一:
注册服务、消息服务、广播服务、监听服务及资源服务。
在一些实施例中,所述组合模块,用于基于第二类接口,将开发完成的至少两个所述微应用中全部或部分所述微应用配置到所述目标应用的主应用中;其中,所述第二类接口为所述微应用针对所述目标应用的主应用配置的适配器。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
本发明还提供了一种基于微服务的开发处理装置,请参阅图8,所述装置包括处理器801、以及通过通信总线802与所述处理器801连接的存储器803;其中,所述存储器803,用于存储基于微服务的开发处理程序;所述处理器801,用于执行将待开发的Web应用拆分成多个不同功能的微应用;
对所述微应用进行独立开发;
基于业务需求,将开发完成的所述微应用中全部或部分所述微应用配置到目标应用的主应用中。
在一些实施例中,所述处理器801,用于执行利用所述微应用实现特定功能浏览器界面展示和交互;
利用所述微应用实现特定功能后端数据分析和业务处理。
在一些实施例中,所述处理器801,用于执行利用所述目标应用的主应用实现与浏览器之间的通信;
利用所述目标应用的主应用实现各所述微应用之间的通信。
在一些实施例中,所述处理器801,用于执行所述利用所述目标应用的主应用实现与浏览器之间的通信的步骤:利用所述目标应用的主应用接收浏览器发送的请求信息,并在所述请求信息中添加所述微应用的标识信息;
将添加所述标识信息后的所述请求信息发送给所述微应用。
在一些实施例中,所述处理器801,用于执行所述利用所述目标应用的主应用实现与浏览器之间的步骤:利用所述目标应用的主应用接收所述微应用基于所述请求信息返回的响应信息;
将所述响应信息发送给所述浏览器。
在一些实施例中,所述处理器801,用于执行所述将添加所述标识信息后的所述请求信息发送给所述微应用的步骤:基于第一类接口,将添加所述标识信息后的所述请求信息发送给所述微应用;
和/或,
用于执行所述利用所述目标应用的主应用接收所述微应用基于所述请求信息返回的响应消息的步骤:所述目标应用的主应用基于所述第一类接口,接收所述微应用基于所述请求信息返回的所述响应消息;
其中,所述第一类接口为所述目标应用的主应用与所述微应用之间的内部通信接口。
在一些实施例中,所述处理器801,用于执行为所述微应用及所述目标应用的主应用配置一个共同的声明服务代理;
用于执行所述利用所述目标应用的主应用实现各所述微应用之间的步骤:在所述目标应用的主应用中,利用所述声明服务代理提供的目标服务进行各所述微应用之间的通信。
在一些实施例中,所述处理器801,用于执行所述将开发完成的至少两个所述微应用中全部或部分所述微应用配置到目标应用的主应用中的步骤:
基于第二类接口,将开发完成的至少两个所述微应用中全部或部分所述微应用配置到所述目标应用的主应用中;其中,所述第二类接口为所述微应用针对所述目标应用的主应用配置的适配器。
可选的,所述处理器801可以是通用处理器、数字信号处理器(Digital SignalProcessor,DSP)、专用集成电路(Application Specific Integrated Circuit,ASIC)、现场可编程门阵列(Field Programmable Gate Array,FPGA)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件。这里,所述处理器801执行的程序可以存储在与所述处理器801通过通信总线802连接的存储器803之中,所述存储器803可以是易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。其中,非易失性存储器可以是只读存储器(ROM,Read Only Memory)、可编程只读存储器(PROM,Programmable Read-OnlyMemory)、可擦除可编程只读存储器(EPROM,Erasable Programmable Read-Only Memory)、电可擦除可编程只读存储器(EEPROM,Electrically Erasable Programmable Read-OnlyMemory)、磁性随机存取存储器(FRAM,ferromagnetic random access memory)、快闪存储器(Flash Memory)、磁表面存储器、光盘、或只读光盘(CD-ROM,Compact Disc Read-OnlyMemory);磁表面存储器可以是磁盘存储器或磁带存储器。易失性存储器可以是随机存取存储器(RAM,Random Access Memory),其用作外部高速缓存。通过示例性但不是限制性说明,许多形式的RAM可用,例如静态随机存取存储器(SRAM,Static Random Access Memory)、同步静态随机存取存储器(SSRAM,Synchronous Static Random Access Memory)、动态随机存取存储器(DRAM,Dynamic Random Access Memory)、同步动态随机存取存储器(SDRAM,Synchronous Dynamic Random Access Memory)、双倍数据速率同步动态随机存取存储器(DDRSDRAM,Double Data Rate Synchronous Dynamic Random Access Memory)、增强型同步动态随机存取存储器(ESDRAM,Enhanced Synchronous Dynamic Random AccessMemory)、同步连接动态随机存取存储器(SLDRAM,Sync Link Dynamic Random AccessMemory)、直接内存总线随机存取存储器(DRRAM,Direct Rambus Random Access Memory)。本发明实施例描述的存储器803旨在包括但不限于这些和任意其它适合类型的存储器803。本发明实施例中的存储器803用于存储各种类型的数据以支持所述处理器801的操作。这些数据的示例包括:供所述处理器801操作的任何计算机程序,如操作系统和应用程序;联系人数据;电话簿数据;消息;图片;视频等。其中,操作系统包含各种系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务。
关于上述实施例中的装置,其中各个模块执行操作的具体方式已经在有关该方法的实施例中进行了详细描述,此处将不做详细阐述说明。
本发明还提供了一种计算机可读存储介质,具体为计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器801执行,以使所述一个或者多个处理器801执行以下步骤:
将待开发的Web应用拆分成多个不同功能的微应用;
对所述微应用进行独立开发;
基于业务需求,将开发完成的所述微应用中全部或部分所述微应用配置到目标应用的主应用中。
可选的,所述一个或多个程序可被一个或多个处理器801执行,以便所述一个或多个处理器801执行利用所述微应用实现特定功能浏览器界面展示和交互;利用所述微应用实现特定功能后端数据分析和业务处理。
可选的,所述一个或者多个程序可被一个或者多个处理器801执行,以使所述一个或者多个处理器801执行以下步骤:
利用所述目标应用的主应用实现与浏览器之间的通信;和/或,
利用所述目标应用的主应用实现各所述微应用之间的通信。
可选的,所述一个或者多个程序可被一个或者多个处理器801执行,以使所述一个或者多个处理器801执行所述利用所述目标应用的主应用实现与浏览器之间的通信的步骤:
利用所述目标应用的主应用接收浏览器发送的请求信息,并在所述请求信息中添加所述微应用的标识信息;
将添加所述标识信息后的所述请求信息发送给所述微应用。
可选的,所述一个或者多个程序可被一个或者多个处理器801执行,以使所述一个或者多个处理器801执行所述利用所述目标应用的主应用实现与浏览器之间的通信的步骤:
利用所述目标应用的主应用接收所述微应用基于所述请求信息返回的响应信息;
将所述响应信息发送给所述浏览器。
可选的,所述一个或者多个程序可被一个或者多个处理器801执行,以使所述一个或者多个处理器801执行所述将添加所述标识信息后的所述请求信息发送给所述微应用的步骤:
基于第一类接口,将添加所述标识信息后的所述请求信息发送给所述微应用;
和/或,
所述利用所述目标应用的主应用接收所述微应用基于所述请求信息返回的响应消息,包括:
所述目标应用的主应用基于所述第一类接口,接收所述微应用基于所述请求信息返回的所述响应消息;
其中,所述第一类接口为所述目标应用的主应用与所述微应用之间的内部通信接口。
可选的,所述一个或者多个程序可被一个或者多个处理器801执行,以使所述一个或者多个处理器801执行以下步骤:
为所述微应用及所述目标应用的主应用配置一个共同的声明服务代理;
以及执行所述利用所述目标应用的主应用实现各所述微应用之间的通信的步骤:
在所述目标应用的主应用中,利用所述声明服务代理提供的目标服务进行各所述微应用之间的通信。
可选的,所述一个或者多个程序可被一个或者多个处理器801执行,以使所述一个或者多个处理器801执行所述将开发完成的至少两个所述微应用中全部或部分所述微应用配置到目标应用的主应用中的步骤:
基于第二类接口,将开发完成的至少两个所述微应用中全部或部分所述微应用配置到所述目标应用的主应用中;其中,所述第二类接口为所述微应用针对所述目标应用的主应用配置的适配器。
可选的,所述计算机可读存储介质可以是易失性存储器,例如随机存取存储器;或者非易失性存储器,例如只读存储器,快闪存储器,硬盘或固态硬盘;也可以是包括上述存储器803之一或任意组合的各自设备,如移动电话、计算机、平板设备、个人数字助理等。
以上所述,仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。

Claims (10)

1.一种基于微服务的开发处理方法,其特征在于,所述方法包括:
将待开发应用拆分成多个不同功能的微应用;
对所述微应用进行独立开发;
基于业务需求,将开发完成的所述微应用中全部或部分所述微应用配置到目标应用的主应用中。
2.根据权利要求1所述的方法,其特征在于,所述方法还包括以下至少之一:
利用所述微应用实现特定功能浏览器界面展示和交互;
利用所述微应用实现特定功能后端数据分析和业务处理。
3.根据权利要求1或2所述的方法,其特征在于,所述方法还包括以下至少之一:
利用所述目标应用的主应用实现与浏览器之间的通信;
利用所述目标应用的主应用实现各所述微应用之间的通信。
4.根据权利要求3所述的方法,其特征在于,所述利用所述目标应用的主应用实现与浏览器之间的通信,包括:
利用所述目标应用的主应用接收浏览器发送的请求信息,并在所述请求信息中添加所述微应用的标识信息;
将添加所述标识信息后的所述请求信息发送给所述微应用。
5.根据权利要求3所述的方法,其特征在于,所述利用所述目标应用的主应用实现与浏览器之间的通信,还包括:
利用所述目标应用的主应用接收所述微应用基于所述请求信息返回的响应信息;
将所述响应信息发送给所述浏览器。
6.根据权利要求4或5所述的方法,其特征在于,所述将添加所述标识信息后的所述请求信息发送给所述微应用,包括:
基于第一类接口,将添加所述标识信息后的所述请求信息发送给所述微应用;
和/或,
所述利用所述目标应用的主应用接收所述微应用基于所述请求信息返回的响应消息,包括:
所述目标应用的主应用基于所述第一类接口,接收所述微应用基于所述请求信息返回的所述响应消息;
其中,所述第一类接口为所述目标应用的主应用与所述微应用之间的内部通信接口。
7.根据权利要求3所述的方法,其特征在于,所述方法包括:
为所述微应用及所述目标应用的主应用配置一个共同的声明服务代理;
所述利用所述目标应用的主应用实现各所述微应用之间的通信,包括:
在所述目标应用的主应用中,利用所述声明服务代理提供的目标服务进行各所述微应用之间的通信。
8.根据权利要求1所述的方法,其特征在于,所述基于业务需求,将开发完成的所述微应用中全部或部分所述微应用配置到目标应用的主应用中,包括:
基于第二类接口,将开发完成的所述微应用中全部或部分所述微应用配置到所述目标应用的主应用中;其中,所述第二类接口为所述微应用针对所述目标应用的主应用配置的适配器。
9.一种基于微服务的开发处理装置,其特征在于,包括:
处理器;
以及通过通信总线与所述处理器连接的存储器;其中,
所述存储器,用于存储基于微服务的开发处理程序;
所述处理器,用于执行所述基于微服务的开发处理程序,以实现权利要求1至8中任一项所述的基于微服务的开发处理步骤。
10.一种存储介质,其特征在于,具体为计算机可读存储介质,所述计算机可读存储介质存储有一个或者多个程序,所述一个或者多个程序可被一个或者多个处理器执行,以使所述一个或者多个处理器执行实现权利要求1至8中任一项所述的基于微服务的。
CN202010381718.5A 2020-05-08 2020-05-08 基于微服务的开发处理方法、装置及存储介质 Active CN111581576B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010381718.5A CN111581576B (zh) 2020-05-08 2020-05-08 基于微服务的开发处理方法、装置及存储介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010381718.5A CN111581576B (zh) 2020-05-08 2020-05-08 基于微服务的开发处理方法、装置及存储介质

Publications (2)

Publication Number Publication Date
CN111581576A true CN111581576A (zh) 2020-08-25
CN111581576B CN111581576B (zh) 2024-04-02

Family

ID=72120403

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010381718.5A Active CN111581576B (zh) 2020-05-08 2020-05-08 基于微服务的开发处理方法、装置及存储介质

Country Status (1)

Country Link
CN (1) CN111581576B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112804315A (zh) * 2020-12-31 2021-05-14 北京知因智慧科技有限公司 微应用集成方法及装置
US11487540B2 (en) 2021-03-02 2022-11-01 Capital One Services, Llc Micro-frontend as a service

Citations (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106293704A (zh) * 2016-07-26 2017-01-04 北京北森云计算股份有限公司 多语言云编译的动态微服务编辑方法、装置和服务器
US20170046146A1 (en) * 2015-08-11 2017-02-16 International Business Machines Corporation Autonomously healing microservice-based applications
CN106506605A (zh) * 2016-10-14 2017-03-15 华南理工大学 一种基于微服务架构的SaaS应用构建方法
CN106648660A (zh) * 2016-12-22 2017-05-10 深圳怡化电脑股份有限公司 一种业务开发的方法和装置
CN106789308A (zh) * 2016-12-30 2017-05-31 北京超图软件股份有限公司 一种微服务架构可自动伸缩的gis服务装置及其控制方法
US20180027080A1 (en) * 2016-07-22 2018-01-25 Cisco Technology, Inc. Scaling service discovery in a micro-service environment
US20180198845A1 (en) * 2017-01-09 2018-07-12 International Business Machines Corporation Local Microservice Development for Remote Deployment
US20180270107A1 (en) * 2017-03-16 2018-09-20 International Business Machines Corporation Microservices communication pattern for fault detection in end-to-end flows
CN109117174A (zh) * 2018-07-04 2019-01-01 北京德惠众合信息技术有限公司 兼容不同引擎的前端页面的系统及方法
CN109327380A (zh) * 2018-10-22 2019-02-12 中国平安财产保险股份有限公司 公众号管理方法、装置、计算机设备及存储介质
CN109359449A (zh) * 2018-10-17 2019-02-19 郑州云海信息技术有限公司 一种基于微服务的鉴权方法、装置、服务器及存储介质
CN109922158A (zh) * 2019-03-22 2019-06-21 泰康保险集团股份有限公司 基于微服务的数据处理方法、装置、介质及电子设备
US10353700B1 (en) * 2018-05-21 2019-07-16 Microsoft Technology Licensing, Llc Code base sharing between standalone and web-based versions of an application via an emulated network communication channel
CN110247981A (zh) * 2019-06-26 2019-09-17 南京南瑞继保工程技术有限公司 一种电力调度自动化系统应用微服务改造方法
CN110286887A (zh) * 2019-06-28 2019-09-27 新奥数能科技有限公司 能源检测软件的开发方法及装置
CN110535902A (zh) * 2019-07-16 2019-12-03 平安普惠企业管理有限公司 基于微服务实现监控智能化的处理方法及电子装置
CN110532020A (zh) * 2019-09-04 2019-12-03 中国工商银行股份有限公司 一种微服务编排的数据处理方法、装置及系统
CN111061463A (zh) * 2019-12-26 2020-04-24 深圳前海环融联易信息科技服务有限公司 微服务组合应用方法、装置、计算机设备及存储介质
US20200133744A1 (en) * 2018-10-30 2020-04-30 Stoplight, Inc. Application interface governance platform to harmonize, validate, and replicate data-driven definitions to execute application interface functionality

Patent Citations (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170046146A1 (en) * 2015-08-11 2017-02-16 International Business Machines Corporation Autonomously healing microservice-based applications
US20180027080A1 (en) * 2016-07-22 2018-01-25 Cisco Technology, Inc. Scaling service discovery in a micro-service environment
CN106293704A (zh) * 2016-07-26 2017-01-04 北京北森云计算股份有限公司 多语言云编译的动态微服务编辑方法、装置和服务器
CN106506605A (zh) * 2016-10-14 2017-03-15 华南理工大学 一种基于微服务架构的SaaS应用构建方法
CN106648660A (zh) * 2016-12-22 2017-05-10 深圳怡化电脑股份有限公司 一种业务开发的方法和装置
CN106789308A (zh) * 2016-12-30 2017-05-31 北京超图软件股份有限公司 一种微服务架构可自动伸缩的gis服务装置及其控制方法
US20180198845A1 (en) * 2017-01-09 2018-07-12 International Business Machines Corporation Local Microservice Development for Remote Deployment
US20180270107A1 (en) * 2017-03-16 2018-09-20 International Business Machines Corporation Microservices communication pattern for fault detection in end-to-end flows
US10353700B1 (en) * 2018-05-21 2019-07-16 Microsoft Technology Licensing, Llc Code base sharing between standalone and web-based versions of an application via an emulated network communication channel
CN109117174A (zh) * 2018-07-04 2019-01-01 北京德惠众合信息技术有限公司 兼容不同引擎的前端页面的系统及方法
CN109359449A (zh) * 2018-10-17 2019-02-19 郑州云海信息技术有限公司 一种基于微服务的鉴权方法、装置、服务器及存储介质
CN109327380A (zh) * 2018-10-22 2019-02-12 中国平安财产保险股份有限公司 公众号管理方法、装置、计算机设备及存储介质
US20200133744A1 (en) * 2018-10-30 2020-04-30 Stoplight, Inc. Application interface governance platform to harmonize, validate, and replicate data-driven definitions to execute application interface functionality
CN109922158A (zh) * 2019-03-22 2019-06-21 泰康保险集团股份有限公司 基于微服务的数据处理方法、装置、介质及电子设备
CN110247981A (zh) * 2019-06-26 2019-09-17 南京南瑞继保工程技术有限公司 一种电力调度自动化系统应用微服务改造方法
CN110286887A (zh) * 2019-06-28 2019-09-27 新奥数能科技有限公司 能源检测软件的开发方法及装置
CN110535902A (zh) * 2019-07-16 2019-12-03 平安普惠企业管理有限公司 基于微服务实现监控智能化的处理方法及电子装置
CN110532020A (zh) * 2019-09-04 2019-12-03 中国工商银行股份有限公司 一种微服务编排的数据处理方法、装置及系统
CN111061463A (zh) * 2019-12-26 2020-04-24 深圳前海环融联易信息科技服务有限公司 微服务组合应用方法、装置、计算机设备及存储介质

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN112804315A (zh) * 2020-12-31 2021-05-14 北京知因智慧科技有限公司 微应用集成方法及装置
CN112804315B (zh) * 2020-12-31 2023-08-22 北京知因智慧科技有限公司 微应用集成方法及装置
US11487540B2 (en) 2021-03-02 2022-11-01 Capital One Services, Llc Micro-frontend as a service
US11789728B2 (en) 2021-03-02 2023-10-17 Capital One Services, Llc Micro-frontend as a service

Also Published As

Publication number Publication date
CN111581576B (zh) 2024-04-02

Similar Documents

Publication Publication Date Title
CN112114979B (zh) 远程过程调用方法和装置
US20190303088A1 (en) Transferring an application interface from one device to another device
CN111290865A (zh) 一种服务调用方法、装置、电子设备和存储介质
US20130104200A1 (en) Apparatus and method for controlling access to multiple services
CN107222326B (zh) 用于设备间服务的访问方法、配置方法及装置
CN110413418B (zh) 缓存同步装置及方法,缓存同步系统、电子设备
US10817284B2 (en) Melding of mediation flow service component architecture (SCA) components
CN111581576B (zh) 基于微服务的开发处理方法、装置及存储介质
CN112835632B (zh) 一种端能力的调用方法、设备和计算机存储介质
CN110597602A (zh) 一种事务处理方法、装置、计算机设备及存储介质
CN111327680B (zh) 认证数据同步方法、装置、系统、计算机设备和存储介质
CN112328413A (zh) 应用服务的调用方法、装置及系统
CN113821352A (zh) 一种远程服务的调用方法和装置
WO2021093671A1 (zh) 任务处理方法、系统、装置、设备及计算机可读存储介质
JP2008134914A (ja) 複合サービス提供システムおよび方法
CN109981546B (zh) 获取应用模块间的远程调用关系的方法和装置
US7908397B1 (en) Application server gateway technology
US7792921B2 (en) Metadata endpoint for a generic service
CN112929453A (zh) 一种共享session数据的方法和装置
CN112306984A (zh) 一种数据源路由方法和装置
US10289691B2 (en) Dynamic replication of networked files
US11811878B1 (en) Session manager providing bidirectional data transport
CN112422566B (zh) 远程调用处理方法、装置、存储介质及电子装置
CN109725887B (zh) 基于消息研发框架的数据交互方法、装置及终端设备
WO2016137714A1 (en) Messaging protocol

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant