CN113778499A - 发布服务的方法、装置、设备和计算机可读介质 - Google Patents

发布服务的方法、装置、设备和计算机可读介质 Download PDF

Info

Publication number
CN113778499A
CN113778499A CN202010849700.3A CN202010849700A CN113778499A CN 113778499 A CN113778499 A CN 113778499A CN 202010849700 A CN202010849700 A CN 202010849700A CN 113778499 A CN113778499 A CN 113778499A
Authority
CN
China
Prior art keywords
protocol
file
operation support
service
tenant
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
CN202010849700.3A
Other languages
English (en)
Other versions
CN113778499B (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.)
Beijing Jingdong Zhenshi Information Technology Co Ltd
Original Assignee
Beijing Jingdong Zhenshi Information Technology 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 Beijing Jingdong Zhenshi Information Technology Co Ltd filed Critical Beijing Jingdong Zhenshi Information Technology Co Ltd
Priority to CN202010849700.3A priority Critical patent/CN113778499B/zh
Publication of CN113778499A publication Critical patent/CN113778499A/zh
Application granted granted Critical
Publication of CN113778499B publication Critical patent/CN113778499B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F8/00Arrangements for software engineering
    • G06F8/70Software maintenance or management

Abstract

本发明公开了发布服务的方法、装置、设备和计算机可读介质,涉及计算机技术领域。该方法的一具体实施方式包括:加载元数据DSL文件,所述元数据DSL文件包括操作和操作支持协议;按照所述操作支持协议类型,生成发布文件;根据所述操作支持协议类型和租户编号,生成协议标识;依据所述协议标识和所述发布文件,发布所述元数据DSL文件中操作对应的服务。该实施方式能够提高发布服务的速度。

Description

发布服务的方法、装置、设备和计算机可读介质
技术领域
本发明涉及计算机技术领域,尤其涉及一种发布服务的方法、装置、设备和计算机可读介质。
背景技术
服务提供方注册服务,以服务接口的形式提供服务实现类,便于服务消费方查阅并调用服务。上述注册服务的过程即发布服务。
传统开发模式下,会针对服务发布构建单独的协议层,协议层的主要目是协议适配、报文校验和数据转换等。
在实现本发明过程中,发明人发现现有技术中至少存在如下问题:需要调整业务层逻辑以发布服务,上述过程涉及较多的代码修改、打包和上线,上线过程复杂,进而导致发布服务的速度较慢。
发明内容
有鉴于此,本发明实施例提供一种发布服务的方法、装置、设备和计算机可读介质,能够提高发布服务的速度。
为实现上述目的,根据本发明实施例的一个方面,提供了一种发布服务的方法,包括:
加载元数据DSL文件,所述元数据DSL文件包括操作和操作支持协议;
按照所述操作支持协议类型,生成发布文件;
根据所述操作支持协议类型和租户编号,生成协议标识;
依据所述协议标识和所述发布文件,发布所述元数据DSL文件中操作对应的服务。
所述操作支持协议类型属于强类型协议;
所述按照所述操作支持协议类型,生成发布文件,包括:
获取所述元数据DSL文件的数据信息,生成包括JAVA实体类和接口类的文件;
上传所述包括JAVA实体类和接口类的文件,并将所述包括JAVA实体类和接口类的文件作为所述发布文件。
所述根据所述操作支持协议类型和和租户编号,生成协议标识,包括:
确定所述操作支持协议类型属于安全协议,则获取安全证书;
在获取安全证书后,根据所述操作支持协议类型和租户编号,生成协议标识。
所述根据所述操作支持协议类型和和租户编号,生成协议标识,包括:
确定所述操作支持协议类型不属于安全协议,则根据所述操作支持协议类型和和租户编号,生成协议标识。
所述方法还包括:
解析接收到的服务报文,得到实体全名;
执行所述实体全名中的实体操作,获得所述实体操作的返回值;
封装所述返回值,并发送包括封装后返回值的反馈报文。
所述解析接收到的服务报文,得到实体全名,包括:
解析所述服务报文中的协议标识,获取租户编号;
依据所述租户编号获取租户证书和系统私钥,以及根据所述租户编号获取租户服务配置信息;
根据所述租户证书、所述系统私钥和所述租户服务配置信息,解析接收到的服务报文,得到实体全名。
所述方法还包括:
按照所述操作支持协议,将所述租户分为多个分组,每个分组包括一个或多个租户。
根据本发明实施例的第二方面,提供了一种发布服务的装置,包括:
加载模块,用于加载元数据DSL文件,所述元数据DSL文件包括操作和操作支持协议;
文件模块,用于按照所述操作支持协议类型,生成发布文件;
标识模块,用于根据所述操作支持协议类型和租户编号,生成协议标识;
发布模块,用于依据所述协议标识和所述发布文件,发布所述元数据DSL文件中操作对应的服务。
根据本发明实施例的第三方面,提供了一种发布服务的电子设备,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如上述的方法。
根据本发明实施例的第四方面,提供了一种计算机可读介质,其上存储有计算机程序,所述程序被处理器执行时实现如上述的方法。
上述发明中的一个实施例具有如下优点或有益效果:加载元数据DSL文件,元数据DSL文件包括操作和操作支持协议;按照操作支持协议类型,生成发布文件;根据操作支持协议类型和租户编号,生成协议标识;依据协议标识和发布文件,发布元数据DSL文件中操作对应的服务。可以基于元数据DSL文件发布服务,并不涉及代码修改等问题,上线过程简单,因此能够提高发布服务的速度。
上述的非惯用的可选方式所具有的进一步效果将在下文中结合具体实施方式加以说明。
附图说明
附图用于更好地理解本发明,不构成对本发明的不当限定。其中:
图1是根据本发明实施例的发布服务的方法的主要流程的示意图;
图2是根据本发明实施例的生成发布文件的流程示意图;
图3是根据本发明实施例的生成协议标识的流程示意图;
图4是根据本发明实施例的提供服务的流程示意图;
图5是根据本发明实施例的解析接收到的服务报文的流程示意图;
图6是已有的集群部署示意图;
图7是根据本发明实施例的提供服务的系统架构图;
图8是根据本发明实施例的集群部署示意图;
图9是根据本发明实施例的发布服务的装置的主要结构的示意图;
图10是本发明实施例可以应用于其中的示例性系统架构图;
图11是适于用来实现本发明实施例的终端设备或服务器的计算机系统的结构示意图。
具体实施方式
以下结合附图对本发明的示范性实施例做出说明,其中包括本发明实施例的各种细节以助于理解,应当将它们认为仅仅是示范性的。因此,本领域普通技术人员应当认识到,可以对这里描述的实施例做出各种改变和修改,而不会背离本发明的范围和精神。同样,为了清楚和简明,以下的描述中省略了对公知功能和结构的描述。
由于服务协议的多样性,各种各样的统一服务发布、调用平台应运而生,帮助开发人员在服务协议调用方面带来了极大的便利性。商业模式和开发模式的转变发现统一服务调用平台的弊端。
调整业务层逻辑并发布服务,涉及较多的代码修改、打包和上线,上线过程复杂,进而导致发布服务的速度较慢。
为了解决发布服务的速度较慢,可以采用以下本发明实施例中的技术方案。
参见图1,图1是根据本发明实施例的发布服务的方法主要流程的示意图,加载元数据DSL文件,以生成发布文件和协议标识,进而发布元数据DSL文件对应的服务。如图1所示,具体包括以下步骤:
S101、加载元数据DSL文件,元数据DSL文件包括操作和操作支持协议。
基于元数据驱动的低代码或零代码快速开发平台,即元数据平台是软件行业的一个全新的开发模式。
常见元数据平台核心思想都是通过领域专用语言(Domain Specifi edLanguage,DSL)来描述接口、实体及其属性、行为、关系,并为实体提供服务能力。通常元数据平台提供完整的前后端一体化解决方案,前后端之间通信多采用Http协议或自定义协议。
加载元数据DSL文件,其中,元数据DSL文件包括操作和操作支持协议。操作是发布服务的目的。作为一个示例,操作是存储,则发布服务的目的在于存储数据。
操作支持协议是实现操作所对应的协议。作为一个示例,操作支持协议包括以下协议中的一种或多种,JSF协议、JMQ协议、HTTP协议、SOAP协议和AS2协议。
可以理解的是,加载的协议越多,则该服务应用的协议越多,兼容性越好。
由于在传统开发模式下可以采用统一服务框架来解决,但是快速开发平台由于元数据模型、报文都是弱类型的原因,在统一的服务框架下,无法通过类型来确定报文类型,也就无法进行后续的报文解析、业务处理等过程。其中,弱类型是代码中的一种规范,通常指没有指定的类型。如:年龄=13,如果是强类型,13是数字类型;如果是弱类型的话13是文本类型。
由于元数据DSL文件中包括多种操作支持协议,进而就可以通过协议类型确定报文类型,进而继续后续的报文解析和业务处理等过程,极大的解决多协议兼容性问题,提高报文的适配性。
在本发明实施例中,可以理解的是,预先配置元数据DSL文件,然后再加载元数据DSL文件。
作为一个示例,预设元数据DSL文件为jd.test的组件。jd.test的组件包含一个名为user123的实体,该实体包含id、name、age三个属性;包含存储,存储支持JSF协议、JMQ协议、HTTP协议、SOAP协议和AS2协议。
其中,元数据DSL文件的服务是存储;操作支持协议包括:JSF协议、JMQ协议、HTTP协议、SOAP协议和AS2协议。
在本发明的一个实施例中,在元数据DSL文件中包括多个操作支持协议的情况下,可以按照协议类型逐一发布服务。
作为一个示例,在元数据DSL文件中包括三个操作支持协议,分别为协议1、协议2和协议3。可以先按照协议1发布服务,然后按照协议2发布服务,最后按照协议3发布服务。
S102、按照操作支持协议类型,生成发布文件。
发布元数据DSL文件中操作对应的服务,需要包括发布文件和协议标识。在本发明实施例中,可以按照操作支持协议类型,生成发布文件。
在本发明实施例中,协议类型可以分为强类型协议和弱类型协议,那么可以按照协议类型生成发布文件。协议类型是强类型协议的情况下,可以采用图2中的方案生成发布文件。
参见图2,图2是根据本发明实施例的生成发布文件的流程示意图,适用于强类型协议,具体包括:
S201、获取元数据DSL文件的数据信息,生成包括JAVA实体类和接口类的文件。
根据当前协议类型,判断当前协议属于强类型协议,则需要生成相关文件。其中,强类型指的是程序中表达的任何对象所从属的类型都必须能在编译时刻确定。强类型协议是指强类型对应的协议。作为一个示例,强类型协议包括JSF协议。
获取元数据DSL文件的数据信息,生成JAVA实体类。在JAVA中,JAVA实体类就是一个拥有Set和Get方法的类。JAVA实体类通常总是和数据库之类的联系在一起。这种联系是借由框架建立的。
作为一个示例,包名:component.package,类名:class.name,成员变量:属性,若DSL定义实现、派生、关联、聚合和组合这些关系,则递归生成相应的JAVA实体类。。
此外,还可以根据元数据DSL文件的数据信息,生成接口类。作为一个示例,包名:component.package,类名:class.name+‘Api’,方法名:operation.name,入参:生成的JAVA实体类,出参:Object。
S202、上传包括JAVA实体类和接口类的文件,并将包括JAVA实体类和接口类的文件作为发布文件。
由于需要向其他系统提供包括JAVA实体类和接口类的文件,则需要将包括JAVA实体类和接口类的文件,上传至指定私服地址。可以理解的是,包括JAVA实体类和接口类的文件是JAVA文件。然后,将包括JAVA实体类和接口类的文件,作为发布文件。
在上传JAVA文件前,可以对比此次上传的JAVA文件与服务器所存储的JAVA文件是否相同。若可此次上传的JAVA文件与服务器所存储的JAVA文件不同,则上传;若可此次上传的JAVA文件与服务器所存储的JAVA文件相同,则拒绝上传。从而避免浪费资源。
在图2的实施例中,利用元数据DSL文件的数据信息,生成发布文件,并上传发布文件。
在本发明实施例中,协议类型是弱类型协议的情况下,可以按照已有技术生成发布文件。
需要说明的是,发布文件是是客户端使用服务所涉及的文件。
S103、根据操作支持协议类型和租户编号,生成协议标识。
发布元数据DSL文件中操作对应的服务,需要协议标识。在本发明实施例中,可以根据操作支持协议类型和租户编号,生成协议标识。
参见图3,图3是根据本发明实施例的生成协议标识的流程示意图,具体包括:
S301、确定操作支持协议类型属于安全协议,则获取安全证书。
操作支持协议类型依据是否属于安全协议,可以分为两种。一种是属于安全协议的操作支持协议类型,另一种是不属于安全协议的操作支持协议类型。
在本发明实施例中,确定操作支持协议类型属于安全协议,则需要获取安全证书,以确保网络安全。
作为一个示例,操作支持协议类型是HTTPS协议或FTPS协议等,可以在租户的证书管理中心查找相应的安全证书。其中,HTTPS协议或FTPS协议是基于安全套接字协议(Secure Sockets Layer,SSL)的安全协议。
在本发明实施例中,租户在注册时,需要填写租户基本配置。租户基本配置包括租户编号(code)。租户服务配置信息包括HTTP服务域名、SOAP的WSDL地址、AS2ID及加解密方案等。而且维护租户的证书管理中心。在租户的证书管理中心中包括:系统私钥和SSL证书等。
S302、在获取安全证书后,根据操作支持协议类型和租户编号,生成协议标识。
在获取安全证书后,意味着网络安全,则可以根据操作支持协议类型和租户编号,生成协议标识。
对于不同的操作支持协议类型按照预设方式,结合租户编号,生成协议标识。
作为一个示例,对于HTTP相关协议,可以按照统一资源定位符(U niformResource Locator,url)生成协议标识。
其中,HTTP相关协议包括但不限于:HTTP协议、HTTPS协议、S OAP协议和AS2协议。
协议标识为:http://[host]:[ip]/租户code/方法名/实体名。作为一个示例,沿用上述实施例中的jd.test的组件。url是https//meta.aa.com/,租户code是jd,则协议标识为:https//meta.aa.com/jd/save/jd.test.user123。
对于JSF协议,将别名作为协议标识,别名=租户code+component.version,如:jd_0.0.1。
对于JMQ协议,将topic作为协议标识,topic=租户code+compone nt.version+class.name+operation.name,如:jd_0.0.1_jd.test.user123_sav e。
在图3的实施例中,为了确保网络安全,对于属于安全协议的操作支持协议类型,在获取安全证书后,再生成协议标识。
在本发明的一个实施例中,对于不属于安全协议的操作支持协议类型,无需获取安全证书。确定操作支持协议类型不属于安全协议后,则根据操作支持协议类型和和租户编号,生成协议标识。具体可以参见S302。
需要说明的是,S102与S103并没有执行的先后顺序。即S102与S103可以以任意顺序执行。
S104、依据协议标识和发布文件,发布元数据DSL文件中操作对应的服务。
生成发布文件和协议标识后,就可以依据协议标识和发布文件,发布元数据DSL文件中操作对应的服务。
发布元数据DSL文件中操作对应的服务之后,就可以接到客户端发送的服务报文。客户端发送服务报文的目的在于:使用发布的服务,得到服务的返回值。
参见图4,图4是根据本发明实施例的提供服务的流程示意图,具体包括:
S401、解析接收到的服务报文,得到实体全名。
服务端接收到服务报文。可以理解的是,在服务端发布服务,进而服务端可以接收客户端向服务端发送的服务报文。
参见图5,图5是根据本发明实施例的解析接收到的服务报文的流程示意图,具体包括:
S501、解析服务报文中的协议标识,获取租户编号。
获取服务报文中的协议标识,得到租户编号和操作支持协议类型。然后,确定操作支持协议类型属于安全协议。
作为一个示例,对于HTTP协议通过url解析协议报文,获取租户编号;对于JSF协议,通过别名解析报文,获取租户编号;对于JMQ协议通过topic解析报文,获取租户编号。
S502、依据租户编号获取租户证书和系统私钥,以及根据租户编号获取租户服务配置信息。
若确定操作支持协议类型属于安全协议,则根据租户编号获取租户证书和系统私钥,以及根据租户编号获取租户服务配置信息。
S503、根据租户证书、系统私钥和租户服务配置信息,解析接收到的服务报文,得到实体全名。
根据租户证书、系统私钥和租户服务配置信息,解析协议报文,可以得到实体全名。
在图5的实施例中,在确定操作支持协议类型属于安全协议的情况下,解析接收到的服务报文,得到实体全名。
在本发明的一个实施例中,若确定操作支持协议类型不属于安全协议,则根据租户编号获取租户服务配置信息。最后,根据租户服务配置信息,解析协议报文,得到实体全名。
S402、执行实体全名中的实体操作,获得实体操作的返回值。
为了提高实体操作的效率,可以序列化并执行实体全名中的实体操作,获得实体操作的返回值。
S403、封装返回值,并发送包括封装后返回值的反馈报文。
协议封装返回值后,并向客户端发送反馈报文,反馈报文中包括封装后返回值。
在图4的实施例中,服务端可以接收客户端发送的服务报文,并通过反馈报文向客户端返回值,进而为客户端提供服务。
在本发明的一个实施例中,为了有针对性的向不同的客户提供差异性服务,可以按照操作支持协议,将租户分为多个分组,每个分组包括一个或多个租户。
作为一个示例,操作支持协议包括协议1和协议2。将采用协议1的租户作为第一组,将采用协议2的租户作为第二组。为第一组中的租户提供优质服务器;对第二组中的租户提供一般服务器。
参见图6,图6是已有的集群部署示意图。图6中,包括三个服务实例。对于每个服务实例而言,均包括元数据服务协议发布、元数据服务和加载元数据模型三部分。在现有部署架构下,集中管理、集中发布,无法按租户、按级别部署。
参见图7,图7是根据本发明实施例的提供服务的系统架构图。通过统一的元数据服务发布管理中心发布服务。元数据服务发布管理中心发布服务,负责集群的部署形式,差异化部署。
各集群、各分组、各实例、各实体,通过元数据服务发布管理中心,使用相应的协议路由单独进行服务发布。其中,协议路由包括JSF服务路由、HTTP服务路由和JMQ服务路由。上述三个协议路由分别负责对应协议的路由。
示例性地,JSF路由通过别名寻址。JMQ通过Topic寻址。HTTP相关协议通过nginx动态路由,实现HTTP服务路由。作为一个示例,管理中心有租户在各集群部署的情况,通过解析url地址,能获取到租户编码,Nginx动态路由会把报文路由到相应的服务实例。
参见图8,图8是根据本发明实施例的集群部署示意图,图8中将租户分为两组。一组对应优质服务器,另一组对应一般服务器。优质服务器提供给优质租户,一般服务器提供给普通租户。而且,对于优质租户而言,可以预设不同数量的实体。进而实现差异资源部署。
参见图9,图9是根据本发明实施例的发布服务的装置的主要结构的示意图,发布服务的装置可以实现发布服务的方法,如图9所示,发布服务的装置具体包括:
加载模块901,用于加载元数据DSL文件,所述元数据DSL文件包括操作和操作支持协议。
文件模块902,用于按照所述操作支持协议类型,生成发布文件。
标识模块903,用于根据所述操作支持协议类型和租户编号,生成协议标识。
发布模块904,用于依据所述协议标识和所述发布文件,发布所述元数据DSL文件中操作对应的服务。
在本发明的一个实施例中,所述操作支持协议类型属于强类型协议;
文件模块902,具体用于获取所述元数据DSL文件的数据信息,生成包括JAVA实体类和接口类的文件;
上传所述包括JAVA实体类和接口类的文件,并将所述包括JAVA实体类和接口类的文件作为所述发布文件。
在本发明的一个实施例中,标识模块903,具体用于确定所述操作支持协议类型属于安全协议,则获取安全证书;
在获取安全证书后,根据所述操作支持协议类型和租户编号,生成协议标识。
在本发明的一个实施例中,标识模块903,具体用于确定所述操作支持协议类型不属于安全协议,则根据所述操作支持协议类型和和租户编号,生成协议标识。
在本发明的一个实施例中,加载模块901,还用于解析接收到的服务报文,得到实体全名;
执行所述实体全名中的实体操作,获得所述实体操作的返回值;
封装所述返回值,并发送包括封装后返回值的反馈报文。
在本发明的一个实施例中,加载模块901,具体用于解析所述服务报文中的协议标识,获取租户编号;
依据所述租户编号获取租户证书和系统私钥,以及根据所述租户编号获取租户服务配置信息;
根据所述租户证书、所述系统私钥和所述租户服务配置信息,解析接收到的服务报文,得到实体全名。
在本发明的一个实施例中,加载模块901,还用于按照所述操作支持协议,将所述租户分为多个分组,每个分组包括一个或多个租户。
图10示出了可以应用本发明实施例的发布服务的方法或发布服务的装置的示例性系统架构1000。
如图10所示,系统架构1000可以包括终端设备1001、1002、1003,网络1004和服务器1005。网络1004用以在终端设备1001、1002、1003和服务器1005之间提供通信链路的介质。网络1004可以包括各种连接类型,例如有线、无线通信链路或者光纤电缆等等。
用户可以使用终端设备1001、1002、1003通过网络1004与服务器1005交互,以接收或发送消息等。终端设备1001、1002、1003上可以安装有各种通讯客户端应用,例如购物类应用、网页浏览器应用、搜索类应用、即时通信工具、邮箱客户端、社交平台软件等(仅为示例)。
终端设备1001、1002、1003可以是具有显示屏并且支持网页浏览的各种电子设备,包括但不限于智能手机、平板电脑、膝上型便携计算机和台式计算机等等。
服务器1005可以是提供各种服务的服务器,例如对用户利用终端设备1001、1002、1003所浏览的购物类网站提供支持的后台管理服务器(仅为示例)。后台管理服务器可以对接收到的产品信息查询请求等数据进行分析等处理,并将处理结果(例如目标推送信息、产品信息--仅为示例)反馈给终端设备。
需要说明的是,本发明实施例所提供的发布服务的方法一般由服务器1005执行,相应地,发布服务的装置一般设置于服务器1005中。
应该理解,图10中的终端设备、网络和服务器的数目仅仅是示意性的。根据实现需要,可以具有任意数目的终端设备、网络和服务器。
下面参考图11,其示出了适于用来实现本发明实施例的终端设备的计算机系统1100的结构示意图。图11示出的终端设备仅仅是一个示例,不应对本发明实施例的功能和使用范围带来任何限制。
如图11所示,计算机系统1100包括中央处理单元(CPU)1101,其可以根据存储在只读存储器(ROM)1102中的程序或者从存储部分1108加载到随机访问存储器(RAM)1103中的程序而执行各种适当的动作和处理。在RAM 1103中,还存储有系统1100操作所需的各种程序和数据。CPU 1101、ROM 1102以及RAM 1103通过总线1104彼此相连。输入/输出(I/O)接口1105也连接至总线1104。
以下部件连接至I/O接口1105:包括键盘、鼠标等的输入部分1106;包括诸如阴极射线管(CRT)、液晶显示器(LCD)等以及扬声器等的输出部分1107;包括硬盘等的存储部分1108;以及包括诸如LAN卡、调制解调器等的网络接口卡的通信部分1109。通信部分1109经由诸如因特网的网络执行通信处理。驱动器1110也根据需要连接至I/O接口1105。可拆卸介质1111,诸如磁盘、光盘、磁光盘、半导体存储器等等,根据需要安装在驱动器1110上,以便于从其上读出的计算机程序根据需要被安装入存储部分1108。
特别地,根据本发明公开的实施例,上文参考流程图描述的过程可以被实现为计算机软件程序。例如,本发明公开的实施例包括一种计算机程序产品,其包括承载在计算机可读介质上的计算机程序,该计算机程序包含用于执行流程图所示的方法的程序代码。在这样的实施例中,该计算机程序可以通过通信部分1109从网络上被下载和安装,和/或从可拆卸介质1111被安装。在该计算机程序被中央处理单元(CPU)1101执行时,执行本发明的系统中限定的上述功能。
需要说明的是,本发明所示的计算机可读介质可以是计算机可读信号介质或者计算机可读存储介质或者是上述两者的任意组合。计算机可读存储介质例如可以是——但不限于——电、磁、光、电磁、红外线、或半导体的系统、装置或器件,或者任意以上的组合。计算机可读存储介质的更具体的例子可以包括但不限于:具有一个或多个导线的电连接、便携式计算机磁盘、硬盘、随机访问存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、光纤、便携式紧凑磁盘只读存储器(CD-ROM)、光存储器件、磁存储器件、或者上述的任意合适的组合。在本发明中,计算机可读存储介质可以是任何包含或存储程序的有形介质,该程序可以被指令执行系统、装置或者器件使用或者与其结合使用。而在本发明中,计算机可读的信号介质可以包括在基带中或者作为载波一部分传播的数据信号,其中承载了计算机可读的程序代码。这种传播的数据信号可以采用多种形式,包括但不限于电磁信号、光信号或上述的任意合适的组合。计算机可读的信号介质还可以是计算机可读存储介质以外的任何计算机可读介质,该计算机可读介质可以发送、传播或者传输用于由指令执行系统、装置或者器件使用或者与其结合使用的程序。计算机可读介质上包含的程序代码可以用任何适当的介质传输,包括但不限于:无线、电线、光缆、RF等等,或者上述的任意合适的组合。
附图中的流程图和框图,图示了按照本发明各种实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段、或代码的一部分,上述模块、程序段、或代码的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。也应当注意,在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个接连地表示的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图或流程图中的每个方框、以及框图或流程图中的方框的组合,可以用执行规定的功能或操作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。
描述于本发明实施例中所涉及到的模块可以通过软件的方式实现,也可以通过硬件的方式来实现。所描述的模块也可以设置在处理器中,例如,可以描述为:一种处理器包括发送单元、获取单元、确定单元和第一处理单元。其中,这些单元的名称在某种情况下并不构成对该单元本身的限定,例如,发送单元还可以被描述为“向所连接的服务端发送图片获取请求的单元”。
作为另一方面,本发明还提供了一种计算机可读介质,该计算机可读介质可以是上述实施例中描述的设备中所包含的;也可以是单独存在,而未装配入该设备中。上述计算机可读介质承载有一个或者多个程序,当上述一个或者多个程序被一个该设备执行时,使得该设备包括:
加载元数据DSL文件,所述元数据DSL文件包括操作和操作支持协议;
按照所述操作支持协议类型,生成发布文件;
根据所述操作支持协议类型和租户编号,生成协议标识;
依据所述协议标识和所述发布文件,发布所述元数据DSL文件中操作对应的服务。
根据本发明实施例的技术方案,加载元数据DSL文件,元数据DSL文件包括操作和操作支持协议;按照操作支持协议类型,生成发布文件;根据操作支持协议类型和租户编号,生成协议标识;依据协议标识和发布文件,发布元数据DSL文件中操作对应的服务。可以基于元数据DSL文件发布服务,并不涉及代码修改等问题,上线过程简单,因此能够提高发布服务的速度。
上述具体实施方式,并不构成对本发明保护范围的限制。本领域技术人员应该明白的是,取决于设计要求和其他因素,可以发生各种各样的修改、组合、子组合和替代。任何在本发明的精神和原则之内所作的修改、等同替换和改进等,均应包含在本发明保护范围之内。

Claims (10)

1.一种发布服务的方法,其特征在于,包括:
加载元数据DSL文件,所述元数据DSL文件包括操作和操作支持协议;
按照所述操作支持协议类型,生成发布文件;
根据所述操作支持协议类型和租户编号,生成协议标识;
依据所述协议标识和所述发布文件,发布所述元数据DSL文件中操作对应的服务。
2.根据权利要求1所述发布服务的方法,其特征在于,所述操作支持协议类型属于强类型协议;
所述按照所述操作支持协议类型,生成发布文件,包括:
获取所述元数据DSL文件的数据信息,生成包括JAVA实体类和接口类的文件;
上传所述包括JAVA实体类和接口类的文件,并将所述包括JAVA实体类和接口类的文件作为所述发布文件。
3.根据权利要求1所述发布服务的方法,其特征在于,所述根据所述操作支持协议类型和和租户编号,生成协议标识,包括:
确定所述操作支持协议类型属于安全协议,则获取安全证书;
在获取安全证书后,根据所述操作支持协议类型和租户编号,生成协议标识。
4.根据权利要求1所述发布服务的方法,其特征在于,所述根据所述操作支持协议类型和和租户编号,生成协议标识,包括:
确定所述操作支持协议类型不属于安全协议,则根据所述操作支持协议类型和和租户编号,生成协议标识。
5.根据权利要求1、3或4所述发布服务的方法,其特征在于,所述方法还包括:
解析接收到的服务报文,得到实体全名;
执行所述实体全名中的实体操作,获得所述实体操作的返回值;
封装所述返回值,并发送包括封装后返回值的反馈报文。
6.根据权利要求5所述发布服务的方法,其特征在于,所述解析接收到的服务报文,得到实体全名,包括:
解析所述服务报文中的协议标识,获取租户编号;
依据所述租户编号获取租户证书和系统私钥,以及根据所述租户编号获取租户服务配置信息;
根据所述租户证书、所述系统私钥和所述租户服务配置信息,解析接收到的服务报文,得到实体全名。
7.据权利要求1所述发布服务的方法,其特征在于,所述方法还包括:
按照所述操作支持协议,将所述租户分为多个分组,每个分组包括一个或多个租户。
8.一种发布服务的装置,其特征在于,包括:
加载模块,用于加载元数据DSL文件,所述元数据DSL文件包括操作和操作支持协议;
文件模块,用于按照所述操作支持协议类型,生成发布文件;
标识模块,用于根据所述操作支持协议类型和租户编号,生成协议标识;
发布模块,用于依据所述协议标识和所述发布文件,发布所述元数据DSL文件中操作对应的服务。
9.一种发布服务的电子设备,其特征在于,包括:
一个或多个处理器;
存储装置,用于存储一个或多个程序,
当所述一个或多个程序被所述一个或多个处理器执行,使得所述一个或多个处理器实现如权利要求1-7中任一所述的方法。
10.一种计算机可读介质,其上存储有计算机程序,其特征在于,所述程序被处理器执行时实现如权利要求1-7中任一所述的方法。
CN202010849700.3A 2020-08-21 2020-08-21 发布服务的方法、装置、设备和计算机可读介质 Active CN113778499B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN202010849700.3A CN113778499B (zh) 2020-08-21 2020-08-21 发布服务的方法、装置、设备和计算机可读介质

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN202010849700.3A CN113778499B (zh) 2020-08-21 2020-08-21 发布服务的方法、装置、设备和计算机可读介质

Publications (2)

Publication Number Publication Date
CN113778499A true CN113778499A (zh) 2021-12-10
CN113778499B CN113778499B (zh) 2023-09-26

Family

ID=78835193

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202010849700.3A Active CN113778499B (zh) 2020-08-21 2020-08-21 发布服务的方法、装置、设备和计算机可读介质

Country Status (1)

Country Link
CN (1) CN113778499B (zh)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114640720A (zh) * 2022-03-15 2022-06-17 北京京东乾石科技有限公司 一种服务协议的切换方法和装置
CN115118765A (zh) * 2022-06-20 2022-09-27 北京京东乾石科技有限公司 服务处理的方法、装置、电子设备和存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170163741A1 (en) * 2015-12-07 2017-06-08 Dell Products L.P. Method and system for execution of client-initiated operations on file handles in a distributed server system
CN109104273A (zh) * 2018-07-04 2018-12-28 华为技术有限公司 报文处理方法以及接收端服务器
CN109274731A (zh) * 2018-09-04 2019-01-25 北京京东金融科技控股有限公司 基于多租户技术的web服务的部署、调用方法和装置
CN110677405A (zh) * 2019-09-26 2020-01-10 北京金山云网络技术有限公司 一种数据处理方法、装置、电子设备及存储介质
CN110795147A (zh) * 2018-08-01 2020-02-14 北京京东尚科信息技术有限公司 一种接口协议文件管理方法和装置

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20170163741A1 (en) * 2015-12-07 2017-06-08 Dell Products L.P. Method and system for execution of client-initiated operations on file handles in a distributed server system
CN109104273A (zh) * 2018-07-04 2018-12-28 华为技术有限公司 报文处理方法以及接收端服务器
CN110795147A (zh) * 2018-08-01 2020-02-14 北京京东尚科信息技术有限公司 一种接口协议文件管理方法和装置
CN109274731A (zh) * 2018-09-04 2019-01-25 北京京东金融科技控股有限公司 基于多租户技术的web服务的部署、调用方法和装置
CN110677405A (zh) * 2019-09-26 2020-01-10 北京金山云网络技术有限公司 一种数据处理方法、装置、电子设备及存储介质

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
王文俊, 罗英伟, 刘昕鹏, 张建伟, 付洪军, 汪小林, 许卓群: "Web Services构架下的空间应用集成框架", 计算机辅助设计与图形学学报, no. 05, pages 216 - 224 *

Cited By (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN114640720A (zh) * 2022-03-15 2022-06-17 北京京东乾石科技有限公司 一种服务协议的切换方法和装置
CN115118765A (zh) * 2022-06-20 2022-09-27 北京京东乾石科技有限公司 服务处理的方法、装置、电子设备和存储介质
CN115118765B (zh) * 2022-06-20 2024-04-05 北京京东乾石科技有限公司 服务处理的方法、装置、电子设备和存储介质

Also Published As

Publication number Publication date
CN113778499B (zh) 2023-09-26

Similar Documents

Publication Publication Date Title
US11575735B2 (en) Cloud application-agnostic data loss prevention (DLP)
CN109844727B (zh) 用于管理应用程序配置和相关联凭证的技术
CN109729040B (zh) 协议的选择的方法、设备以及计算机可读介质
US8266630B2 (en) High-performance XML processing in a common event infrastructure
CN111460129B (zh) 标识生成的方法、装置、电子设备和存储介质
CN112860451A (zh) 一种基于SaaS的多租户数据处理方法和装置
CN110795147A (zh) 一种接口协议文件管理方法和装置
CN112202744B (zh) 一种多系统数据通信方法和装置
CN110858202A (zh) 数据库查询语句中where子句的生成方法和生成装置
CN113778499B (zh) 发布服务的方法、装置、设备和计算机可读介质
CN113364795A (zh) 一种数据传输方法和代理服务器
CN112612467A (zh) 一种处理基于qiankun的微前端架构的方法和装置
CN112507005A (zh) 一种处理报文的方法和装置
CN105007319A (zh) 信息发送方法、装置及系统
CN112084042A (zh) 一种消息处理的方法和装置
CN112764726A (zh) 一种数据合成的方法和装置
CN114500481A (zh) 业务请求处理方法、系统和装置
CN111767157A (zh) 基于服务网格的请求处理方法和装置
CN112948138A (zh) 一种处理消息的方法和装置
CN109005250A (zh) 用于访问服务端的方法和装置
CN111786801B (zh) 一种基于数据流量进行计费的方法和装置
CN112929453A (zh) 一种共享session数据的方法和装置
CN112836201A (zh) 多平台信息互通的方法、装置、设备和计算机可读介质
CN112837156A (zh) 固定执行顺序的交易方法和装置
CN113779018A (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
GR01 Patent grant
GR01 Patent grant