服务调用系统、方法及装置
技术领域
本发明涉及计算机技术领域,特别涉及一种服务调用系统、方法及装置。
背景技术
分布式应用中一个应用可提供多个服务。随着分布式应用的发展,用户的一个请求可能会涉及到若干个服务的协同处理,服务的调用链路也越来越复杂。
在分布式应用响应用户请求的过程中发生故障时,通过分析此次响应用户请求所涉及的调用链路可提高定位出故障应用的速度。然而,相关技术中未对应用间的服务调用进行监控,难以获得调用链路。
发明内容
为了解决现有技术中未对应用间的服务调用进行监控,难以获得调用链路的问题,本发明实施例提供了一种服务调用系统、方法及装置。所述技术方案如下:
第一方面,提供了一种服务调用系统,所述系统包括:第一应用、第二应用和第三应用,所述第一应用接收所述第二应用发送的第一调用请求,所述第一调用请求中携带有第一服务的标识和链路标识;所述第一应用查询具备所述第一服务的标识的服务接口,利用所述服务接口将所述第一调用请求转发至提供所述第一服务的第三应用,在所述第一应用中不存在具备所述链路标识的链路时,按照所述第二应用、所述第三应用的顺序生成与所述链路标识对应的链路;所述第三应用在所述第三应用具备所述第一服务对应的服务数据时,向所述第一应用发送携带有所述服务数据的第一调用应答;所述第一应用将所述第一调用应答转发至所述第二应用。
通过第二应用在需要对第三应用的第一服务进行调用时,将携带有第一服务的标识和链路标识的第一调用请求发送至第一应用,由第一应用将第一调用请求转发至第三应用,当第三应用具备第一服务对应的服务数据时,也将携带有服务数据的第一调用应答发送至第一应用,由第一应用将第一调用应答转发至第二应用,由于第二应用在对第三应用的第一服务进行调用时,第二应用与第三应用之间的交互均需要通过第一应用转发,第一应用可对应用间的服务调用进行监控,解决了相关技术中未对应用间的服务调用进行监控,难以获得调用链路的问题,达到了快速获取调用链路的效果。
可选的,所述系统还包括第四应用,所述第三应用在所述第三应用需要调用第二服务以获取所述第一服务对应的服务数据时,向所述第一应用发送携带有所述链路标识和所述第二服务的标识的第二调用请求;所述第一应用查询具备所述第二服务的标识的服务接口,利用所述服务接口将所述第二调用请求转发至提供所述第二服务的第四应用,将所述第四应用添加至与所述链路标识对应的链路中所述第三应用的后面;所述第四应用在所述第四应用具备所述第二服务对应的服务数据时,向所述第一应用发送携带有所述服务数据的第二调用应答;所述第一应用将所述第二调用应答转发至所述第三应用。
可选的,所述第一应用记录所述第一应用向第三应用转发所述第一调用请求的第一时刻;所述第一应用记录接收到所述第三应用发送的第一调用应答的第二时刻,将所述第二时刻减去所述第一时刻,将得到的差值作为所述第三应用针对所述第一调用请求的响应时长。通过记录第一应用向第三应用转发第一调用请求的第一时刻和记录接收到第三应用发送的第一调用应答的第二时刻,计算出第三应用针对第一调用请求的响应时长,使得服务调用过程中发生故障时,可通过分析响应时长和调用链路快速确定出故障应用。
第二方面,提供了一种服务调用方法,应用于服务调用系统的第一应用中,所述服务调用系统还包括第二应用和第三应用,所述方法包括:接收所述第二应用发送的第一调用请求,所述第一调用请求中携带有第一服务的标识和链路标识;查询具备所述第一服务的标识的服务接口,利用所述服务接口将所述第一调用请求转发至提供所述第一服务的第三应用,在所述第一应用中不存在具备所述链路标识的链路时,按照所述第二应用、所述第三应用的顺序生成与所述链路标识对应的链路;接收所述第三应用发送的携带有所述服务数据的第一调用应答,所述第一调用应答是所述第三应用在所述第三应用具备所述第一服务对应的服务数据时发送的;将所述第一调用应答转发至所述第二应用。
可选的,所述服务调用系统还包括第四应用,所述方法还包括:接收所述第三应用发送的携带有所述链路标识和所述第二服务的标识的第二调用请求,所述第二调用请求是所述第三应用在所述第三应用需要调用第二服务以获取所述第一服务对应的服务数据时发送的;查询具备所述第二服务的标识的服务接口,利用所述服务接口将所述第二调用请求转发至提供所述第二服务的第四应用,将所述第四应用添加至与所述链路标识对应的链路中所述第三应用的后面;接收所述第四应用发送的携带有服务数据的第二调用应答,所述第二调用应答是所述第四应用在所述第四应用具备所述第二服务对应的服务数据时发送的;将所述第二调用应答转发至所述第三应用。
可选的,所述方法包括:记录所述第一应用向第三应用转发所述第一调用请求的第一时刻;记录接收到所述第三应用发送的第一调用应答的第二时刻,将所述第二时刻减去所述第一时刻,将得到的差值作为所述第三应用针对所述第一调用请求的响应时长。
第三方面,提供了一种服务调用装置,应用于服务调用系统的第一应用中,所述服务调用系统还包括第二应用和第三应用,所述装置包括:第一接收模块,用于接收所述第二应用发送的第一调用请求,所述第一调用请求中携带有第一服务的标识和链路标识;第一查询模块,用于查询具备所述第一服务的标识的服务接口,利用所述服务接口将所述第一调用请求转发至提供所述第一服务的第三应用,在所述第一应用中不存在具备所述链路标识的链路时,按照所述第二应用、所述第三应用的顺序生成与所述链路标识对应的链路;第二接收模块,用于接收所述第三应用发送的携带有所述服务数据的第一调用应答,所述第一调用应答是所述第三应用在所述第三应用具备所述第一服务对应的服务数据时发送的;第一转发模块,用于将所述第一调用应答转发至所述第二应用。
可选的,所述服务调用系统还包括第四应用,所述装置还包括:第三接收模块,用于接收所述第三应用发送的携带有所述链路标识和所述第二服务的标识的第二调用请求,所述第二调用请求是所述第三应用在所述第三应用需要调用第二服务以获取所述第一服务对应的服务数据时发送的;第二查询模块,用于查询具备所述第二服务的标识的服务接口,利用所述服务接口将所述第二调用请求转发至提供所述第二服务的第四应用,将所述第四应用添加至与所述链路标识对应的链路中所述第三应用的后面;第四接收模块,用于接收所述第四应用发送的携带有服务数据的第二调用应答,所述第二调用应答是所述第四应用在所述第四应用具备所述第二服务对应的服务数据时发送的;第二转发模块,用于将所述第二调用应答转发至所述第三应用。
可选的,所述装置还包括:记录模块,用于记录所述第一应用向第三应用转发所述第一调用请求的第一时刻;计算模块,用于记录接收到所述第三应用发送的第一调用应答的第二时刻,将所述第二时刻减去所述记录模块记录的第一时刻,将得到的差值作为所述第三应用针对所述第一调用请求的响应时长。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
图1是本发明一个实施例提供的服务调用系统的结构框图;
图2A是本发明一个实施例中提供的服务调用系统实现服务调用过程的流程图;
图2B是本发明一个实施例中提供的服务调用系统在进行服务调用时应用间交互的示意图;
图2C是本发明一个实施例中提供的服务调用对应链路的示意图;
图3A是本发明另一个实施例中提供的服务调用系统实现服务调用过程的流程图;
图3B是本发明另一个实施例中提供的服务调用系统在进行服务调用时应用间交互的示意图;
图3C是本发明另一个实施例中提供的服务调用对应链路的示意图;
图3D是本发明另一个实施例中提供的另一个服务调用对应链路的示意图;
图3E是本发明一个实施例中提供的统计每个服务调用的响应时长的流程图;
图4是本发明一个实施例中提供的服务调用装置的框图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明实施方式作进一步地详细描述。
图1是本发明一个实施例提供的服务调用系统的结构框图。如图1所示,服务调用系统至少包括第一应用110、第二应用120、第三应用130和第四应用140。
第二应用120和第三应用130为服务调用系统中提供至少一个服务的应用。
第二应用120与第一应用110可通过通信网络相连,第三应用130与第一应用110可通过通信网络相连,通信网络为无线网络或者有线网络。
可选的,第四应用140与第一应用110可通过通信网络相连,通信网络为无线网络或者有线网络。第四应用140可提供至少一个服务。
可选的,该服务调用系统还可包括其他可提供至少一个服务的应用(图中未示出),该应用与第一应用110可通过通信网络相连。
图2A是本发明一个实施例中提供的服务调用系统实现服务调用过程的流程图,图2B是本发明一个实施例中提供的服务调用系统在进行服务调用时应用间交互的示意图,下面结合图2A和图2B对该实现服务调用过程进行说明。如图2A所示,该服务调用系统实现服务调用过程可以包括如下几个步骤:
步骤201,当第二应用需要调用第一服务时,第二应用向第一应用发送携带有第一服务的标识和链路标识的第一调用请求。
其中,第一服务由第二应用根据调用需求确定。举例来讲,第二应用为财务系统,当用户利用第二应用进行员工资结算时,第二应用需要从考勤系统获取员工考勤记录,此时第二应用可将第一服务确定为考勤记录服务。
可选的,第一服务的标识为第一服务的名称。
当第二应用调用第一服务的目的不是为其他应用提供服务的情况下,将第二应用对第一服务的调用认定为一级调用。
举例来讲,第二应用需要向第四应用提供服务A,而第二应用中不具备服务A对应的服务数据,需要从第三应用中获取服务B对应的服务数据以生成服务A对应的服务数据,此时第二应用需要对服务B进行调用,但第二应用对服务B的调用不是一级调用。在上述过程中,第二应用调用服务A的目的不是为其他应用提供服务数据,将第二应用对于服务A的调用认定为一级调用。
当第二应用对第一服务的调用为一级调用时,第二应用生成一个新的链路标识,并且生成的新链路标识与服务调用系统中的任一应用生成的链路标识不相同。
举例来讲,第二应用对服务A的调用为一级调用,第二应用生成一个链路标识a;当第三应用对服务A的调用为一级调用时,第三应用生成一个链路标识b。当第三应用需要再次调用服务A,且对服务A的调用为一级调用时,第三应用生成一个新的链路标识c。
可选的,在第二应用生成新的链路标识时,可利用第二应用的标识和时间戳生成新的链路标识。
一般来讲,第二应用发送的第一调用请求中还可以包括第二应用的标识或网络地址。
步骤202,第一应用接收第二应用发送的第一调用请求,该第一调用请求中携带有第一服务的标识和链路标识。
步骤203,第一应用查询具备第一服务的标识的服务接口,利用服务接口将该第一调用请求转发至提供第一服务的第三应用。
其中,第三应用是服务调用系统中可提供第一服务的应用。
一般来讲,第一应用中预先存储有各个服务对应的服务接口(英文:serviceinterface),一个服务接口与一个服务唯一对应。服务接口中通常还包含提供该服务接口对应服务的应用的入口点。
当第一应用获取到具备第一服务的标识的服务接口时,可使用该服务接口中的入口点与第三应用进行数据交互,将第一调用请求转发至第三应用。
步骤204,第一应用在第一应用中不存在具备该链路标识的链路时,按照第二应用、第三应用的顺序生成与该链路标识对应的链路。
当第二应用对第一服务的调用为一级调用时,第一应用中不存在具备该链路标识的链路,此时按照第二应用、第三应用的顺序生成与该链路标识对应的链路。
可选的,按照第二应用、第三应用的顺序生成与该链路标识对应的链路可通过以下几种可能的实施方式实现:
在第一种可能的实施方式中,利用第二应用的标识和第三应用的标识生成链路,并将第一调用请求中携带的链路标识确定为生成链路的标识。
举例来讲,如图2C(1)当第二应用对第三应用的服务A的调用为一级调用时,第二应用生成一个新的链路标识a。第一应用在接收到第二应用发送的携带有链路标识a和服务A标识的第一调用请求后,查询具备链路标识a的链路。由于第二应用对服务A的调用为一级调用,第一应用中不存在具备链路标识a的链路,此时将第三应用的标识P2排在第二应用的标识P1后,生成链路标识a的链路。
在第二种可能的实施方式中,利用第二应用的标识和第三应用的标识生成链路,将第一服务的标识添加至第二应用所在链路节点处。
举例来讲,如图2C(2)为具备链路标识a的链路,第一应用将第三应用的标识P2排在第二应用的标识P1后,并将服务A的标识S1添加至第二应用的标识P1所在链路节点处。
步骤205,在第三应用具备第一服务对应的服务数据时,第三应用向第一应用发送携带有服务数据的第一调用应答。
第一调用请求中通常携带有发送该第一调用请求的发送方信息,为第二应用的标识或网络地址。因此,第三应用可将第二应用的标识或网络地址作为接收方信息添加至第一调用应答中。
当第三应用获取到第一服务对应的服务数据时,将获取到的服务数据添加至第一调用应答中,并将该第一调用应答发送至第一应用。
可选的,第三应用将第一调用请求中携带的链路标识添加至第一调用应答中。
步骤206,第一应用将第一调用应答转发至第二应用。
由于第一调用应答中携带有接收方信息为第二应用的标识或网络地址,则第一应用可将第一调用应答转发至第二应用。
当第一调用应答中携带的接收方信息为第二应用的标识时,第一应用在本地查询第二应用的网络地址。其中,第一应用中预先存储了第二应用的网络地址与第二应用的标识之间的对应关系。
举例来讲,第三应用接收到第一应用发送的第一调用请求,第一调用请求中携带有服务A的标识。当第三应用的本地存储有服务A对应的服务数据时,第三应用将第一调用请求中的发送方信息第二应用的标识P1确定为第一调用应答的接收方信息,并将添加有服务A对应的服务数据的第一调用应答发送至第一应用。第一应用接收到第一调用应答后,在第一调用应答中查看接收方信息为第二应用的标识P1,则第一应用将第一调用应答转发至第二应用。
需要说明的一点是,其中步骤202、步骤203、步骤204和步骤206可以单独实现成为以第一应用为执行主体的服务调用方法。
综上所述,本发明实施例中提供的服务调用系统,通过第二应用在需要对第三应用的第一服务进行调用时,将携带有第一服务的标识和链路标识的第一调用请求发送至第一应用,由第一应用将第一调用请求转发至第三应用,当第三应用具备第一服务对应的服务数据时,也将携带有服务数据的第一调用应答发送至第一应用,由第一应用将第一调用应答转发至第二应用,由于第二应用在对第三应用的第一服务进行调用时,第二应用与第三应用之间的交互均需要通过第一应用转发,第一应用可对应用间的服务调用进行监控,解决了相关技术中未对应用间的服务调用进行监控,难以获得调用链路的问题,达到了快速获取调用链路的效果。
当第三应用需要调用第二服务以获取第一服务对应的服务数据时,第三应用向第一应用发送携带有链路标识和第二服务的标识的第二调用请求,请求调用第二服务。
图3A是本发明另一个实施例中提供的服务调用系统实现服务调用过程的流程图,图3B是本发明另一个实施例中提供的服务调用系统在进行服务调用时应用间交互的示意图,下面结合图3A和图3B对该实现服务调用过程进行说明。如图3A所示,该服务调用系统实现服务调用过程可以包括如下步骤:
步骤301,当第二应用需要调用第一服务时,第二应用向第一应用发送携带有第一服务的标识和链路标识的第一调用请求。
本步骤可参见步骤201的解释说明。
步骤302,第一应用接收第二应用发送的第一调用请求,查询具备第一服务的标识的服务接口,利用服务接口将该第一调用请求转发至提供第一服务的第三应用。
本步骤可参见步骤203的解释说明。
步骤303,在第一应用中不存在具备该链路标识的链路时,第一应用按照第二应用、第三应用的顺序生成与该链路标识对应的链路。
本步骤可参见步骤204的解释说明。
步骤304,第三应用接收第一应用发送的第一调用请求,当第三应用具备第一服务对应的服务数据时,向第一应用发送携带有服务数据的第一调用应答。
本步骤可参见步骤205的解释说明。
步骤305,第一应用在接收到第二应用发送的第一调用应答后,将第一调用应答转发至第二应用。
本步骤可参见步骤206的解释说明。
步骤306,当第三应用需要调用第二服务以获取第一服务对应的服务数据时,向第一应用发送携带有链路标识和第二服务的标识的第二调用请求。
当第三应用本地未存储有第一服务对应的服务数据,需要获取第二服务对应的服务数据以获取第一服务对应的服务数据的情况下,第三应用需要从提供第二服务的第四应用获取第二服务对应的服务数据。
如图3B所示,第三应用向第一应用发送携带有链路标识和第二服务的标识的第二调用请求。其中,这里所讲的链路标识与第一调用请求中的链路标识相同。
可选的,第二服务的标识为第二服务的名称。
步骤307,第一应用查询具备第二服务的标识的服务接口,利用服务接口将第二调用请求转发至提供第二服务的第四应用,将第四应用添加至与该链路标识对应的链路中第三应用的后面。
其中,第四应用为服务调用系统中提供第二服务的应用。仍旧参见图3B,第一应用查询具备第二服务的标识的服务接口,利用该服务接口将第二调用请求转发至提供第二服务的第四应用。
再举例来讲,仍旧参见图3C(1),第一应用在接收到第二调用请求后,从第二调用请求中获取到的第二服务的标识,将提供第二服务的第四应用的标识P3添加至第三应用的标识P2的后面。
再举例来讲,仍旧参见图3C(2),第一应用将提供第二服务的第四应用的标识P3添加至第三应用的标识P2的后面,并将第二服务的标识S2添加至第三应用的标识P2所在链路节点处。
步骤308,第四应用接收第二调用请求后,在第四应用具备第二服务对应的服务数据时,第四应用向第一应用发送携带有服务数据的第二调用应答。
由于第二调用请求中包含了该第二调用请求的发送方的信息,且发送方的信息为第三应用的标识或网络地址,因此第四应用可将第二应用的标识或网络地址作为接收方信息添加至第二调用应答中。第四应用将携带有第二服务对应的服务数据的第二调用应答发送至第一应用。
可选的,第四应用将第二调用请求中携带的链路标识添加至第二调用应答中。
步骤309,第一应用将第二调用应答转发至第三应用。
由于第二调用应答中携带有接收方的信息,且接收方的信息为第三应用的标识或网络地址,因此第一应用将第二调用应答转发至第三应用。
当第二调用应答中携带的接收方信息为第三应用的标识时,第一应用在本地查询第三应用的网络地址。其中,第一应用中预先存储了第三应用的网络地址与第三应用的标识之间的对应关系。
需要说明的一点是,第三应用在获取到第二服务对应的服务数据后,若能够利用第二服务对应的服务数据获取第一服务对应的服务数据,则执行步骤304中向第一应用发送携带有服务数据的第一调用应答和步骤305。这里仅以利用第二服务对应的服务数据可获取第一服务对应的服务数据来举例说明,在实际应用中获取第一服务对应的服务数据可能还需要其他服务的服务数据,对于其他服务的服务数据的获取可参照步骤306至步骤309,这里就不再赘述。
举例来讲,当第三应用接收到携带有第一服务标识的第一调用请求时,第三应用需要利用第二服务对应的服务数据和第三服务对应的服务数据生成第一服务对应的服务数据。若第四应用提供第二服务,第五应用提供第三服务,则第三服务需要调用第四应用的第二服务和第五应用的第三服务,则上述过程中服务调用的链路如图3D所示。
另外,其中步骤302、步骤303、步骤303、步骤305、步骤307和步骤309可以单独实现成为以第一应用为执行主体的服务调用方法。
综上所述,本发明实施例中提供的服务调用系统,通过第二应用在需要对第三应用的第一服务进行调用时,将携带有第一服务的标识和链路标识的第一调用请求发送至第一应用,由第一应用将第一调用请求转发至第三应用,当第三应用具备第一服务对应的服务数据时,也将携带有服务数据的第一调用应答发送至第一应用,由第一应用将第一调用应答转发至第二应用,由于第二应用在对第三应用的第一服务进行调用时,第二应用与第三应用之间的交互均需要通过第一应用转发,第一应用可对应用间的服务调用进行监控,解决了相关技术中未对应用间的服务调用进行监控,难以获得调用链路的问题,达到了快速获取调用链路的效果。
可选的,第一应用还可统计每个服务调用的响应时长,具体可通过如图3E所示的几个步骤实现。
步骤310a,第一应用记录第一应用向第三应用转发第一调用请求的第一时刻。
步骤310b,第一应用记录接收到第三应用发送的第一调用应答的第二时刻,将第二时刻减去第一时刻,将得到的差值作为第三应用针对第一调用请求的响应时长。
其中,第一调用应答携带的链路标识与第一调用请求中的链路标识相同。
举例来讲,第一应用向第三应用转发第一调用请求的第一时刻为8:15:23,第一调用请求中的链路标识为a,第一应用从第三应用接收到携带有链路标识a的第一调用应答的第二时刻为8:15:25,则第三应用针对第一调用请求的响应时长为2秒。
通过记录第一应用向第三应用转发第一调用请求的第一时刻和记录接收到第三应用发送的第一调用应答的第二时刻,计算出第三应用针对第一调用请求的响应时长,使得服务调用过程中发生故障时,可通过分析响应时长和调用链路快速确定出故障应用。
可选的,第一应用还可以统计每个服务被调用的次数和每个应用的负载情况。
通过统计每个服务被调用的次数和每个应用的负载情况可对服务调用系统中的服务调用进行分析。
可选的,第一应用将同一应用的各个服务接口归为一类。
相应的,第二应用在向第一应用发送第一调用请求前,第二应用将第一服务的标识和提供第一服务的标识的第三应用的标识添加至第一调用请求中。当第一应用接收到第一调用请求时,第一应用从具备第三应用的标识的一类服务接口中确定出具备第一服务的标识的接口。
另外,第一应用获取的服务调用的链路、每个服务被调用的次数、每个应用的负载情况、服务调用的响应时长均可作为分析服务调用系统中服务调用的参考数据,还可作为优化服务调用系统的参考数据。
图4是本发明一个实施例中提供的服务调用装置的框图。如图4所示,该服务调用装置应用于如图1所示的第一应用中,该服务调用装置包括:第一接收模块410、第一查询模块420、第二接收模块430和第一转发模块440。
第一接收模块410,用于接收第二应用发送的第一调用请求,该第一调用请求中携带有第一服务的标识和链路标识。
第一查询模块420,用于查询具备第一服务的标识的服务接口,利用该服务接口将第一调用请求转发至提供第一服务的第三应用,在第一应用中不存在具备链路标识的链路时,按照第二应用、第三应用的顺序生成与该链路标识对应的链路。
第二接收模块430,用于接收第三应用发送的携带有服务数据的第一调用应答,该第一调用应答是第三应用在第三应用具备第一服务对应的服务数据时发送的。
第一转发模块440,用于将第一调用应答转发至第二应用。
在一种可能的实施方式中,该服务调用装置,还包括:
第三接收模块,用于接收第三应用发送的携带有该链路标识和第二服务的标识的第二调用请求,该第二调用请求是第三应用在第三应用需要调用第二服务以获取第一服务对应的服务数据时发送的。
第二查询模块,用于查询具备第二服务的标识的服务接口,利用该服务接口将第二调用请求转发至提供第二服务的第四应用,将第四应用添加至与链路标识对应的链路中第三应用的后面;
第四接收模块,用于接收第四应用发送的携带有服务数据的第二调用应答,该第二调用应答是第四应用在第四应用具备第二服务对应的服务数据时发送的。
第二转发模块,用于将第二调用应答转发至第三应用。
在一种可能的实施方式中,该服务调用装置,还包括:记录模块和计算模块。
记录模块,用于记录第一应用向第三应用转发第一调用请求的第一时刻。
计算模块,用于记录接收到第三应用发送的第一调用应答的第二时刻,将第二时刻减去记录模块记录的第一时刻,将得到的差值作为第三应用针对第一调用请求的响应时长。
综上所述,本发明实施例中提供的服务调用装置,第一应用通过在第二应用和第三应用之间转发第一调用请求和第一调用应答,实现了对应用间服务调用的监控,可获知第一应用和第三应用之间的调用关系,解决了相关技术中未对应用间的服务调用进行监控,难以获得调用链路的问题,达到了快速获取调用链路的效果。
需要说明的是:上述实施例中提供的服务调用装置在进行服务调用时,仅以上述各功能模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能模块完成,即将第一应用的内部结构划分成不同的功能模块,以完成以上描述的全部或者部分功能。另外,上述实施例提供的服务调用装置与服务调用方法实施例属于同一构思,其具体实现过程详见方法实施例,这里不再赘述。
除非另作定义,此处使用的技术术语或者科学术语应当为本发明所属领域内具有一般技能的人士所理解的通常意义。本发明专利申请说明书以及权利要求书中使用的“第一”、“第二”、“第三”、“第四”以及类似的词语并不表示任何顺序、数量或者重要性,而只是用来区分不同的组成部分或对象。同样,“一个”或者“一”等类似词语也不表示数量限制,而是表示存在至少一个。“连接”或者“相连”等类似的词语并非限定于物理的或者机械的连接,而是可以包括电性的连接,不管是直接的还是间接的。
上述本发明实施例序号仅仅为了描述,不代表实施例的优劣。
本领域普通技术人员可以理解实现上述实施例的全部或部分步骤可以通过硬件来完成,也可以通过程序来指令相关的硬件完成,所述的程序可以存储于一种计算机可读存储介质中,上述提到的存储介质可以是只读存储器,磁盘或光盘等。
以上所述仅为本发明的较佳实施例,并不用以限制本发明,凡在本发明的精神和原则之内,所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。