一种残膜回收机防缠绕挑膜装置的制 一种秧草收获机用电力驱动行走机构

应用的生成方法和装置与流程

2022-04-25 02:15:14 来源:中国专利 TAG:


1.本技术涉及互联网领域,具体而言,涉及一种应用的生成方法和装置。


背景技术:

2.软件的架构类型比较多,典型的是单体架构,单体架构一般采用三级架构,即前端(web/手机端) 中间业务逻辑层 数据库层,这是一种典型的java spring mvc或者python drango框架的应用。单体架构的应用比较容易部署、测试,在项目的初期,单体应用可以很好地运行。然而,随着需求的不断增加,越来越多的人加入开发团队,代码库也在飞速地膨胀。慢慢地,单体应用变得越来越臃肿,可维护性、灵活性逐渐降低,维护成本越来越高。下面是单体架构应用的一些典型缺点:
3.1)复杂性高:以一个百万行级别的单体应用为例,整个项目包含的模块非常多、模块的边界模糊、依赖关系不清晰、代码质量参差不齐、混乱地堆砌在一起,可想而知整个项目非常复杂,每次修改代码都非常复杂,甚至添加一个简单的功能,或者修改一个bug都会带来隐含的缺陷。
4.2)技术债务:随着时间推移、需求变更和人员更迭,会逐渐形成应用程序的技术债务,并且越积越多。“不坏不修”,这在软件开发中非常常见,在单体应用中这种思想更甚。已使用的系统设计或代码难以被修改,因为应用程序中的其他模块可能会以意料之外的方式使用它。
5.3)部署频率低:随着代码的增多,构建和部署的时间也会增加。而在单体应用中,每次功能的变更或缺陷的修复都会导致需要重新部署整个应用。全量部署的方式耗时长、影响范围大、风险高,这使得单体应用项目上线部署的频率较低。而部署频率低又导致两次发布之间会有大量的功能变更和缺陷修复,出错率比较高。
6.4)可靠性差:某个应用bug,例如死循环、内存溢出等,可能会导致整个应用的崩溃。
7.5)扩展能力受限:单体应用只能作为一个整体进行扩展,无法根据业务模块的需要进行伸缩。例如,应用中有的模块是计算密集型的,它需要强劲的cpu;有的模块则是io密集型的,需要更大的内存。由于这些模块部署在一起,不得不在硬件的选择上做出妥协。
8.6)阻碍技术创新:单体应用往往使用统一的技术平台或方案解决所有的问题,团队中的每个成员都必须使用相同的开发语言和框架,要想引入新框架或新技术平台会非常困难。
9.针对上述的问题,目前尚未提出有效的解决方案。


技术实现要素:

10.本技术实施例提供了一种应用的生成方法和装置,以至少解决应用的复杂性较高的技术问题。
11.根据本技术实施例的一个方面,提供了一种应用的生成方法,包括:在用户终端上
展示配置界面,其中,所述配置界面用于用户从服务器提供的微服务集合中选择微服务,并将选择的微服务编排成所需应用,所述微服务集合中的每个微服务用于提供一种基本功能;按照在所述配置界面检测到的操作,将用户从所述微服务集合中选择的微服务编排成目标应用。
12.可选地,按照在所述配置界面检测到的操作,将用户从所述微服务集合中选择的微服务编排成目标应用,包括:在所述配置界面中检测到选择操作,从所述微服务集合中确定所选中的多个微服务;在所述配置界面中检测到编排操作,按照所述编排操作确定所述多个微服务之间的排列顺序,并将所述多个微服务按照所述排列顺序串联成所述目标应用;在所述配置界面中检测到接口编辑操作,按照所述接口编辑操作对被选中的微服务的数据接口进行编辑:为被选中的微服务的数据输入接口配置数据源、将被选中的微服务的数据输入接口配置为与另一微服务的输出接口相连接、将被选中的微服务的数据输出接口配置为与另一微服务的输入接口相连接以及将被选中的微服务的数据输出接口输出的数据作为所述目标应用的最终输出,其中,所述数据源为本地数据源或者远程数据源。
13.可选地,在按照在所述配置界面检测到的操作,将用户从所述微服务集合中选择的微服务编排成目标应用之后,所述方法还包括:创建并在事件库中保存用于执行目标任务的任务事件,其中,所述目标任务包括多个子任务,所述多个子任务中的每个子任务由所述目标应用的一个微服务完成,所述目标应用的任意两个微服务所处理的子任务不同;采用事件驱动架构对所述目标任务进行处理:在所述目标任务中的子任务被分配给相应的微服务后,在所述事件库记录处理子任务的微服务;在所述目标应用的微服务完成分配的子任务的情况下,在所述事件库中更新微服务所完成的子任务的状态;在所述目标应用的微服务处理分配的子任务失败的情况下,在所述事件库中更新微服务所处理失败的子任务的状态。
14.可选地,在采用事件驱动架构对所述目标任务进行处理的过程中,所述方法还包括:在终端与服务端之间使用http协议进行通讯,并对传输数据进行三级加密。
15.可选地,在按照在所述配置界面检测到的操作,将用户从所述微服务集合中选择的微服务编排成目标应用之后,所述方法还包括:在所述目标应用所调用的多个微服务中的任意一个发生升级的情况下,在升级完成之后,在所述目标应用运行时直接调用升级后的微服务。
16.可选地,在按照在所述配置界面检测到的操作,将用户从所述微服务集合中选择的微服务编排成目标应用之后,所述方法还包括:以在终端的客户端上注册系统服务的方式添加前置应用,通过服务监控指令进行交互,以减少客户端的资源承载并减少本地终端升级需求。
17.可选地,在按照在所述配置界面检测到的操作,将用户从所述微服务集合中选择的微服务编排成目标应用之后,所述方法还包括:插件模式应用:将在所述配置界面编辑的插件上传服务端,以便于在本地终端下载使用。
18.根据本技术实施例的另一方面,还提供了一种应用的生成装置,包括:展示单元,用于在用户终端上展示配置界面,其中,所述配置界面用于用户从服务器提供的微服务集合中选择微服务,并将选择的微服务编排成所需应用,所述微服务集合中的每个微服务用于提供一种基本功能;生成单元,用于按照在所述配置界面检测到的操作,将用户从所述微
服务集合中选择的微服务编排成目标应用。
19.可选地,生成单元还用于:在所述配置界面中检测到选择操作,从所述微服务集合中确定所选中的多个微服务;在所述配置界面中检测到编排操作,按照所述编排操作确定所述多个微服务之间的排列顺序,并将所述多个微服务按照所述排列顺序串联成所述目标应用;在所述配置界面中检测到接口编辑操作,按照所述接口编辑操作对被选中的微服务的数据接口进行编辑:为被选中的微服务的数据输入接口配置数据源、将被选中的微服务的数据输入接口配置为与另一微服务的输出接口相连接、将被选中的微服务的数据输出接口配置为与另一微服务的输入接口相连接以及将被选中的微服务的数据输出接口输出的数据作为所述目标应用的最终输出,其中,所述数据源为本地数据源或者远程数据源。
20.可选地,生成单元还用于:在按照在所述配置界面检测到的操作,将用户从所述微服务集合中选择的微服务编排成目标应用之后,创建并在事件库中保存用于执行目标任务的任务事件,其中,所述目标任务包括多个子任务,所述多个子任务中的每个子任务由所述目标应用的一个微服务完成,所述目标应用的任意两个微服务所处理的子任务不同;采用事件驱动架构对所述目标任务进行处理:在所述目标任务中的子任务被分配给相应的微服务后,在所述事件库记录处理子任务的微服务;在所述目标应用的微服务完成分配的子任务的情况下,在所述事件库中更新微服务所完成的子任务的状态;在所述目标应用的微服务处理分配的子任务失败的情况下,在所述事件库中更新微服务所处理失败的子任务的状态。
21.可选地,生成单元还用于:在采用事件驱动架构对所述目标任务进行处理的过程中,在终端与服务端之间使用http协议进行通讯,并对传输数据进行三级加密。
22.可选地,生成单元还用于:在按照在所述配置界面检测到的操作,将用户从所述微服务集合中选择的微服务编排成目标应用之后,在所述目标应用所调用的多个微服务中的任意一个发生升级的情况下,在升级完成之后,在所述目标应用运行时直接调用升级后的微服务。
23.可选地,生成单元还用于:在按照在所述配置界面检测到的操作,将用户从所述微服务集合中选择的微服务编排成目标应用之后,以在终端的客户端上注册系统服务的方式添加前置应用,通过服务监控指令进行交互,以减少客户端的资源承载并减少本地终端升级需求。
24.可选地,生成单元还用于:在按照在所述配置界面检测到的操作,将用户从所述微服务集合中选择的微服务编排成目标应用之后,插件模式应用:将在所述配置界面编辑的插件上传服务端,以便于在本地终端下载使用。
25.根据本技术实施例的另一方面,还提供了一种电子装置,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,处理器通过计算机程序执行上述的方法。
26.根据本技术的一个方面,提供了一种计算机程序产品或计算机程序,该计算机程序产品或计算机程序包括计算机指令,该计算机指令存储在计算机可读存储介质中。计算机设备的处理器从计算机可读存储介质读取该计算机指令,处理器执行该计算机指令,使得该计算机设备执行上述方法中任一实施例的步骤。
27.应用本发明的技术方案,在用户终端上展示配置界面,用户可在配置界面上选择
服务器提供的微服务集合中的微服务,并将选择的微服务编排成所需应用,微服务集合中的每个微服务用于提供一种基本功能;按照在配置界面检测到的操作,将用户从微服务集合中选择的微服务编排成目标应用,微服务专注于单一责任与功能的小型功能区块,利用模组化的方式组合出复杂的大型应用程序,各功能区块使用与语言无关的api集相互通讯,可以解决应用的复杂性较高的技术问题。
28.除了上面所描述的目的、特征和优点之外,本发明还有其它的目的、特征和优点。下面将参照图,对本发明作进一步详细的说明。
附图说明
29.构成本发明的一部分的说明书附图用来提供对本发明的进一步理解,本发明的示意性实施例及其说明用于解释本发明,并不构成对本发明的不当限定。在附图中:
30.图1是根据本技术实施例的一种可选的应用的生成方法的流程图;以及,
31.图2是根据本技术实施例的一种可选的应用的生成装置的示意图。
具体实施方式
32.为了使本技术领域的人员更好地理解本技术方案,下面将结合本技术实施例中的附图,对本技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本技术一部分的实施例,而不是全部的实施例。基于本技术中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本技术保护的范围。
33.需要说明的是,本技术的说明书和权利要求书及上述附图中的术语“第一”、“第二”等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本技术的实施例能够以除了在这里图示或描述的那些以外的顺序实施。此外,术语“包括”和“具有”以及他们的任何变形,意图在于覆盖不排他的包含,例如,包含了一系列步骤或单元的过程、方法、系统、产品或设备不必限于清楚地列出的那些步骤或单元,而是可包括没有清楚地列出的或对于这些过程、方法、产品或设备固有的其它步骤或单元。
34.根据本技术实施例的一方面,提供了一种应用的生成方法的方法实施例。本技术实施例的应用的生成方法可以由服务器、终端来执行。其中,终端执行本技术实施例的应用的生成方法也可以是由安装在其上的客户端来执行。本方案的系统功能由独立模块拼接完成,模块构建和拼接可通过后台界面可视化操作,针对各功能或功能中某个流程进行单独升级,不影响其他部分使用,服务端和终端通讯协议升级由socket升级到http协议并增加三级加密,保证系统、功能、接口对接的稳定和数据流的安全。图1是根据本技术实施例的一种可选的应用的生成方法的流程图,如图1所示,该方法可以包括以下步骤:
35.步骤s102,在用户终端上展示配置界面,配置界面用于用户从服务器提供的微服务集合中选择微服务,并将选择的微服务编排成所需应用,微服务集合中的每个微服务用于提供一种基本功能。
36.步骤s104,按照在配置界面检测到的操作,将用户从微服务集合中选择的微服务编排成目标应用。
37.可选地,按照在配置界面检测到的操作,将用户从微服务集合中选择的微服务编排成目标应用,包括:在配置界面中检测到选择操作,从微服务集合中确定所选中的多个微服务;在配置界面中检测到编排操作,按照编排操作确定多个微服务之间的排列顺序,并将多个微服务按照排列顺序串联成目标应用;在配置界面中检测到接口编辑操作,按照接口编辑操作对被选中的微服务的数据接口进行编辑:为被选中的微服务的数据输入接口配置数据源、将被选中的微服务的数据输入接口配置为与另一微服务的输出接口相连接、将被选中的微服务的数据输出接口配置为与另一微服务的输入接口相连接以及将被选中的微服务的数据输出接口输出的数据作为目标应用的最终输出,其中,数据源为本地数据源或者远程数据源。
38.可选地,在按照在配置界面检测到的操作,将用户从微服务集合中选择的微服务编排成目标应用之后,方法还包括:创建并在事件库中保存用于执行目标任务的任务事件,其中,目标任务包括多个子任务,多个子任务中的每个子任务由目标应用的一个微服务完成,目标应用的任意两个微服务所处理的子任务不同;采用事件驱动架构对目标任务进行处理:在目标任务中的子任务被分配给相应的微服务后,在事件库记录处理子任务的微服务;在目标应用的微服务完成分配的子任务的情况下,在事件库中更新微服务所完成的子任务的状态;在目标应用的微服务处理分配的子任务失败的情况下,在事件库中更新微服务所处理失败的子任务的状态。
39.可选地,在采用事件驱动架构对目标任务进行处理的过程中,方法还包括:在终端与服务端之间使用http协议进行通讯,并对传输数据进行三级加密。
40.可选地,在按照在配置界面检测到的操作,将用户从微服务集合中选择的微服务编排成目标应用之后,方法还包括:在目标应用所调用的多个微服务中的任意一个发生升级的情况下,在升级完成之后,在目标应用运行时直接调用升级后的微服务。
41.可选地,在按照在配置界面检测到的操作,将用户从微服务集合中选择的微服务编排成目标应用之后,方法还包括:以在终端的客户端上注册系统服务的方式添加前置应用,通过服务监控指令进行交互,以减少客户端的资源承载并减少本地终端升级需求。
42.可选地,在按照在配置界面检测到的操作,将用户从微服务集合中选择的微服务编排成目标应用之后,方法还包括:插件模式应用:将在配置界面编辑的插件上传服务端,以便于在本地终端下载使用。
43.通过上述步骤,在用户终端上展示配置界面,用户可在配置界面上选择服务器提供的微服务集合中的微服务,并将选择的微服务编排成所需应用,微服务集合中的每个微服务用于提供一种基本功能;按照在配置界面检测到的操作,将用户从微服务集合中选择的微服务编排成目标应用,微服务专注于单一责任与功能的小型功能区块,利用模组化的方式组合出复杂的大型应用程序,各功能区块使用与语言无关的api集相互通讯,可以解决应用的复杂性较高的技术问题。
44.随着业界对信息化的越来越重视,客户针对软件产品要求也在逐步提升,针对实施周期短、便于管理、功能升级方便、可视化操作等。
45.本方案针对以上内容进行了提炼和加强,以微服务作为核心理念,以基于原生js开发的框架作为核心技术,实现独立的功能和流程模型,通过可视化界面操作,可根据自己的需求在每个模块选择自己实际需求进行排列组合。
46.针对信息安全评级进行架构升级,将前置服务升级集成到系统服务中,通过http协议的方式进行接口交互和数据传输,保证通讯快、通讯稳定和数据安全。
47.由于客户个性化需求,产品大量冗余,维护难度大。设计初衷让产品可简单自主构建,建设人员不需要懂代码,以ppt形式可视化设计,以事件驱动流程。提供大量模板,更便捷的设计模式提高交付效率。
48.采用本方案,以在客户端注册系统服务的方式添加前置应用,通过服务监控指令进行交互,减少客户端的资源承载,减少本地终端升级需求,增加接口调用稳定和数据传输速度;客户端和服务端所有接口通过http协议进行交互,在数据传输过程进行加密和解密,保证接口对接中的数据流安全,和接口对接的稳定;插件模式应用,做到面向插件模式,可通过自己编辑插件在服务器上传,后在本地终端下载使用;基于原生js开发的框架为基础,增加扩展接入方式,能够做到多方联合开发;自助系统微服务架构,针对每个功能或功能流程都有多个独立模块,可套用模板或自定义编辑;集成多种标志性模板,产品自带各类系统,直接继承后套用,复用其他项目的经验,实现快速部署,系统稳定,节约时间;后台可视化构建方式,通过后台界面针对系统、功能、功能流程进行勾选后,一键生成便捷操作。
49.需要说明的是,对于前述的各方法实施例,为了简单描述,故将其都表述为一系列的动作组合,但是本领域技术人员应该知悉,本技术并不受所描述的动作顺序的限制,因为依据本技术,某些步骤可以采用其他顺序或者同时进行。其次,本领域技术人员也应该知悉,说明书中所描述的实施例均属于优选实施例,所涉及的动作和模块并不一定是本技术所必须的。
50.通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到根据上述实施例的方法可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件,但很多情况下前者是更佳的实施方式。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质(如rom/ram、磁碟、光盘)中,包括若干指令用以使得一台终端设备(可以是手机,计算机,服务器,或者网络设备等)执行本技术各个实施例所述的方法。
51.根据本技术实施例的另一个方面,还提供了一种用于实施上述应用的生成方法的应用的生成装置。图2是根据本技术实施例的一种可选的应用的生成装置的示意图,如图2所示,该装置可以包括:
52.展示单元21,用于在用户终端上展示配置界面,其中,所述配置界面用于用户从服务器提供的微服务集合中选择微服务,并将选择的微服务编排成所需应用,所述微服务集合中的每个微服务用于提供一种基本功能;生成单元23,用于按照在所述配置界面检测到的操作,将用户从所述微服务集合中选择的微服务编排成目标应用。
53.可选地,生成单元还用于:在所述配置界面中检测到选择操作,从所述微服务集合中确定所选中的多个微服务;在所述配置界面中检测到编排操作,按照所述编排操作确定所述多个微服务之间的排列顺序,并将所述多个微服务按照所述排列顺序串联成所述目标应用;在所述配置界面中检测到接口编辑操作,按照所述接口编辑操作对被选中的微服务的数据接口进行编辑:为被选中的微服务的数据输入接口配置数据源、将被选中的微服务的数据输入接口配置为与另一微服务的输出接口相连接、将被选中的微服务的数据输出接口配置为与另一微服务的输入接口相连接以及将被选中的微服务的数据输出接口输出的
数据作为所述目标应用的最终输出,其中,所述数据源为本地数据源或者远程数据源。
54.可选地,生成单元还用于:在按照在所述配置界面检测到的操作,将用户从所述微服务集合中选择的微服务编排成目标应用之后,创建并在事件库中保存用于执行目标任务的任务事件,其中,所述目标任务包括多个子任务,所述多个子任务中的每个子任务由所述目标应用的一个微服务完成,所述目标应用的任意两个微服务所处理的子任务不同;采用事件驱动架构对所述目标任务进行处理:在所述目标任务中的子任务被分配给相应的微服务后,在所述事件库记录处理子任务的微服务;在所述目标应用的微服务完成分配的子任务的情况下,在所述事件库中更新微服务所完成的子任务的状态;在所述目标应用的微服务处理分配的子任务失败的情况下,在所述事件库中更新微服务所处理失败的子任务的状态。
55.可选地,生成单元还用于:在采用事件驱动架构对所述目标任务进行处理的过程中,在终端与服务端之间使用http协议进行通讯,并对传输数据进行三级加密。
56.可选地,生成单元还用于:在按照在所述配置界面检测到的操作,将用户从所述微服务集合中选择的微服务编排成目标应用之后,在所述目标应用所调用的多个微服务中的任意一个发生升级的情况下,在升级完成之后,在所述目标应用运行时直接调用升级后的微服务。
57.可选地,生成单元还用于:在按照在所述配置界面检测到的操作,将用户从所述微服务集合中选择的微服务编排成目标应用之后,以在终端的客户端上注册系统服务的方式添加前置应用,通过服务监控指令进行交互,以减少客户端的资源承载并减少本地终端升级需求。
58.可选地,生成单元还用于:在按照在所述配置界面检测到的操作,将用户从所述微服务集合中选择的微服务编排成目标应用之后,插件模式应用:将在所述配置界面编辑的插件上传服务端,以便于在本地终端下载使用。
59.可选地,本实施例中的具体示例可以参考上述实施例中所描述的示例,本实施例在此不再赘述。
60.可选地,在本实施例中,上述存储介质可以包括但不限于:u盘、只读存储器(rom,read-only memory)、随机存取存储器(ram,random access memory)、移动硬盘、磁碟或者光盘等各种可以存储程序代码的介质。
61.上述本技术实施例序号仅仅为了描述,不代表实施例的优劣。
62.上述实施例中的集成的单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在上述计算机可读取的存储介质中。基于这样的理解,本技术的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的全部或部分可以以软件产品的形式体现出来,该计算机软件产品存储在存储介质中,包括若干指令用以使得一台或多台计算机设备(可为个人计算机、服务器或者网络设备等)执行本技术各个实施例所述方法的全部或部分步骤。
63.在本技术的上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述的部分,可以参见其他实施例的相关描述。
64.在本技术所提供的几个实施例中,应该理解到,所揭露的客户端,可通过其它的方式实现。其中,以上所描述的装置实施例仅仅是示意性的,例如所述单元的划分,仅仅为一
种逻辑功能划分,实际实现时可以有另外的划分方式,例如多个单元或组件可以结合或者可以集成到另一个系统,或一些特征可以忽略,或不执行。另一点,所显示或讨论的相互之间的耦合或直接耦合或通信连接可以是通过一些接口,单元或模块的间接耦合或通信连接,可以是电性或其它的形式。
65.所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
66.另外,在本技术各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
67.以上所述仅是本技术的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本技术原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也应视为本技术的保护范围。
再多了解一些

本文用于企业家、创业者技术爱好者查询,结果仅供参考。

发表评论 共有条评论
用户名: 密码:
验证码: 匿名发表

相关文献