CN105872578A - 一种调用方法及服务器 - Google Patents
一种调用方法及服务器 Download PDFInfo
- Publication number
- CN105872578A CN105872578A CN201610195044.3A CN201610195044A CN105872578A CN 105872578 A CN105872578 A CN 105872578A CN 201610195044 A CN201610195044 A CN 201610195044A CN 105872578 A CN105872578 A CN 105872578A
- Authority
- CN
- China
- Prior art keywords
- application
- information
- service
- identification information
- server
- 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
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/20—Servers specifically adapted for the distribution of content, e.g. VOD servers; Operations thereof
- H04N21/23—Processing of content or additional data; Elementary server operations; Server middleware
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/436—Interfacing a local distribution network, e.g. communicating with another STB or one or more peripheral devices inside the home
- H04N21/43615—Interfacing a Home Network, e.g. for connecting the client to a plurality of peripherals
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04N—PICTORIAL COMMUNICATION, e.g. TELEVISION
- H04N21/00—Selective content distribution, e.g. interactive television or video on demand [VOD]
- H04N21/40—Client devices specifically adapted for the reception of or interaction with content, e.g. set-top-box [STB]; Operations thereof
- H04N21/43—Processing of content or additional data, e.g. demultiplexing additional data from a digital video stream; Elementary client operations, e.g. monitoring of home network or synchronising decoder's clock; Client middleware
- H04N21/443—OS processes, e.g. booting an STB, implementing a Java virtual machine in an STB or power management in an STB
Landscapes
- Engineering & Computer Science (AREA)
- Multimedia (AREA)
- Signal Processing (AREA)
- Software Systems (AREA)
- Telephonic Communication Services (AREA)
Abstract
本发明实施例公开了一种调用方法及服务器。本发明实施例中,服务器接收第一应用发送的调用请求消息;调用请求消息中包括待调用的第二应用的标识信息和待调用服务信息;服务器根据第二应用的标识信息,将待调用服务信息发送给第二应用;服务器接收第二应用发送的调用响应消息;调用响应消息中包括第二应用根据待调用服务信息得到的已调用服务信息;服务器将已调用服务信息发送给第一应用。本发明实施例中,通过服务器来完成一个应用对另一个应用中的服务的调用,改变了传统实现方式中复杂的网状结构;且,由服务器负责完成不同应用之间的通信,大大简化了开发难度,降低了后续的维护和调试的难度。
Description
技术领域
本发明涉及通信技术领域,尤其涉及一种调用方法及服务器。
背景技术
随着智能电视技术的不断发展,智能电视产品越来越受到广大用户的认可和使用。由于电视功能的智能化和复杂化,电视平台中的各种应用变得越来越多,因此不同应用之间会存在数据交换或者互相提供服务的现象,例如,一个应用调用另一个应用中的某一服务,或者多个应用调用另一个应用中的某一服务。如图1a和图1b所示,分别为1对1和1对多的调用模型。在图1a中,应用1为调用端,应用2为被调用端,应用1调用应用2中的一个服务;在图1b中,应用1、应用3、应用4均为调用端,应用2为被调用端,应用1、应用3、应用4调用应用2中的一个服务。针对于上述调用方式,现有技术中采用进程间通信(如消息队列、共享内存,或同一台机器上较少使用socket网络通讯方式)来实现。
然而,随着智能化要求的不断增加,各个应用之间的数据交换和服务共享的需求也变得越来越强烈,在这种形势下,各个应用之间不可避免地会存在交叉调用的现象,产生了多对多的系统结构,如图1c所示,为多对多的调用模型。在图1c中,应用1、应用2和应用3互为调用端和被调用端,应用1中的服务1a可以作为调用端,调用应用3中的服务2c;应用1中的服务3a可以作为调用端,调用应用2中的服务1b;应用2中的服务2b可以作为调用端,调用应用3中的服务3c;应用3中的服务1c可以作为调用端,调用应用2中的服务3b。若采用上述进程间通信的方式来实现多对多的调用,则需要每个应用定义多套协议和通信方式,以便于与外部的其它应用进行数据和服务的通信,这就导致系统中出现各种各样的应用间交互方式,产生了代码耦合度高、代码量庞大的问题,且使得维护和调试较为困难。
综上,目前亟需一种调用方法,用以解决现有技术中不同应用间存在多种交互方式,进而使得代码耦合度高、代码量庞大且维护和调试困难的问题。
发明内容
本发明实施例提供一种调用方法及服务器,用以实现解决现有技术中不同应用间存在多种交互方式,进而使得代码耦合度高、代码量庞大且维护和调试困难的问题。
本发明实施例提供一种调用方法,包括:
服务器接收第一应用发送的调用请求消息;所述调用请求消息中包括待调用的第二应用的标识信息和待调用服务信息;
所述服务器根据所述第二应用的标识信息,将所述待调用服务信息发送给所述第二应用;
所述服务器接收所述第二应用发送的调用响应消息;所述调用响应消息中包括所述第二应用根据所述待调用服务信息得到的已调用服务信息;
所述服务器将所述已调用服务信息发送给所述第一应用。
较佳地,所述待调用服务信息包括目标服务的标识信息和输入参数信息;
所述已调用服务信息包括所述目标服务的标识信息和输出结果信息;
所述输出结果信息是所述第二应用根据所述目标服务的标识信息,调用所述目标服务对应的函数对所述输入参数信息进行处理得到的。
较佳地,所述服务器接收第一应用发送的调用请求消息之后,还包括:
所述服务器根据所述第二应用的标识信息和目标服务的标识信息,确定所述第二应用为在线状态,且所述目标服务为可用状态后,将所述待调用服务信息发送给所述第二应用。
较佳地,所述服务器根据所述第二应用的标识信息,确定所述第二应用为在线状态,且所述目标服务可用后,将所述待调用服务信息发送给所述第二应用之前,还包括:
所述服务器接收所述第二应用的注册请求消息;所述注册请求消息中包括所述第二应用的标识信息和所述第二应用中的各个服务的标识信息;
所述服务器根据所述第二应用的标识信息和所述第二应用中的各个服务的标识信息,获取所述第二应用的状态信息和所述第二应用中的各个服务的状态信息。
较佳地,所述服务器为通用远程过程调用协议RPC服务总线。
本发明实施例提供一种服务器,该服务器包括:
接收模块,用于接收第一应用发送的调用请求消息;所述调用请求消息中包括待调用的第二应用的标识信息和待调用服务信息;
发送模块,用于根据所述第二应用的标识信息,将所述待调用服务信息发送给所述第二应用;
所述接收模块,还用于接收所述第二应用发送的调用响应消息;所述调用响应消息中包括所述第二应用根据所述待调用服务信息得到的已调用服务信息;
所述发送模块,还用于将所述已调用服务信息发送给所述第一应用。
较佳地,所述待调用服务信息包括目标服务的标识信息和输入参数信息;
所述已调用服务信息包括所述目标服务的标识信息和输出结果信息;
所述输出结果信息是所述第二应用根据所述目标服务的标识信息,调用所述目标服务对应的函数对所述输入参数信息进行处理得到的。
较佳地,还包括处理模块,用于根据所述第二应用的标识信息和目标服务的标识信息,确定所述第二应用为在线状态,且所述目标服务为可用状态后,将所述待调用服务信息发送给所述第二应用。
较佳地,所述接收模块还用于接收所述第二应用的注册请求消息;所述注册请求消息中包括所述第二应用的标识信息和所述第二应用中的各个服务的标识信息;
所述处理模块,还用于根据所述第二应用的标识信息和所述第二应用中的各个服务的标识信息,获取所述第二应用的状态信息和所述第二应用中的各个服务的状态信息。
较佳地,该服务器为通用远程过程调用协议RPC服务总线。
本发明的上述实施例中,服务器接收第一应用发送的调用请求消息;调用请求消息中包括待调用的第二应用的标识信息和待调用服务信息;服务器根据第二应用的标识信息,将待调用服务信息发送给第二应用;服务器接收第二应用发送的调用响应消息;调用响应消息中包括第二应用根据待调用服务信息得到的已调用服务信息;服务器将已调用服务信息发送给第一应用。本发明实施例中,通过服务器来完成一个应用对另一个应用中的服务的调用,改变了传统实现方式中复杂的网状结构;且,由服务器负责完成不同应用之间的通信,大大简化了开发难度,降低了后续的维护和调试的难度。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简要介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域的普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1a为本发明实施例提供的1对1的调用模型;
图1b为本发明实施例提供的1对多的调用模型;
图1c为本发明实施例提供的多对多的调用模型;
图1d为本发明实施例提供的多对多调用的场景示意图;
图2为本发明实施例提供的一种调用方法所对应的流程示意图;
图3a和图3b为本发明实施例中调用方法的整体流程示意图;
图4为本发明实施例中数据传输示意图;
图5为本发明实施例提供的一种服务器的结构示意图。
具体实施方式
为了使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其它实施例,都属于本发明保护的范围。
本发明实施例中的应用可以为一个单独的可执行程序,或者一个进程。应用中的服务可以为应用中的功能模块。
本发明实施例中调用方法可适用于多种场景,尤其适用于基于Linux系统的终端,例如电视。下面以电视上的三个应用为例,来具体说明多对多调用的场景。图1d为多对多调用的场景示意图。
如图1d所示,该多对多调用的场景中包括数字生活网络联盟(DigitalLiving Network Alliance,简称DLNA)应用、Launcher应用、Himedia应用,三个应用可以互为调用端和被调用端。
其中,DLNA应用负责与DLNA协议相关的功能,完成具体的网络功能的实现,监测网络上设备的状态,并接受网络上手机或者个人电脑(PersonalComputer,简称PC)发送来的命令,以及将电视上的其它应用发送的命令经网络转发给手机和PC。DLNA应用包含渲染器(Digital Media Renderer,简称DMR)服务和控制器(Digital Media Controller,简称DMC)服务。DMR服务支持接受手机发送的各种推送视频或者音乐的命令,播放、暂停、静音等控制命令,该服务需要及时的将各种状态和命令发送给Launcher应用,以便Launcher进行相应的用户界面(User Interface,简称UI)操作反馈给用户。DMC服务实时监测网络上的各种DLNA设备的状态,如PC的在线或离线状态,同时接收到Himeda的浏览文件夹内容的请求时,通过网络浏览PC中的内容,并将结果反馈给Himedia应用。
Launcher应用为按下home键时电视上所启动的应用,是电视上的主应用,该应用中包含电视的基本界面,同时支持多屏互动推送功能。Himedia应用负责浏览U盘以及PC上存储的音视频或者图片文件,并对文件进行播放。Launcher应用和Himedia应用主要负责用户展现,接收DLNA的底层指令,以UI的形式展现给用户,并与用户进行交互。
下面对三个应用之间的调用情形进行具体介绍。
如图1d所示,当用户使用手机推送视频或者音频时,手机发送的视频或者音频分享命令,经过网络发送给DLNA应用,DLNA应用启动DMR服务调用Launcher应用中的播放器服务,Launcher应用接收DLNA应用发送来的分享命令后,启动播放器来进行播放,完成整个推送操作。另外,也可以接收手机端发送的暂停,停止,拖动等命令,对当前播放的视频或者音频进行控制。
以浏览网络在线的PC中的文件为例,当进入Himedia应用时,显示在线的PC的标识信息,当PC离开网络或者加入网络时,DLNA应用会及时的监测到网络上PC的状态,并通过DMC服务调用Himedia应用中的在线设备浏览服务,从而使得Himedia应用实现及时地在界面上显示PC的状态信息(包括在线状态和离线状态)。当用户要对PC上的文件夹进行浏览时,由Himedia将浏览请求发送给DLNA应用,由DLNA应用经网络浏览PC上的文件夹,并将文件夹的内容回复给Himedia应用,展示在界面上。
基于以上多对多调用的场景,图2为本发明实施例提供的一种调用方法所对应的流程示意图,如图2所示,该方法包括:
步骤201,服务器接收第一应用发送的调用请求消息;所述调用请求消息中包括待调用的第二应用的标识信息和待调用服务信息;
步骤202,所述服务器根据所述第二应用的标识信息,将所述待调用服务信息发送给所述第二应用;
步骤203,所述服务器接收所述第二应用发送的调用响应消息;所述调用响应消息中包括所述第二应用根据所述待调用服务信息得到的已调用服务信息;
步骤204,所述服务器将所述已调用服务信息发送给所述第一应用。
本发明实施例中,通过服务器来完成一个应用对另一个应用中的服务的调用,改变了传统实现方式中复杂的网状结构;另一方面,如图1d所示的多对多调用场景,采用现有技术中的进程间通信的调用方式时,需要DLNA应用、Launcher应用、Himedia应用之间定义多套协议和通信方式,以便完成相互之间的调用,从而导致整个系统中出现各种各样的应用间的交互方式,同时也导致代码耦合度高、代码量庞大以及重复开发等问题,并使得后续的维护和调试的难度较高;而本发明实施例中,由服务器负责完成不同应用之间的通信,即服务器在各个应用之间的调用和通信过程中起到中转和控制作用,从而无需各个应用之间相互定义通信协议和方式,大大简化了开发难度,降低了后续的维护和调试的难度。
需要说明的是,本发明实施例中的调用方法并不局限于多对多的调用,也可适用于一对一,或一对多的调用情形,本发明实施例对此不做具体限定。
本发明实施例中,服务器可以为通用远程过程调用协议(Remote ProcedureCall Protocol,简称RPC)服务总线。
通用RPC服务总线由两部分组成,分别为管理端和用户端接口(ClientPlug)。其中,管理端负责完成与总线相关的支撑服务,包括端点管理和数据交换等功能,负责对总线上运行的应用进行状态监测、地址管理、并负责在应用间进行数据转发。用户端接口是每个应用进入总线的接口,应用只需要使用接口中的初始化函数,完成注册过程,即可加入到通用RPC服务总线中。下面以第二应用的注册为例对注册过程进行说明。
具体地,第二应用调用用户端接口的初始化函数,即向通用RPC服务总线发送注册请求消息,通用RPC服务总线的管理端接收第二应用的注册请求消息,其中,注册请求消息中包括第二应用的标识信息和第二应用中的各个服务的标识信息;随后,通用RPC服务总线的管理端根据第二应用的标识信息和第二应用中的各个服务的标识信息,对第二应用的状态信息和第二应用中的各个服务的状态信息进行维护,例如,通用RPC服务总线的管理端可实时监测第二应用的状态信息和第二应用中的各个服务的状态信息,并对第二应用的状态信息和第二应用中的各个服务的状态信息进行实时更新。
本发明实施例中,应用的状态信息包括该应用的在线状态和不在线状态;应用中服务的状态信息包括该服务的可用状态和不可用状态。
当某一应用(例如第一应用)需要调用总线上的其它应用中的服务时,可以使用用户端接口的远程“服务访问函数”,并在函数中填写第二应用的标识信息和待调用服务信息。其中,待调用服务信息包括目标服务的标识信息和输入参数信息。随后,函数调用完毕后,第一应用可接收到通用RPC服务总线的管理端返回的处理结果,即已调用服务信息,包括目标服务的标识信息和输出结果信息。本发明实施例中,输入参数和输出结果可支持各种业务类型的应用进行功能扩展,数据定义较为灵活。
本发明实施例中,应用的标识信息可以为地址标识符,地址标识符与应用的真实网络地址对应。通用RPC服务总线的管理端维护地址映射表,即地址标识符与应用的真实网络地址之间的对应关系。本发明实施例采用通用RPC服务总线对在线应用和服务进行集中管理,并监测各个应用和服务的状态信息,能够实现高效可靠地完成不同应用之间的通信。
图3a和图3b为本发明实施例中调用方法的整体流程示意图,下面结合图3a和图3b对本发明实施例进行具体说明。以第一应用为调用端,第二应用为被调用端为例。
步骤301,第一应用调用初始化函数,填写第一应用的标识信息(AD_ID_01)和第一应用中的各个服务的标识信息。
步骤302,第二应用调用初始化函数,填写第二应用的标识信息(AD_ID_02)和第二应用中的各个服务的标识信息。
步骤303,通用RPC服务总线的管理端接收第一应用的标识信息和第一应用的服务列表、以及第二应用的标识信息和第二应用的服务列表,完成第一应用和第二应用的注册,端点管理模块会使用应用的标识信息与应用的真实网络地址进行映射,对地址映射表和服务列表进行记录,并维护第一应用的状态信息和第一应用的各个服务状态信息、第二应用的状态信息和第二应用的各个服务状态信息。
图4为本发明实施例中数据传输示意图。如图4所示,本发明实施例中,第一应用至少包括函数调用层、数据序列化层和数据传输层。第二应用至少包括函数执行层、数据序列化层和数据传输层。通用RPC服务总线的管理端至少包括端点管理模块、地址解析层、数据序列化层、数据传输层。
基于图4对第一应用、第二应用和通用RPC服务总线的管理端中的内部结构说明以及数据传输示意,下面继续结合整体流程,对应用和通用RPC服务总线的数据处理过程进行介绍。
步骤304,第一应用中的函数调用层调用服务访问函数,填写第二应用的标识信息(AD_ID_02)、目标服务的标识信息(SERVICE_ID_02)和输入参数(XXX)。
步骤305,第一应用中的数据序列化层对上述数据(包括AD_ID_02、SERVICE_ID_02、XXX)进行序列化处理,以转化为适合网络传输的格式。
步骤306,第一应用中的数据传输层将步骤305中序列化处理后的数据发送通用RPC服务总线的管理端。
步骤307,通用RPC服务总线的数据传输层接收序列化处理后的数据。
步骤308,通用RPC服务总线的数据序列化层将序列化处理后的数据进行反序列化处理,得到AD_ID_02、SERVICE_ID_02、XXX。
步骤309,通用RPC服务总线的地址解析层根据AD_ID_02,得到第二应用的真实网络地址,并通过端点管理模块确定第二应用为在线状态,且目标服务为可用状态后,执行步骤310。
可选地,本发明实施例中,若确定第二应用为不在线状态或目标服务为不可用状态,则通用RPC服务总线向第一应用返回第二应用不在线或目标服务不可用的状态信息,并结束此次调用。
步骤310,通用RPC服务总线的数据序列化层将数据(包括SERVICE_ID_02、XXX)进行序列化处理。
步骤311,通用RPC服务总线的数据传输层将步骤310中序列化处理后的数据发送给第二应用。
步骤312,第二应用中的数据传输层接收序列化处理后的数据。
步骤313,第二应用中的数据序列化层将接收到的序列化处理后的数据进行反序列化处理,得到SERVICE_ID_02、XXX。
步骤314,第二应用的函数执行层根据SERVICE_ID_02,得到SERVICE_ID_02对应的函数,通过该函数对输入信息XXX进行处理,得到输出结果YYY。
步骤315,第二应用调用服务响应函数,填写第一应用的标识信息(AD_ID_01)、目标服务的标识信息(SERVICE_ID_02)和输出结果信息(YYY)。
步骤316,第二应用中的数据序列化层将数据(包括AD_ID_01、SERVICE_ID_02、YYY)进行序列化处理。
步骤317,第二应用中的数据传输层将步骤316中序列化后的数据发送给通用RPC服务总线。
步骤318,通用RPC服务总线的数据传输层接收序列化处理后的数据。
步骤319,通用RPC服务总线的数据序列化层将序列化处理后的数据进行反序列化处理,得到AD_ID_01、SERVICE_ID_02、YYY。
步骤320,通用RPC服务总线的地址解析层根据AD_ID_01,得到第一应用的真实网络地址,并在确定第一应用为在线状态,且目标服务为可用状态后,执行步骤321。
步骤321,通用RPC服务总线的数据序列化层将数据(包括SERVICE_ID_02、YYY)进行序列化处理。
步骤322,通用RPC服务总线的数据传输层将步骤321中序列化处理后的数据发送给第一应用。
步骤323,第一应用中的数据传输层接收序列化处理后的数据。
步骤324,第一应用中的数据序列化层将接收到的序列化处理后的数据进行反序列化处理,得到SERVICE_ID_02、YYY,即得到调用的第二应用的输出结果。
本发明的上述实施例中,服务器接收第一应用发送的调用请求消息;调用请求消息中包括待调用的第二应用的标识信息和待调用服务信息;服务器根据第二应用的标识信息,将待调用服务信息发送给第二应用;服务器接收第二应用发送的调用响应消息;调用响应消息中包括第二应用根据待调用服务信息得到的已调用服务信息;服务器将已调用服务信息发送给第一应用。本发明实施例中,通过服务器来完成一个应用对另一个应用中的服务的调用,改变了传统实现方式中复杂的网状结构;且,由服务器负责完成不同应用之间的通信,大大简化了开发难度,降低了后续的维护和调试的难度。
针对上述方法流程,本发明实施例还提供一种服务器,该服务器的具体内容可以参照上述方法实施。
图5为本发明实施例提供的一种服务器的结构示意图,该服务器包括:
接收模块501,用于接收第一应用发送的调用请求消息;所述调用请求消息中包括待调用的第二应用的标识信息和待调用服务信息;
发送模块502,用于根据所述第二应用的标识信息,将所述待调用服务信息发送给所述第二应用;
所述接收模块501,还用于接收所述第二应用发送的调用响应消息;所述调用响应消息中包括所述第二应用根据所述待调用服务信息得到的已调用服务信息;
所述发送模块502,还用于将所述已调用服务信息发送给所述第一应用。
较佳地,所述待调用服务信息包括目标服务的标识信息和输入参数信息;
所述已调用服务信息包括所述目标服务的标识信息和输出结果信息;
所述输出结果信息是所述第二应用根据所述目标服务的标识信息,调用所述目标服务对应的函数对所述输入参数信息进行处理得到的。
较佳地,还包括处理模块503,用于根据所述第二应用的标识信息和目标服务的标识信息,确定所述第二应用为在线状态,且所述目标服务为可用状态后,将所述待调用服务信息发送给所述第二应用。
较佳地,所述接收模块501,还用于接收所述第二应用的注册请求消息;所述注册请求消息中包括所述第二应用的标识信息和所述第二应用中的各个服务的标识信息;
所述处理模块503,还用于根据所述第二应用的标识信息和所述第二应用中的各个服务的标识信息,获取所述第二应用的状态信息和所述第二应用中的各个服务的状态信息。
较佳地,该服务器为通用远程过程调用协议RPC服务总线。
从上述内容可以看出:本发明实施例中,服务器接收第一应用发送的调用请求消息;调用请求消息中包括待调用的第二应用的标识信息和待调用服务信息;服务器根据第二应用的标识信息,将待调用服务信息发送给第二应用;服务器接收第二应用发送的调用响应消息;调用响应消息中包括第二应用根据待调用服务信息得到的已调用服务信息;服务器将已调用服务信息发送给第一应用。本发明实施例中,通过服务器来完成一个应用对另一个应用中的服务的调用,改变了传统实现方式中复杂的网状结构;且,由服务器负责完成不同应用之间的通信,大大简化了开发难度,降低了后续的维护和调试的难度。
本领域内的技术人员应明白,本发明的实施例可提供为方法、或计算机程序产品。因此,本发明可采用完全硬件实施例、完全软件实施例、或结合软件和硬件方面的实施例的形式。而且,本发明可采用在一个或多个其中包含有计算机可用程序代码的计算机可用存储介质(包括但不限于磁盘存储器、CD-ROM、光学存储器等)上实施的计算机程序产品的形式。
本发明是参照根据本发明实施例的方法、设备(系统)、和计算机程序产品的流程图和/或方框图来描述的。应理解可由计算机程序指令实现流程图和/或方框图中的每一流程和/或方框、以及流程图和/或方框图中的流程和/或方框的结合。可提供这些计算机程序指令到通用计算机、专用计算机、嵌入式处理机或其他可编程数据处理设备的处理器以产生一个机器,使得通过计算机或其他可编程数据处理设备的处理器执行的指令产生用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的装置。
这些计算机程序指令也可存储在能引导计算机或其他可编程数据处理设备以特定方式工作的计算机可读存储器中,使得存储在该计算机可读存储器中的指令产生包括指令装置的制造品,该指令装置实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能。
这些计算机程序指令也可装载到计算机或其他可编程数据处理设备上,使得在计算机或其他可编程设备上执行一系列操作步骤以产生计算机实现的处理,从而在计算机或其他可编程设备上执行的指令提供用于实现在流程图一个流程或多个流程和/或方框图一个方框或多个方框中指定的功能的步骤。
尽管已描述了本发明的优选实施例,但本领域内的技术人员一旦得知了基本创造性概念,则可对这些实施例作出另外的变更和修改。所以,所附权利要求意欲解释为包括优选实施例以及落入本发明范围的所有变更和修改。
显然,本领域的技术人员可以对本发明进行各种改动和变型而不脱离本发明的精神和范围。这样,倘若本发明的这些修改和变型属于本发明权利要求及其等同技术的范围之内,则本发明也意图包含这些改动和变型在内。
Claims (10)
1.一种调用方法,其特征在于,该方法包括:
服务器接收第一应用发送的调用请求消息;所述调用请求消息中包括待调用的第二应用的标识信息和待调用服务信息;
所述服务器根据所述第二应用的标识信息,将所述待调用服务信息发送给所述第二应用;
所述服务器接收所述第二应用发送的调用响应消息;所述调用响应消息中包括所述第二应用根据所述待调用服务信息得到的已调用服务信息;
所述服务器将所述已调用服务信息发送给所述第一应用。
2.如权利要求1所述的方法,其特征在于,所述待调用服务信息包括目标服务的标识信息和输入参数信息;
所述已调用服务信息包括所述目标服务的标识信息和输出结果信息;
所述输出结果信息是所述第二应用根据所述目标服务的标识信息,调用所述目标服务对应的函数对所述输入参数信息进行处理得到的。
3.如权利要求2所述的方法,其特征在于,所述服务器接收第一应用发送的调用请求消息之后,还包括:
所述服务器根据所述第二应用的标识信息和目标服务的标识信息,确定所述第二应用为在线状态,且所述目标服务为可用状态后,将所述待调用服务信息发送给所述第二应用。
4.如权利要求3所述的方法,其特征在于,所述服务器根据所述第二应用的标识信息,确定所述第二应用为在线状态,且所述目标服务可用后,将所述待调用服务信息发送给所述第二应用之前,还包括:
所述服务器接收所述第二应用的注册请求消息;所述注册请求消息中包括所述第二应用的标识信息和所述第二应用中的各个服务的标识信息;
所述服务器根据所述第二应用的标识信息和所述第二应用中的各个服务的标识信息,获取所述第二应用的状态信息和所述第二应用中的各个服务的状态信息。
5.如权利要求1至4中任一项所述的方法,其特征在于,所述服务器为通用远程过程调用协议RPC服务总线。
6.一种服务器,其特征在于,该服务器包括:
接收模块,用于接收第一应用发送的调用请求消息;所述调用请求消息中包括待调用的第二应用的标识信息和待调用服务信息;
发送模块,用于根据所述第二应用的标识信息,将所述待调用服务信息发送给所述第二应用;
所述接收模块,还用于接收所述第二应用发送的调用响应消息;所述调用响应消息中包括所述第二应用根据所述待调用服务信息得到的已调用服务信息;
所述发送模块,还用于将所述已调用服务信息发送给所述第一应用。
7.如权利要求6所述的服务器,其特征在于,所述待调用服务信息包括目标服务的标识信息和输入参数信息;
所述已调用服务信息包括所述目标服务的标识信息和输出结果信息;
所述输出结果信息是所述第二应用根据所述目标服务的标识信息,调用所述目标服务对应的函数对所述输入参数信息进行处理得到的。
8.如权利要求7所述的服务器,其特征在于,还包括处理模块,用于根据所述第二应用的标识信息和目标服务的标识信息,确定所述第二应用为在线状态,且所述目标服务为可用状态后,将所述待调用服务信息发送给所述第二应用。
9.如权利要求8所述的服务器,其特征在于,所述接收模块,还用于接收所述第二应用的注册请求消息;所述注册请求消息中包括所述第二应用的标识信息和所述第二应用中的各个服务的标识信息;
所述处理模块,还用于根据所述第二应用的标识信息和所述第二应用中的各个服务的标识信息,获取所述第二应用的状态信息和所述第二应用中的各个服务的状态信息。
10.如权利要求6至9中任一项所述的服务器,其特征在于,该服务器为通用远程过程调用协议RPC服务总线。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610195044.3A CN105872578A (zh) | 2016-03-30 | 2016-03-30 | 一种调用方法及服务器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201610195044.3A CN105872578A (zh) | 2016-03-30 | 2016-03-30 | 一种调用方法及服务器 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN105872578A true CN105872578A (zh) | 2016-08-17 |
Family
ID=56626664
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201610195044.3A Pending CN105872578A (zh) | 2016-03-30 | 2016-03-30 | 一种调用方法及服务器 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN105872578A (zh) |
Cited By (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106453592A (zh) * | 2016-11-02 | 2017-02-22 | 华为技术有限公司 | 异步调用处理方法、设备及分布式系统 |
CN107241351A (zh) * | 2017-07-14 | 2017-10-10 | 广州四三九九信息科技有限公司 | 一种基于Redis的RPC通信方法 |
CN107632894A (zh) * | 2017-08-09 | 2018-01-26 | 中国电力科学研究院 | 一种用于电力市场交易服务调用的实现方法及装置 |
CN107766164A (zh) * | 2017-11-17 | 2018-03-06 | 深圳市泉眼网络科技有限公司 | 数据调用方法及装置 |
CN108733698A (zh) * | 2017-04-19 | 2018-11-02 | 腾讯科技(深圳)有限公司 | 一种日志消息的处理方法及后台服务系统 |
CN109753323A (zh) * | 2017-11-02 | 2019-05-14 | 北京国双科技有限公司 | 一种外部服务调用方法及装置 |
WO2023044929A1 (zh) * | 2021-09-27 | 2023-03-30 | 西门子股份公司 | 用于提供与信息系统相关联的服务的方法和系统 |
Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1728133A (zh) * | 2004-07-27 | 2006-02-01 | 武征 | 面向对象的信息服务器、其制作方法及浏览器 |
CN101388887A (zh) * | 2008-10-15 | 2009-03-18 | 中兴通讯股份有限公司 | 一种网络服务的处理方法和系统 |
US20100049794A1 (en) * | 2007-03-07 | 2010-02-25 | Huawei Technologies Co., Ltd. | Method and system for implementing service compatibility |
CN101719902A (zh) * | 2009-12-04 | 2010-06-02 | 深圳创维数字技术股份有限公司 | 一种远程过程调用方法和系统 |
CN102693071A (zh) * | 2011-02-03 | 2012-09-26 | 索尼公司 | 用于响应于触发事件来调用应用的系统和方法 |
CN103283209A (zh) * | 2011-04-18 | 2013-09-04 | 北京新媒传信科技有限公司 | 一种应用服务平台系统及其实现方法 |
CN104333807A (zh) * | 2014-10-22 | 2015-02-04 | 乐视网信息技术(北京)股份有限公司 | 一种应用处理方法和装置、智能电视 |
-
2016
- 2016-03-30 CN CN201610195044.3A patent/CN105872578A/zh active Pending
Patent Citations (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1728133A (zh) * | 2004-07-27 | 2006-02-01 | 武征 | 面向对象的信息服务器、其制作方法及浏览器 |
US20100049794A1 (en) * | 2007-03-07 | 2010-02-25 | Huawei Technologies Co., Ltd. | Method and system for implementing service compatibility |
CN101388887A (zh) * | 2008-10-15 | 2009-03-18 | 中兴通讯股份有限公司 | 一种网络服务的处理方法和系统 |
CN101719902A (zh) * | 2009-12-04 | 2010-06-02 | 深圳创维数字技术股份有限公司 | 一种远程过程调用方法和系统 |
CN102693071A (zh) * | 2011-02-03 | 2012-09-26 | 索尼公司 | 用于响应于触发事件来调用应用的系统和方法 |
CN103283209A (zh) * | 2011-04-18 | 2013-09-04 | 北京新媒传信科技有限公司 | 一种应用服务平台系统及其实现方法 |
CN104333807A (zh) * | 2014-10-22 | 2015-02-04 | 乐视网信息技术(北京)股份有限公司 | 一种应用处理方法和装置、智能电视 |
Cited By (9)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN106453592A (zh) * | 2016-11-02 | 2017-02-22 | 华为技术有限公司 | 异步调用处理方法、设备及分布式系统 |
CN106453592B (zh) * | 2016-11-02 | 2020-05-08 | 华为技术有限公司 | 异步调用处理方法、设备及分布式系统 |
CN108733698A (zh) * | 2017-04-19 | 2018-11-02 | 腾讯科技(深圳)有限公司 | 一种日志消息的处理方法及后台服务系统 |
CN108733698B (zh) * | 2017-04-19 | 2023-08-08 | 腾讯科技(深圳)有限公司 | 一种日志消息的处理方法及后台服务系统 |
CN107241351A (zh) * | 2017-07-14 | 2017-10-10 | 广州四三九九信息科技有限公司 | 一种基于Redis的RPC通信方法 |
CN107632894A (zh) * | 2017-08-09 | 2018-01-26 | 中国电力科学研究院 | 一种用于电力市场交易服务调用的实现方法及装置 |
CN109753323A (zh) * | 2017-11-02 | 2019-05-14 | 北京国双科技有限公司 | 一种外部服务调用方法及装置 |
CN107766164A (zh) * | 2017-11-17 | 2018-03-06 | 深圳市泉眼网络科技有限公司 | 数据调用方法及装置 |
WO2023044929A1 (zh) * | 2021-09-27 | 2023-03-30 | 西门子股份公司 | 用于提供与信息系统相关联的服务的方法和系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN105872578A (zh) | 一种调用方法及服务器 | |
US20240139621A1 (en) | Server and Data Processing Method, Apparatus, and System | |
US11271803B2 (en) | Method and apparatus for extending service capabilities in a communication network | |
JP7058654B2 (ja) | リソース共有方法、装置およびシステム | |
CN106796626B (zh) | 共享会话技术 | |
CN110661801B (zh) | 一种数据传输方法、装置、以及计算机存储介质 | |
EP2680500A1 (en) | Application discovery | |
WO2016184267A1 (zh) | 提供指定通信服务的方法、装置、终端和系统 | |
WO2013126435A1 (en) | Transferring of communication event | |
CN105306320B (zh) | 一种为智能设备绑定客户端的方法及装置 | |
EP2472774B1 (en) | Remote control method and system using control user interface | |
WO2016101545A1 (zh) | 设备管理方法、装置及系统 | |
CN104394127A (zh) | 一种多媒体分享方法、设备和系统 | |
CN114125482A (zh) | 直播连麦处理方法、电子设备及存储介质 | |
CN110099461A (zh) | 终端之间的通信方法、装置、系统、电子设备及存储介质 | |
CN110855680A (zh) | 一种物联网设备对接方法及装置 | |
CN105955111A (zh) | 设备控制方法及装置以及设备控制系统 | |
CN110365931A (zh) | 多方通话的控制方法及装置、电子设备、存储介质 | |
CN110769320B (zh) | 一种智能设备分享内容的方法、系统及装置 | |
JP2018522435A (ja) | 複数端末のインタラクション関係の維持スシステム及び方法 | |
CN104038511B (zh) | 一种资源管理方法及装置 | |
US20150365133A1 (en) | Touch and Talk Auto-Configuring of Video Conferences Using Near Field Communication (NFC) | |
CN106303413A (zh) | 基于ipc监测系统信息交互的方法及ipc监测系统 | |
CN110474891A (zh) | 基于多系统智能设备的业务访问控制方法及装置 | |
CN105653219A (zh) | 一种屏幕传输控制方法、装置、系统和相关设备 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
RJ01 | Rejection of invention patent application after publication | ||
RJ01 | Rejection of invention patent application after publication |
Application publication date: 20160817 |