CN115826994A - 一种微服务项目的部署方法、装置及存储介质 - Google Patents
一种微服务项目的部署方法、装置及存储介质 Download PDFInfo
- Publication number
- CN115826994A CN115826994A CN202111085919.1A CN202111085919A CN115826994A CN 115826994 A CN115826994 A CN 115826994A CN 202111085919 A CN202111085919 A CN 202111085919A CN 115826994 A CN115826994 A CN 115826994A
- Authority
- CN
- China
- Prior art keywords
- deployment
- service
- micro
- server
- client
- 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.)
- Pending
Links
Images
Landscapes
- Information Transfer Between Computers (AREA)
Abstract
本公开涉及计算机领域,公开了一种微服务项目的部署方法、装置及存储介质,该方法为:客户端将需要部署的微服务项目中的微服务的部署文件上传到服务器,并基于服务器返回的微服务对应的存储地址标识,建立存储地址标识和微服务的绑定关系,客户端通过前端显示界面接收到针对微服务的部署请求后,基于部署请求对存储的部署文件进行更新,并基于绑定关系确定微服务对应的存储地址标识,以及通过前端显示界面中的部署接口将更新后的部署文件和存储地址标识上传给服务器,以使服务器基于存储地址标识和更新后的部署文件完成对微服务的部署,从而避免远程到服务器上配置,简化了微服务的部署步骤和部署时间,实现了对微服务的可视化管理。
Description
技术领域
本申请涉及计算机技术,特别涉及一种微服务项目的部署方法、装置及存储介质。
背景技术
目前,随着业务***的日益复杂和庞大,单体架构对于***的开发和运维都产生了巨大的挑战。在这种情况下,微服务架构应运而生。微服务架构主要是将原有的单体架构按照功能或者模块为粒度进行拆分,即将原有的大型单体应用拆分为独立的小应用。每个微服务可以独立开发和运维,各个微服务之间的耦合度较低,***内的所有微服务通过统一的注册中心和网关技术,实现对外提供与原有单体架构同样的功能。
但现有的微服务架构开发中,由于每个微服务的独立性,在部署完整的项目时,每个微服务的部署、启动以及配置更新的过程,都需要相应微服务的开发人员进行现场部署,即每个服务配置文件的更新需要远程到服务器上进行,若在Windows服务器上部署,会出现不同的客户端共用一台服务器的情况,导致远程连接拥堵,极大的加大了部署的难度和浪费部署时间。
发明内容
本公开实施例提供一种微服务项目的部署方法、装置及存储介质,用以提升微服务项目的部署效率。
本公开提供的具体技术方案如下:
第一方面,一种微服务项目的部署方法,包括:
客户端将需要部署的微服务项目中的微服务的部署文件上传到服务器,并基于服务器返回的微服务对应的存储地址标识,建立存储地址标识和微服务的绑定关系,其中,存储地址标识用于表征对应的微服务的部署文件在服务器中的存储位置,部署文件包括代码压缩包、配置参数和前端服务代码中的部分或全部;
客户端通过前端显示界面接收到针对微服务的部署请求后,基于部署请求对存储的部署文件进行更新,并基于绑定关系确定微服务对应的存储地址标识,以及通过前端显示界面中的部署接口将更新后的部署文件和存储地址标识上传给服务器,以使服务器基于存储地址标识和更新后的部署文件完成对微服务的部署,其中,前端显示界面是服务器基于前端服务代码生成的。
在一些可能的实施例中,客户端通过前端显示界面接收到针对微服务的部署请求之前,还包括:
客户端判定与前端服务代码对应的前端显示界面不存在时,向服务器发送界面创建请求,以使服务器基于前端服务代码生成前端显示界面,并将前端显示界面返回给客户端进行显示;和/或
客户端判定前端显示界面中是否存在部署接口,并在判定前端显示界面中不存在部署接口时,向服务器发送接口创建请求,以使服务器基于前端服务代码在前端显示界面中生成部署接口,并将包含有部署接口的前端显示界面返回给客户端进行显示。
在一些可能的实施例中,客户端通过前端显示界面接收到针对微服务的部署请求后,基于部署请求对存储的部署文件进行更新,并基于绑定关系确定微服务对应的存储地址标识,以及通过前端显示界面中的部署接口将更新后的部署文件和存储地址标识上传给服务器,以使服务器基于存储地址标识和更新后的部署文件完成对微服务的部署,包括:
客户端通过前端显示界面接收到针对微服务的部署请求后,在本地数据库中查找与部署请求对应的部署文件,并基于部署请求对本地数据库中存储的部署文件进行更新,得到更新后的部署文件;
客户端基于绑定关系查找与部署请求对应的微服务和微服务对应的存储地址标识,客户端通过前端显示界面中的部署接口将更新后的部署文件和存储地址标识上传给服务器;
客户端在接收到针对微服务的启动触发时,触发服务器基于存储地址标识确定微服务,并基于更新后的部署文件完成对微服务的部署。
在一些可能的实施例中,方法还包括:
客户端判断部署请求对应的前端显示界面是否有更新;
若是,则客户端获取与部署请求对应的新的前端服务代码,客户端通过前端显示界面中的部署接口将新的前端服务代码上传给服务器;
客户端在接收到针对微服务的界面启动触发时,触发服务器编译新的前端服务代码,并触发服务器基于新的前端服务代码生成微服务对应的新的前端显示界面,以及触发服务器将新的前端显示界面发送给客户端进行显示。
第二方面,一种微服务项目的部署方法,该方法包括:
服务器接收客户端发送的需要部署的微服务项目中的微服务的部署文件,将部署文件存储在数据库中,基于部署文件在数据库中的存储位置生成微服务对应的存储地址标识,并将存储地址标识发送给客户端,其中部署文件包括代码压缩包、配置参数和前端服务代码中的部分或全部;
服务器接收客户端通过部署接口上传的更新后的部署文件和存储地址标识,并基于更新后的部署文件和存储地址标识部署微服务;
基于前端服务代码生成前端显示界面,将部署完成的微服务嵌入到前端显示界面中,并将前端显示界面发送给客户端进行显示。
在一些可能的实施例中,服务器接收客户端通过部署接口上传的更新后的部署文件和存储地址标识,并基于更新后的部署文件和存储地址标识部署微服务之后,还包括:
针对微服务项目中部署完成的各个微服务:服务器判定各个微服务之间的依赖关系,并基于依赖关系,确定各个微服务在微服务项目中的执行顺序。
第三方面,一种微服务项目的部署装置,包括:
上传模块,用于客户端将需要部署的微服务项目中的微服务的部署文件上传到服务器,并基于所述服务器返回的所述微服务对应的存储地址标识,建立存储地址标识和微服务的绑定关系,其中,所述存储地址标识用于表征对应的微服务的部署文件在服务器中的存储位置,所述部署文件包括代码压缩包、配置参数和前端服务代码中的部分或全部;
更新模块,用于所述客户端通过前端显示界面接收到针对所述微服务的部署请求后,基于所述部署请求对存储的所述部署文件进行更新,并基于所述绑定关系确定所述微服务对应的存储地址标识,以及通过所述前端显示界面中的部署接口将所述更新后的部署文件和所述存储地址标识上传给服务器,以使所述服务器基于所述存储地址标识和所述更新后的部署文件完成对所述微服务的部署,其中,所述前端显示界面是所述服务器基于所述前端服务代码生成的。
第四方面,一种微服务项目的部署装置,包括:
接收模块,用于服务器接收客户端发送的需要部署的微服务项目中的微服务的部署文件,将所述部署文件存储在数据库中,基于所述部署文件在所述数据库中的存储位置生成所述微服务对应的存储地址标识,并将所述存储地址标识发送给所述客户端,其中所述部署文件包括代码压缩包、配置参数和前端服务代码中的部分或全部;
部署模块,用于所述服务器接收所述客户端通过所述部署接口上传的更新后的部署文件和所述存储地址标识,并基于所述更新后的部署文件和所述存储地址标识部署所述微服务;
界面生成模块,用于基于所述前端服务代码生成前端显示界面,将部署完成的所述微服务嵌入到所述前端显示界面中,并将所述前端显示界面发送给所述客户端进行显示。
第五方面,一种客户端,包括:
存储器,用于存储可被控制器执行的计算机程序;
控制器与存储器连接,被配置为执行上述第一方面任一项的方法。
第六方面,一种服务器,包括:
存储器,用于存储可被控制器执行的计算机程序;
控制器与存储器连接,被配置为执行上述第二方面任一项的方法。
综上所述,本公开实施例中,一种微服务项目的部署方法、装置及存储介质,该方法为:客户端将需要部署的微服务项目中的微服务的部署文件上传到服务器,并基于服务器返回的微服务对应的存储地址标识,建立存储地址标识和微服务的绑定关系,客户端通过前端显示界面接收到针对微服务的部署请求后,基于部署请求对存储的部署文件进行更新,并基于绑定关系确定微服务对应的存储地址标识,以及通过前端显示界面中的部署接口将更新后的部署文件和存储地址标识上传给服务器,以使服务器基于存储地址标识和更新后的部署文件完成对微服务的部署,从而避免远程到服务器上配置,简化了微服务的部署步骤和部署时间,实现了对微服务的可视化管理。
附图说明
为了更清楚地说明本申请实施例的技术方案,下面将对本申请实施例中所需要使用的附图作简单地介绍,显而易见地,下面所介绍的附图仅仅是本申请的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1为本申请实施例提供的一种客户端的结构示意图;
图2为本申请实施例提供的一种客户端的软件架构示意图;
图3为本申请实施例中对微服务项目进行部署的***示意图;
图4为本申请实施例中客户端对微服务项目进行部署的流程示意图;
图5为本申请实施例中客户端对部署文件进行更新并触发服务器进行部署的流程示意图;
图6为本申请实施例中服务器对微服务项目进行部署的流程示意图;
图7为本公开实施例中一种微服务项目的部署装置的逻辑架构示意图;
图8为本公开实施例中一种微服务项目的部署装置的逻辑架构示意图;
图9为本公开实施例中一种客户端的实体架构示意图;
图10为本公开实施例中一种服务器的实体架构示意图。
具体实施方式
为了使本领域普通人员更好地理解本申请的技术方案,下面将结合附图,对本申请实施例中的技术方案进行清楚、完整地描述。
需要说明的是,本申请的说明书和权利要求书的术语″第一″、″第二″等是用于区别类似的对象,而不必用于描述特定的顺序或先后次序。应该理解这样使用的数据在适当情况下可以互换,以便这里描述的本申请的实施例能够以除了在这里图示或描述的那些以外的顺序实施。以下示例性实施例中所描述的实施方式并不代表与本申请相一致的所有实施方式。相反,它们仅是与如所附权利要求书中所详述的、本申请的一些方面相一致的装置和方法的例子。
参阅图1所示,图1中示例性示出了根据示例性实施例中客户端100的硬件配置框图。如图1所示,客户端100包括:射频(radio frequency,RF)电路110、存储器120、显示单元130、摄像头140、传感器150、音频电路160、无线保真(Wireless Fidelity,Wi-Fi)模块170、处理器180、蓝牙模块181、以及电源190等部件。
RF电路110可用于在收发信息或通话过程中信号的接收和发送,可以接收基站的下行数据后交给处理器180处理;可以将上行数据发送给基站。通常,RF电路包括但不限于天线、至少一个放大器、收发信机、耦合器、低噪声放大器、双工器等器件。
存储器120可用于存储软件程序及数据。处理器180通过运行存储在存储器120的软件程序或数据,从而执行客户端100的各种功能以及数据处理。存储器120可以包括高速随机存取存储器,还可以包括非易失性存储器,例如至少一个磁盘存储器件、闪存器件、或其他易失性固态存储器件。存储器120存储有使得客户端100能运行的操作***。本申请中存储器120可以存储操作***及各种应用程序,还可以存储执行本申请实施例所述方法的程序代码。
显示单元130可用于接收输入的数字或字符信息,产生与客户端100的用户设置以及功能控制有关的信号输入,具体地,显示单元130可以包括设置在客户端100正面的触摸屏131,可收集用户在其上或附近的触摸操作,例如点击按钮,拖动滚动框等。
显示单元130还可用于显示由用户输入的信息或提供给用户的信息以及客户端100的各种菜单的图形用户界面(graphical user interface,GUI)。具体地,显示单元130可以包括设置在客户端100正面的显示屏132。其中,显示屏132可以采用液晶显示器、发光二极管等形式来配置。显示单元130可以用于显示本申请中所述的邮件列表界面。
其中,触摸屏131可以覆盖在显示屏132之上,也可以将触摸屏131与显示屏132集成而实现客户端100的输入和输出功能,集成后可以简称触摸显示屏。本申请中显示单元130可以显示应用程序以及对应的操作步骤。
摄像头140可用于捕获静态图像或视频。物体通过镜头生成光学图像投射到感光元件。感光元件可以是电荷耦合器件(charge coupled device,CCD)或互补金属氧化物半导体(complementary metal-oxide-semiconductor,CMOS)光电晶体管。感光元件把光信号转换成电信号,之后将电信号传递给处理器180转换成数字图像信号。
客户端100还可以包括至少一种传感器150,比如加速度传感器151、距离传感器152、指纹传感器153、温度传感器154。客户端100还可配置有陀螺仪、气压计、湿度计、温度计、红外线传感器、光传感器、运动传感器等其他传感器。
音频电路160、扬声器161、麦克风162可提供用户与客户端100之间的音频接口。音频电路160可将接收到的音频数据转换后的电信号,传输到扬声器161,由扬声器161转换为声音信号输出。客户端100还可配置音量按钮,用于调节声音信号的音量。另一方面麦克风162将收集的声音信号转换为电信号,由音频电路160接收后转换为音频数据,再将音频数据输出至RF电路110以发送给比如另一终端,或者将音频数据输出至存储器120以便进一步处理。
Wi-Fi属于短距离无线传输技术,客户端100可以通过Wi-Fi模块170帮助用户收发电子邮件、浏览网页和访问流媒体等,它为用户提供了无线的宽带互联网访问。
处理器180是客户端100的控制中心利用各种接口和线路连接整个终端的各个部分,通过运行或执行存储在存储器120内的软件程序,以及调用存储在存储器120内的数据,执行客户端100的各种功能和处理数据。在一些实施例中,处理器180可包括一个或多个处理单元;处理器180还可以集成应用处理器和基带处理器,其中,应用处理器主要处理操作***、用户界面和应用程序等,基带处理器主要处理无线通信。可以理解的是,上述基带处理器也可以不集成到处理器180中。本申请中处理器180可以运行操作***、应用程序、用户界面显示及触控响应,以及本申请实施例所述的处理方法。另外,处理器180与显示单元130耦接。
蓝牙模块181,用于通过蓝牙协议来与其他具有蓝牙模块的蓝牙设备进行信息交互。例如,客户端100可以通过蓝牙模块181与同样具备蓝牙模块的可穿戴电子设备(例如智能手表)建立蓝牙连接,从而进行数据交互。
客户端100还包括给各个部件供电的电源190(比如电池)。电源可以通过电源管理***与处理器180逻辑相连,从而通过电源管理***实现管理充电、放电以及功耗等功能。客户端100还可配置有电源按钮,用于终端的开机和关机,以及锁屏等功能。
参阅图2所示,图2是本申请实施例的定位客户端100的软件结构框图。
分层架构将软件分成若干个层,每一层都有清晰的角色和分工。层与层之间通过软件接口通信。在一些实施例中,可将Android***分为四层,从上至下分别为应用程序层,应用程序框架层,安卓运行时(Android runtime)和***库,以及内核层。
应用程序层可以包括一系列应用程序包。
如图2所示,应用程序包可以包括相机,图库,日历,通话,地图,导航,WLAN,蓝牙,音乐,视频,短信息等应用程序。
应用程序框架层为应用程序层的应用程序提供应用编程接口(applicationprogramming interface,API)和编程框架。应用程序框架层包括一些预先定义的函数。
如图2所示,应用程序框架层可以包括窗口管理器,内容提供器,视图***,电话管理器,资源管理器,通知管理器等。
窗口管理器用于管理窗口程序。窗口管理器可以获取显示屏大小,判断是否有状态栏,锁定屏幕,截取屏幕等。
内容提供器用来存放和获取数据,并使这些数据可以被应用程序访问。所述数据可以包括视频,图像,音频,拨打和接听的电话,浏览历史和书签,电话簿、短信息等。
视图***包括可视控件,例如显示文字的控件,显示图片的控件等。视图***可用于构建应用程序。显示界面可以由一个或多个视图组成的。例如,包括短信息通知图标的显示界面,可以包括显示文字的视图以及显示图片的视图。
电话管理器用于提供客户端100的通信功能。例如通话状态的管理(包括接通,挂断等)。
资源管理器为应用程序提供各种资源,比如本地化字符串,图标,图片,布局文件,视频文件等。
通知管理器使应用程序可以在状态栏中显示通知信息(例如短信息的消息摘要,消息内容),可以用于传达告知类型的消息,可以短暂停留后自动消失,无需用户交互。比如通知管理器被用于告知下载完成,消息提醒等。通知管理器还可以是以图表或者滚动条文本形式出现在***顶部状态栏的通知,例如后台运行的应用程序的通知,还可以是以对话窗口形式出现在屏幕上的通知。例如在状态栏提示文本信息,发出提示音,终端振动,指示灯闪烁等。
Android Runtime包括核心库和虚拟机。Android runtime负责安卓***的调度和管理。
核心库包含两部分:一部分是java语言需要调用的功能函数,另一部分是安卓的核心库。
应用程序层和应用程序框架层运行在虚拟机中。虚拟机将应用程序层和应用程序框架层的java文件执行为二进制文件。虚拟机用于执行对象生命周期的管理,堆栈管理,线程管理,安全和异常的管理,以及垃圾回收等功能。
***库可以包括多个功能模块。例如:表面管理器(surface manager),媒体库(MediaLibraries),三维图形处理库(例如:OpenGL ES),2D图形引擎(例如:SGL)等。
表面管理器用于对显示子***进行管理,并且为多个应用程序提供了2D和3D图层的融合。
媒体库支持多种常用的音频,视频格式回放和录制,以及静态图像文件等。媒体库可以支持多种音视频编码格式,例如:MPEG4,H.264,MP3,AAC,AMR,JPG,PNG等。
三维图形处理库用于实现三维图形绘图,图像渲染,合成,和图层处理等。
2D(一种动画方式)图形引擎是2D绘图的绘图引擎。
内核层是硬件和软件之间的层。内核层至少包含显示驱动,摄像头驱动,音频驱动,传感器驱动。
本申请实施例中的客户端100可以为手机、平板电脑、可穿戴设备、笔记本电脑以及电视等。
下面结合附图对本申请优选的实施方式进行详细说明。
参阅图3所示,本公开实施例中,***中包含了至少一个客户端和服务器,在图1中,以客户端1、客户端2以及客户端n来示例性表示对微服务项目进行部署的客户端,假设,客户端1对微服务项目中的微服务1进行部署,客户端2对微服务项目中的微服务2进行部署,客户端n对微服务项目中的微服务n进行部署,以服务器来示例性表示与客户端进行交互的服务器,相应的,服务器中保存有客户端上传的部署文件,并基于部署文件部署微服务项目中的各个微服务。
本公开实施例中,微服务项目的部署方法的实现,主要分为客户端侧和服务器侧两种,下面分别进行介绍。
客户端侧:将微服务的部署文件上传到服务器,建立存储地址标识和微服务的绑定关系,基于部署请求对存储的部署文件进行更新,并基于绑定关系确定微服务对应的存储地址标识,以及通过前端显示界面中的部署接口将更新后的部署文件和存储地址标识上传给服务器。
服务器侧:接收客户端发送的微服务的部署文件,将部署文件存储在数据库中,基于部署文件在数据库中的存储位置生成微服务对应的存储地址标识,接收客户端通过部署接口上传的更新后的部署文件和存储地址标识,并基于更新后的部署文件和存储地址标识部署微服务,基于前端服务代码生成前端显示界面,将部署完成的微服务嵌入到前端显示界面中,并将前端显示界面发送给客户端进行显示。
下面先介绍由客户端执行微服务项目的部署方法的情况。参阅图4所示,本公开实施例中,服务器微服务的部署具体流程如下:
步骤401:客户端将需要部署的微服务项目中的微服务的部署文件上传到服务器,并基于服务器返回的微服务对应的存储地址标识,建立存储地址标识和微服务的绑定关系,其中,存储地址标识用于表征对应的微服务的部署文件在服务器中的存储位置,部署文件包括代码压缩包、配置参数和前端服务代码中的部分或全部。
通常,一个微服务项目中包括多个微服务,各个微服务之间是相对独立的,从而方便用户操作,即用户可以独立使用其中的任意一个微服务。上述每一个微服务在服务器中也是独立部署的,即服务器可根据部署文件分别部署每一个微服务,由部署完成的各个微服务组成一个微服务项目。
现有技术中,创建微服务用的代码压缩包、配置参数和前端服务代码都是统一放置在服务器中的,存放形式多为压缩包,当微服务的部署有任何变动时,需要去服务器中修改上述压缩包。
本申请实施例中,将代码压缩包、配置参数和前端服务代码都分别独立存放在了部署文件中,并且,部署文件包括代码压缩包、配置参数和前端服务代码中的部分或全部,即若微服务从未建立过,则上述部署文件包括代码压缩包、配置参数和前端服务代码中的全部;若仅对已建立的微服务更改其中的部分参数,则上述部署文件包括代码压缩包、配置参数和前端服务代码中对应的部分即可。
另外,本申请实施例中的客户端可以是智能手机、平板电脑、笔记本电脑等的设备。
实施过程中,客户端先会将本地数据库中存储的需要部署的微服务项目中的微服务的部署文件上传到服务器,之后,服务器会将该微服务的部署文件存储到服务器中的某一个存储位置中去,设置存储地址标识,并将该存储地址标识返回给客户端进行处理。
客户端在接收到服务器返回的微服务对应的存储地址标识后,建立存储地址标识和微服务的绑定关系,以便客户端在接收到针对该微服务的部署请求后,能够根据该绑定关系快速锁定需要进行部署的微服务。
步骤402:客户端通过前端显示界面接收到针对微服务的部署请求后,基于部署请求对存储的部署文件进行更新,并基于绑定关系确定微服务对应的存储地址标识,以及通过前端显示界面中的部署接口将更新后的部署文件和存储地址标识上传给服务器,以使服务器基于存储地址标识和更新后的部署文件完成对微服务的部署,其中,前端显示界面是服务器基于前端服务代码生成的。
由于,微服务项目中的部署完成的各个微服务是嵌入到同一个前端显示界面中的,即上述客户端1、客户端2以及客户端n中的一个客户端会将前端服务代码上传给服务器,由服务器基于前端服务代码生成前端显示界面。
因此,在实施过程中,客户端通过前端显示界面接收到针对微服务的部署请求之前,还包括:
客户端判定与前端服务代码对应的前端显示界面不存在时,即在本微服务项目中还没有其他的客户端触发服务器生成前端显示界面,在这种情况下,客户端向服务器发送界面创建请求,以使服务器基于前端服务代码生成前端显示界面,并将前端显示界面返回给客户端进行显示。和/或
进一步的,客户端判定前端显示界面中是否存在部署接口,并在判定前端显示界面中不存在部署接口时,即在本微服务项目中还没有其他的客户端触发服务器生成部署接口,在这种情况下,客户端向服务器发送接口创建请求,以使服务器基于前端服务代码在前端显示界面中生成部署接口,并将包含有部署接口的前端显示界面返回给客户端进行显示。上述部署接口的具***置可根据使用情况灵活设置。
实施过程中,客户端接收部署请求,并触发服务器基于存储地址标识和更新后的部署文件完成对微服务的部署的步骤,参阅图5所示,具体包括:
步骤4021:客户端通过前端显示界面接收到针对微服务的部署请求后,在本地数据库中查找与部署请求对应的部署文件,并基于部署请求对本地数据库中存储的部署文件进行更新,得到更新后的部署文件。
由于,客户端的本地数据库中预先存储有部署文件,客户端通过前端显示界面接收到针对微服务的部署请求后,先在本地数据库中查找与部署请求对应的部署文件,这里的部署请求可以是代码部署请求或者是配置参数部署请求,当然也包括前端显示部署请求,但考虑到通常一个微服务项目对应一个前端显示界面,前端显示界面相对固定。
在获取到对应的部署文件后,客户端依据部署请求对部署文件进行更新,即按照上述码部署请求或者是配置参数部署请求更新部署文件的具体内容,得到更新后的部署文件。
步骤4022:客户端基于绑定关系查找与部署请求对应的微服务和微服务对应的存储地址标识,客户端通过前端显示界面中的部署接口将更新后的部署文件和存储地址标识上传给服务器。
在确定了更新后的部署文件后,客户端需要将其上传给服务器,以使服务器利用更新后的部署文件对相应的微服务进行更新。实施过程中,客户端先确定需要进行更新的微服务,确定方法为基于绑定关系查找与上述代码部署请求或者是配置参数部署请求相对应的微服务以及微服务对应的存储地址标识。之后,客户端通过前端显示界面中的部署接口将更新后的部署文件(代码部署请求或者是配置参数部署请求)和存储地址标识上传给服务器。
步骤4023:客户端在接收到针对微服务的启动触发时,触发服务器基于存储地址标识确定微服务,并基于更新后的部署文件完成对微服务的部署。
实施过程中,为了使客户端在向服务器上传完部署文件后及时准确的触发服务器部署相应的微服务,为客户端设置启动触发,即客户端在接收到针对微服务的启动触发时,触发服务器基于存储地址标识确定微服务,即使服务器根据存储地址标识去查找对应的微服务,并基于更新后的部署文件完成对微服务的部署,即基于更新后的代码部署请求或者是配置参数部署请求对应的更新部分重新对微服务进行部署。
需要说明的是,该启动触发可以是在该前端显示界面或者是部署接口上的单击操作、双击操作或者其他操作等等。
此外,需要补充的是,虽然,微服务项目对应的前端显示界面相对固定,但实施过程中也可以根据部署请求对前端显示界面进行修改,具体实施步骤包括:客户端先判断部署请求对应的前端显示界面是否有更新,具体的,客户端可以比较部署请求对应的前端显示界面对应的前端服务代码与现有的前端显示界面的前端服务代码是否一致,若比较结果一致,即前端显示界面未发生任何变化,则判定部署请求对应的前端显示界面与现有的前端显示界面一致,这种情况下,客户端无需再次上传部署请求对应的前端服务代码。
若上述比较结果不一致,说明部署请求对应的前端显示界面发生了更新,即前端显示界面有变化,则客户端获取与部署请求对应的新的前端服务代码,这样以便客户端通过前端显示界面中的部署接口将新的前端服务代码上传给服务器,即用新的前端服务代码替代现有的前端显示界面对应的前端服务代码。
实施过程中,客户端在接收到针对微服务的界面启动触发时,这里生成前端显示界面的界面启动触发与部署微服务的代码和配置参数的启动触发有区别,即该界面启动触发是专门为生成前端显示界面而设置的,实施过程中,该界面启动触发促使服务器编译新的前端服务代码,并触发服务器基于新的前端服务代码生成微服务对应的新的前端显示界面,以便服务器将新的前端显示界面发送给客户端进行显示,即客户端将现有的前端显示界面更新为新的前端显示界面。
下面介绍由服务器执行微服务项目的部署方法,参阅图6所示,该方法包括:
步骤501:服务器接收客户端发送的需要部署的微服务项目中的微服务的部署文件,将部署文件存储在数据库中,基于部署文件在数据库中的存储位置生成微服务对应的存储地址标识,并将存储地址标识发送给客户端,其中部署文件包括代码压缩包、配置参数和前端服务代码中的部分或全部。
实施过程中,在客户端将本地数据库中存储的需要部署的微服务项目中的微服务的部署文件上传到服务器之后,服务器对部署文件进行接收,并存储到服务器对应的数据库中。
考虑到一个微服务项目中包括多个微服务,为了方便对每一个微服务进行维护,服务器基于部署文件在数据库中的存储位置生成微服务对应的存储地址标识,相应的,服务器通过该存储地址标识即可锁定要处理的微服务为微服务项目中的哪一个微服务。
进一步的,服务器将存储地址标识发送给客户端,以便客户端基于该存储地址标识建立和微服务的绑定关系,这样,待客户端再次上传部署文件后,服务器即可根据该存储地址标识快速的找到所要进行处理的微服务,并对其中的部署文件进行处理。
其中,部署文件包括代码压缩包、配置参数和前端服务代码中的部分或全部。部署文件的使用同客户端,这里不再赘述。
步骤502服务器接收客户端通过部署接口上传的更新后的部署文件和存储地址标识,并基于更新后的部署文件和存储地址标识部署微服务。
实施过程中,在客户端通过部署接口上传了更新后的部署文件和存储地址标识到服务器之后,服务器基于更新后的部署文件和存储地址标识部署微服务。具体的,服务器先根据存储地址标识找到对应的微服务,然后,服务器将该微服务下的部署文件替换成更新后的部署文件。
需要进行说明的是,这里更新后的部署文件包括代码压缩包、配置参数和前端服务代码中的部分或者全部。由于,现有的微服务已经部署完成,若上述更新后的部署文件包括代码压缩包、配置参数和前端服务代码中的全部,则对整个微服务进行重新部署;即上述更新后的部署文件包括代码压缩包、配置参数和前端服务代码中的部分,则仅对已建立的微服务更改其中的部分参数,即上述部署文件包括的更新部分的代码压缩包、配置参数和前端服务代码即可,以实现对微服务的代码、配置参数或者前端显示界面的更新。
步骤503:基于前端服务代码生成前端显示界面,将部署完成的微服务嵌入到前端显示界面中,并将前端显示界面发送给客户端进行显示。
由于,各个微服务要嵌入到前端显示界面中进行显示,实施过程中,服务器会基于前端服务代码进行相应的编译等之后生成前端显示界面,这里前端显示界面的具体样式不做限定,其可根据不同的使用场景进行灵活设定。
待服务器生成前端显示界面后,服务器会进一步将部署完成的微服务嵌入到前端显示界面中,为了使客户端能够获取到部署完成的微服务项目,服务器将嵌入了部署完成的微服务的前端显示界面发送给客户端进行显示。
另外,考虑到微服务项目中各个微服务之间可能有依赖,服务器接收客户端通过部署接口上传的更新后的部署文件和存储地址标识,并基于更新后的部署文件和存储地址标识部署微服务之后,还包括:
针对微服务项目中部署完成的各个微服务:服务器判定各个微服务之间的依赖关系,并基于依赖关系,确定各个微服务在微服务项目中的执行顺序。
需要说明的是,上述依赖关系可以理解为是各个微服务之间的数据调用关系,例如,微服务A必须调用微服务B的输出数据才能启动时,那么,上述依赖关系即为A依赖于B,这样,服务器确定微服务A和微服务B在微服务项目中的执行顺序为:微服务B、微服务A。
在介绍了本申请实施例提供的微服务项目的部署方法之后,基于相同的发明构思,下面对本申请实施例提供的微服务项目的部署装置进行详细说明:
参阅图7所示,一种微服务项目的部署装置,包括:
上传模块701,用于客户端将需要部署的微服务项目中的微服务的部署文件上传到服务器,并基于服务器返回的微服务对应的存储地址标识,建立存储地址标识和微服务的绑定关系,其中,存储地址标识用于表征对应的微服务的部署文件在服务器中的存储位置,部署文件包括代码压缩包、配置参数和前端服务代码中的部分或全部;
更新模块702,用于客户端通过前端显示界面接收到针对微服务的部署请求后,基于部署请求对存储的部署文件进行更新,并基于绑定关系确定微服务对应的存储地址标识,以及通过前端显示界面中的部署接口将更新后的部署文件和存储地址标识上传给服务器,以使服务器基于存储地址标识和更新后的部署文件完成对微服务的部署,其中,前端显示界面是服务器基于前端服务代码生成的。
参阅图8所示,另一种微服务项目的部署装置,包括:
接收模块801,用于服务器接收客户端发送的需要部署的微服务项目中的微服务的部署文件,将部署文件存储在数据库中,基于部署文件在数据库中的存储位置生成微服务对应的存储地址标识,并将存储地址标识发送给客户端,其中部署文件包括代码压缩包、配置参数和前端服务代码中的部分或全部;
部署模块802,用于服务器接收客户端通过部署接口上传的更新后的部署文件和存储地址标识,并基于更新后的部署文件和存储地址标识部署微服务;
界面生成模块803,用于基于前端服务代码生成前端显示界面,将部署完成的微服务嵌入到前端显示界面中,并将前端显示界面发送给客户端进行显示。
在介绍了本申请实施例提供的微服务项目的部署装置之后,基于相同的发明构思,下面对本申请实施例提供的一种客户端进行详细说明:
参阅图9所示,一种客户端包括存储器901和控制器902,具体的:
存储器901,用于存储可被控制器902执行的计算机程序。
控制器902与存储器连接,被配置为执行:
客户端将需要部署的微服务项目中的微服务的部署文件上传到服务器,并基于服务器返回的微服务对应的存储地址标识,建立存储地址标识和微服务的绑定关系,其中,存储地址标识用于表征对应的微服务的部署文件在服务器中的存储位置,部署文件包括代码压缩包、配置参数和前端服务代码中的部分或全部;
客户端通过前端显示界面接收到针对微服务的部署请求后,基于部署请求对存储的部署文件进行更新,并基于绑定关系确定微服务对应的存储地址标识,以及通过前端显示界面中的部署接口将更新后的部署文件和存储地址标识上传给服务器,以使服务器基于存储地址标识和更新后的部署文件完成对微服务的部署,其中,前端显示界面是服务器基于前端服务代码生成的。
在一些可能的实施例中,控制器902执行客户端通过前端显示界面接收到针对微服务的部署请求之前,控制器902还被配置为执行:
客户端判定与前端服务代码对应的前端显示界面不存在时,向服务器发送界面创建请求,以使服务器基于前端服务代码生成前端显示界面,并将前端显示界面返回给客户端进行显示;和/或
客户端判定前端显示界面中是否存在部署接口,并在判定前端显示界面中不存在部署接口时,向服务器发送接口创建请求,以使服务器基于前端服务代码在前端显示界面中生成部署接口,并将包含有部署接口的前端显示界面返回给客户端进行显示。
在一些可能的实施例中,控制器902执行客户端通过前端显示界面接收到针对微服务的部署请求后,基于部署请求对存储的部署文件进行更新,并基于绑定关系确定微服务对应的存储地址标识,以及通过前端显示界面中的部署接口将更新后的部署文件和存储地址标识上传给服务器,以使服务器基于存储地址标识和更新后的部署文件完成对微服务的部署,包括:
客户端通过前端显示界面接收到针对微服务的部署请求后,在本地数据库中查找与部署请求对应的部署文件,并基于部署请求对本地数据库中存储的部署文件进行更新,得到更新后的部署文件;
客户端基于绑定关系查找与部署请求对应的微服务和微服务对应的存储地址标识,客户端通过前端显示界面中的部署接口将更新后的部署文件和存储地址标识上传给服务器;
客户端在接收到针对微服务的启动触发时,触发服务器基于存储地址标识确定微服务,并基于更新后的部署文件完成对微服务的部署。
在一些可能的实施例中,控制器902还被配置为执行:
客户端判断部署请求对应的前端显示界面是否有更新;
若是,则客户端获取与部署请求对应的新的前端服务代码,客户端通过前端显示界面中的部署接口将新的前端服务代码上传给服务器;
客户端在接收到针对微服务的界面启动触发时,触发服务器编译新的前端服务代码,并触发服务器基于新的前端服务代码生成微服务对应的新的前端显示界面,以及触发服务器将新的前端显示界面发送给客户端进行显示。
在介绍了本申请实施例提供的一种客户端之后,基于相同的发明构思,下面对本申请实施例提供的一种服务器进行详细说明:
参阅图10所示,一种服务器包括存储器1001和控制器1002,具体的:
存储器1001,用于存储可被控制器1002执行的计算机程序。
控制器1002与存储器连接,被配置为执行:
服务器接收客户端发送的需要部署的微服务项目中的微服务的部署文件,将部署文件存储在数据库中,基于部署文件在数据库中的存储位置生成微服务对应的存储地址标识,并将存储地址标识发送给客户端,其中部署文件包括代码压缩包、配置参数和前端服务代码中的部分或全部;
服务器接收客户端通过部署接口上传的更新后的部署文件和存储地址标识,并基于更新后的部署文件和存储地址标识部署微服务;
基于前端服务代码生成前端显示界面,将部署完成的微服务嵌入到前端显示界面中,并将前端显示界面发送给客户端进行显示。
在一些可能的实施例中,控制器1002执行服务器接收客户端通过部署接口上传的更新后的部署文件和存储地址标识,并基于更新后的部署文件和存储地址标识部署微服务之后,控制器1002还被配置为执行:
针对微服务项目中部署完成的各个微服务:服务器判定各个微服务之间的依赖关系,并基于依赖关系,确定各个微服务在微服务项目中的执行顺序。
综上所述,本申请实施例中,一种微服务项目的部署方法、装置及存储介质,该方法为:客户端将需要部署的微服务项目中的微服务的部署文件上传到服务器,并基于服务器返回的微服务对应的存储地址标识,建立存储地址标识和微服务的绑定关系,客户端通过前端显示界面接收到针对微服务的部署请求后,基于部署请求对存储的部署文件进行更新,并基于绑定关系确定微服务对应的存储地址标识,以及通过前端显示界面中的部署接口将更新后的部署文件和存储地址标识上传给服务器,以使服务器基于存储地址标识和更新后的部署文件完成对微服务的部署,从而避免远程到服务器上配置,简化了微服务的部署步骤和部署时间,实现了对微服务的可视化管理。
应当注意,尽管在上文详细描述中提及了装置的若干单元或子单元,但是这种划分仅仅是示例性的并非强制性的。实际上,根据本申请的实施方式,上文描述的两个或更多单元的特征和功能可以在一个单元中具体化。反之,上文描述的一个单元的特征和功能可以进一步划分为由多个单元来具体化。
此外,尽管在附图中以特定顺序描述了本申请方法的操作,但是,这并非要求或者暗示必须按照该特定顺序来执行这些操作,或是必须执行全部所示的操作才能实现期望的结果。附加地或备选地,可以省略某些步骤,将多个步骤合并为一个步骤执行,和/或将一个步骤分解为多个步骤执行。
本领域内的技术人员应明白,本申请的实施例可提供为方法、***、或计算机程序产品。因此,本申请可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本申请可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本申请是参照根据本申请的方法、设备(***)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
显然,本领域的技术人员可以对本申请进行各种改动和变型而不脱离本申请的精神和范围。这样,倘若本申请的这些修改和变型属于本申请权利要求及其等同技术的范围之内,则本申请也意图包含这些改动和变型在内。
Claims (10)
1.一种微服务项目的部署方法,其特征在于,该方法包括:
客户端将需要部署的微服务项目中的微服务的部署文件上传到服务器,并基于所述服务器返回的所述微服务对应的存储地址标识,建立存储地址标识和微服务的绑定关系,其中,所述存储地址标识用于表征对应的微服务的部署文件在服务器中的存储位置,所述部署文件包括代码压缩包、配置参数和前端服务代码中的部分或全部;
所述客户端通过前端显示界面接收到针对所述微服务的部署请求后,基于所述部署请求对存储的所述部署文件进行更新,并基于所述绑定关系确定所述微服务对应的存储地址标识,以及通过所述前端显示界面中的部署接口将所述更新后的部署文件和所述存储地址标识上传给服务器,以使所述服务器基于所述存储地址标识和所述更新后的部署文件完成对所述微服务的部署,其中,所述前端显示界面是所述服务器基于所述前端服务代码生成的。
2.如权利要求1所述的方法,其特征在于,所述客户端通过前端显示界面接收到针对所述微服务的部署请求之前,还包括:
所述客户端判定与所述前端服务代码对应的所述前端显示界面不存在时,向所述服务器发送界面创建请求,以使所述服务器基于所述前端服务代码生成所述前端显示界面,并将所述前端显示界面返回给所述客户端进行显示;和/或
所述客户端判定所述前端显示界面中是否存在部署接口,并在判定所述前端显示界面中不存在所述部署接口时,向所述服务器发送接口创建请求,以使所述服务器基于所述前端服务代码在所述前端显示界面中生成所述部署接口,并将包含有所述部署接口的所述前端显示界面返回给所述客户端进行显示。
3.如权利要求1所述的方法,其特征在于,所述客户端通过前端显示界面接收到针对所述微服务的部署请求后,基于所述部署请求对存储的所述部署文件进行更新,并基于所述绑定关系确定所述微服务对应的存储地址标识,以及通过所述前端显示界面中的部署接口将所述更新后的部署文件和所述存储地址标识上传给服务器,以使所述服务器基于所述存储地址标识和所述更新后的部署文件完成对所述微服务的部署,包括:
所述客户端通过所述前端显示界面接收到针对所述微服务的部署请求后,在本地数据库中查找与所述部署请求对应的所述部署文件,并基于所述部署请求对本地数据库中存储的所述部署文件进行更新,得到更新后的部署文件;
所述客户端基于所述绑定关系查找与所述部署请求对应的所述微服务和所述微服务对应的所述存储地址标识,所述客户端通过所述前端显示界面中的部署接口将所述更新后的部署文件和所述存储地址标识上传给所述服务器;
所述客户端在接收到针对微服务的启动触发时,触发所述服务器基于所述存储地址标识确定所述微服务,并基于所述更新后的部署文件完成对所述微服务的部署。
4.如权利要求3所述的方法,其特征在于,所述方法还包括:
所述客户端判断所述部署请求对应的所述前端显示界面是否有更新;
若是,则所述客户端获取与所述部署请求对应的新的前端服务代码,所述客户端通过所述前端显示界面中的部署接口将所述新的前端服务代码上传给所述服务器;
所述客户端在接收到针对微服务的界面启动触发时,触发所述服务器编译所述新的前端服务代码,并触发所述服务器基于所述新的前端服务代码生成所述微服务对应的新的前端显示界面,以及触发所述服务器将所述新的前端显示界面发送给所述客户端进行显示。
5.一种微服务项目的部署方法,其特征在于,该方法包括:
服务器接收客户端发送的需要部署的微服务项目中的微服务的部署文件,将所述部署文件存储在数据库中,基于所述部署文件在所述数据库中的存储位置生成所述微服务对应的存储地址标识,并将所述存储地址标识发送给所述客户端,其中所述部署文件包括代码压缩包、配置参数和前端服务代码中的部分或全部;
所述服务器接收所述客户端通过所述部署接口上传的更新后的部署文件和所述存储地址标识,并基于所述更新后的部署文件和所述存储地址标识部署所述微服务;
基于所述前端服务代码生成前端显示界面,将部署完成的所述微服务嵌入到所述前端显示界面中,并将所述前端显示界面发送给所述客户端进行显示。
6.如权利要求5所述的方法,其特征在于,所述服务器接收所述客户端通过所述部署接口上传的更新后的部署文件和所述存储地址标识,并基于所述更新后的部署文件和所述存储地址标识部署所述微服务之后,还包括:
针对微服务项目中部署完成的各个微服务:所述服务器判定所述各个微服务之间的依赖关系,并基于所述依赖关系,确定所述各个微服务在所述微服务项目中的执行顺序。
7.一种微服务项目的部署装置,其特征在于,包括:
上传模块,用于客户端将需要部署的微服务项目中的微服务的部署文件上传到服务器,并基于所述服务器返回的所述微服务对应的存储地址标识,建立存储地址标识和微服务的绑定关系,其中,所述存储地址标识用于表征对应的微服务的部署文件在服务器中的存储位置,所述部署文件包括代码压缩包、配置参数和前端服务代码中的部分或全部;
更新模块,用于所述客户端通过前端显示界面接收到针对所述微服务的部署请求后,基于所述部署请求对存储的所述部署文件进行更新,并基于所述绑定关系确定所述微服务对应的存储地址标识,以及通过所述前端显示界面中的部署接口将所述更新后的部署文件和所述存储地址标识上传给服务器,以使所述服务器基于所述存储地址标识和所述更新后的部署文件完成对所述微服务的部署,其中,所述前端显示界面是所述服务器基于所述前端服务代码生成的。
8.一种微服务项目的部署装置,其特征在于,包括:
接收模块,用于服务器接收客户端发送的需要部署的微服务项目中的微服务的部署文件,将所述部署文件存储在数据库中,基于所述部署文件在所述数据库中的存储位置生成所述微服务对应的存储地址标识,并将所述存储地址标识发送给所述客户端,其中所述部署文件包括代码压缩包、配置参数和前端服务代码中的部分或全部;
部署模块,用于所述服务器接收所述客户端通过所述部署接口上传的更新后的部署文件和所述存储地址标识,并基于所述更新后的部署文件和所述存储地址标识部署所述微服务;
界面生成模块,用于基于所述前端服务代码生成前端显示界面,将部署完成的所述微服务嵌入到所述前端显示界面中,并将所述前端显示界面发送给所述客户端进行显示。
9.一种客户端,其特征在于,包括:
存储器,用于存储可被控制器执行的计算机程序;
控制器与所述存储器连接,被配置为执行如权利要求1-4任一项所述的方法。
10.一种服务器,其特征在于,包括:
存储器,用于存储可被控制器执行的计算机程序;
控制器与所述存储器连接,被配置为执行如权利要求5-6任一项所述的方法。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111085919.1A CN115826994A (zh) | 2021-09-16 | 2021-09-16 | 一种微服务项目的部署方法、装置及存储介质 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202111085919.1A CN115826994A (zh) | 2021-09-16 | 2021-09-16 | 一种微服务项目的部署方法、装置及存储介质 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN115826994A true CN115826994A (zh) | 2023-03-21 |
Family
ID=85515747
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202111085919.1A Pending CN115826994A (zh) | 2021-09-16 | 2021-09-16 | 一种微服务项目的部署方法、装置及存储介质 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN115826994A (zh) |
-
2021
- 2021-09-16 CN CN202111085919.1A patent/CN115826994A/zh active Pending
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110865837B (zh) | 一种进行***升级的方法和终端 | |
CN114339332B (zh) | 一种移动终端、显示设备及跨网投屏方法 | |
CN114125028A (zh) | 微应用的运行方法、装置、设备、存储介质及程序产品 | |
CN111857531A (zh) | 移动终端及其文件显示方法 | |
CN111246299A (zh) | 通信终端以及应用管理方法 | |
CN114020379B (zh) | 一种终端设备、信息反馈方法和存储介质 | |
CN111506237A (zh) | 终端及应用中操作功能启动方法 | |
CN113709026B (zh) | 即时通信消息的处理方法、设备、存储介质和程序产品 | |
CN111158735B (zh) | 一种热补丁文件处理方法及通信终端 | |
CN113835928A (zh) | 应用的备份和恢复方法、设备、存储介质和程序产品 | |
US11991040B2 (en) | Network configuration method and device | |
CN113254132B (zh) | 一种应用显示方法及相关装置 | |
CN113055585A (zh) | 拍摄界面的缩略图显示方法及移动终端 | |
CN115314427A (zh) | 一种协议测试方法、电子设备及芯片*** | |
CN115826994A (zh) | 一种微服务项目的部署方法、装置及存储介质 | |
CN114595203A (zh) | 基于双***的文件同步方法、终端设备及存储介质 | |
CN114979533A (zh) | 一种视频录制方法、装置及终端 | |
CN114675786A (zh) | 一种大容量存储挂载方法、装置、终端及介质 | |
CN113253905A (zh) | 基于多指操作的触控方法及智能终端 | |
CN112000411A (zh) | 移动终端及其录音通道占用信息的显示方法 | |
CN114896009B (zh) | 一种终端设备、服务器、主题推荐方法和存储介质 | |
CN112929858B (zh) | 一种门禁卡的模拟方法和终端 | |
CN114661310A (zh) | 基于双***的应用安装方法、终端设备及存储介质 | |
CN112925545A (zh) | 移动终端及其应用更新方法 | |
CN114528125A (zh) | 保留应用数据的方法和终端设备 |
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 |