CN108958949B - 应用程序的调用方法及系统 - Google Patents
应用程序的调用方法及系统 Download PDFInfo
- Publication number
- CN108958949B CN108958949B CN201810502325.8A CN201810502325A CN108958949B CN 108958949 B CN108958949 B CN 108958949B CN 201810502325 A CN201810502325 A CN 201810502325A CN 108958949 B CN108958949 B CN 108958949B
- Authority
- CN
- China
- Prior art keywords
- program
- routing rule
- state
- calling
- processor
- 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.)
- Active
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/46—Multiprogramming arrangements
- G06F9/54—Interprogram communication
- G06F9/547—Remote procedure calls [RPC]; Web services
Abstract
本发明适用于通信技术领域,提供了一种应用程序的调用方法及系统,通过处理器使用统一servlet接口接收客户端发送的请求数据;解析请求数据,以获取请求数据中包含的目标应用程序的程序标识;若程序标识对应的程序状态属于预设的状态集合中的一种,则调用路由规则配置器中存储的路由规则集合;在路由规则集合中选择一条包含目标应用程序的程序标识的路由规则作为被选路由规则,并根据被选路由规则中的调用权限,判断目标应用程序是否允许客户端调用;若允许调用,则通过被选路由规则中的访问路径调用目标应用程序,以对请求数据进行处理,以动态调整路由规则,进而根据应用程序的当前状态以及新的路由规则调用应用程序,提高调用的灵活性以及合理性。
Description
技术领域
本发明属于通信技术领域,尤其涉及一种应用程序的调用方法及系统。
背景技术
Web应用系统在提供可访问的应用程序时,一般是在web.xml或者context.xml中配置应用程序的程序标识与各个处理器的映射关系。当Web应用系统接收到请求之后,根据应用程序的程序标识与各个处理器的映射关系,通过各个处理器的接口查找对应的处理器,并将请求转发至对应的处理器中。
但是现有的发送请求至相应的处理器的方法的处理流程较为繁琐,当路由规则发生变化后,难以根据应用程序的设定而进行路由规则的调节。此外在系统运行过程中,当一个处理器内动态添加新的应用程序时,系统收到的请求也无法通过该新添加的应用程序进行处理。
所以应用程序的调用方法存在灵活性差,处理效率低的技术问题。
发明内容
有鉴于此,本发明实施例提供了一种应用程序的调用方法及系统,以解决现有技术在应用程序的调用时存在的灵活性差,处理效率低的问题。
本发明实施例的第一方面提供了一种应用程序的调用方法,包括:
处理器通过统一servlet接口接收客户端发送的请求数据,并建立所述客户端与所述请求数据的对应关系,所述统一servlet接口用于实现多个客户端与一个处理器的数据传输;
所述处理器接收注册器发送的应用程序的程序状态,根据所述程序状态更新所述处理器中存储的状态列表,其中,所述注册器中注册有多个应用程序;
所述处理器解析所述请求数据,以获取所述请求数据中包含的目标应用程序的程序标识,其中,所述多个应用程序包括所述目标应用程序;基于所述状态列表,查询所述程序标识对应的程序状态是否属于预设的状态集合中的一种,所述状态列表包括所述程序标识与所述程序状态的对应关系;
若所述程序标识对应的所述程序状态属于所述预设的状态集合中的一种,所述处理器调用路由规则配置器中存储的路由规则集合,所述路由规则集合中的路由规则包括程序标识、调用权限以及访问路径的对应关系;
所述处理器在所述路由规则集合中选择一条包含所述目标应用程序的程序标识的路由规则作为被选路由规则,并根据所述被选路由规则中的调用权限,判断所述目标应用程序是否允许所述客户端调用;
若所述目标应用程序允许所述客户端调用,则所述处理器通过所述被选路由规则中的访问路径调用所述目标应用程序,以对所述请求数据进行处理。
本发明实施例的第二方面提供了应用程序的调用系统,包括:处理器、路由规则配置器以及注册器;
通过统一servlet接口接收客户端发送的请求数据,并建立所述客户端与所述请求数据的对应关系,所述统一servlet接口用于实现多个客户端与一个处理器的数据传输;
接收注册器发送的应用程序的程序状态,根据所述程序状态更新所述处理器中存储的状态列表,其中,所述注册器中注册有多个应用程序;
解析所述请求数据,以获取所述请求数据中包含的目标应用程序的程序标识,其中,所述多个应用程序包括所述目标应用程序;基于所述状态列表,查询所述程序标识对应的程序状态是否属于预设的状态集合中的一种,所述状态列表包括所述程序标识与所述程序状态的对应关系;
若所述程序标识对应的所述程序状态属于所述预设的状态集合中的一种,则调用路由规则配置器中存储的路由规则集合,所述路由规则集合中的路由规则包括程序标识、调用权限以及访问路径的对应关系;
在所述路由规则集合中选择一条包含所述目标应用程序的程序标识的路由规则作为被选路由规则,并根据所述被选路由规则中的调用权限,判断所述目标应用程序是否允许所述客户端调用;
若所述目标应用程序允许所述客户端调用,则通过所述被选路由规则中的访问路径调用所述目标应用程序,以对所述请求数据进行处理。
在本发明实施例中,通过处理器使用统一servlet接口接收客户端发送的请求数据;处理器解析请求数据,以获取请求数据中包含的目标应用程序的程序标识;若程序标识对应的程序状态属于预设的状态集合中的一种,则处理器调用路由规则配置器中存储的路由规则集合;处理器在路由规则集合中选择一条包含目标应用程序的程序标识的路由规则作为被选路由规则,并根据被选路由规则中的调用权限,判断目标应用程序是否允许客户端调用;若允许调用,则处理器通过被选路由规则中的访问路径调用目标应用程序,以对请求数据进行处理,以动态调整路由规则,进而根据应用程序的当前状态以及新的路由规则调用应用程序,提高调用的灵活性以及合理性。
附图说明
为了更清楚地说明本发明实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1是本发明实施例一提供的系统示意图;
图2是本发明实施例一提供的应用程序的调用方法的实现流程图;
图3是本发明实施例二提供的应用程序的调用方法的实现流程图;
图4是本发明实施例三提供的应用程序的调用方法的实现流程图。
具体实施方式
以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本发明实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本发明。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本发明的描述。
为了说明本发明所述的技术方案,下面通过具体实施例来进行说明。
实施例一
现有的发送请求至相应的处理器的方法存在如下三点问题:第一点,路由规则是预先配置在web.xml或者context.xml等文件中的,所以难以应对实际情况的变化,难以根据应用程序的设定而进行路由规则的调节。第二点,在系统运行过程中,由于一个处理器中只存储部分的应用程序,而每个处理器都有其对应的不同的接口,所以系统在分析出请求中的应用程序后,需要先确定处理器的接口,再通过处理器分析具体需要查找的应用程序,所以处理流程较为繁琐。第三点:系统中有多个处理器,而不同的处理器对应不同的接口还会导致:在系统运行过程中,当一个处理器内动态添加新的应用程序时,由于系统无法分析出该新添加的应用程序可以通过哪个接口调用,因此系统收到的请求也无法通过该新添加的应用程序进行处理。
为了解决上述问题,本发明实施例提供了一个应用程序的调用方法,为了更好的说明该方法,首先对该方法所涉及的系统架构进行介绍。图1示出了本发明实施例一提供的系统示意图,详述如下:
本发明实施例提供的方法主要涉及四个端,分别是客户端、处理器、路由规则配置器以及注册器。其中,客户端用于接收客户输入的请求数据,这些请求数据中包含了客户希望调用的应用程序的程序标识,可以理解地,在本发明实施例中,程序标识用于唯一确定一个应用程序。在本发明实施例中,客户端是整个应用程序的调用方法的发起者。处理器用于解析请求数据,并根据当前的限制条件调用应用程序,限制条件包括:应用程序状态以及路由规则等。路由规则配置器可以根据工程师的设定修改各个路由规则,也可以根据应用程序的调用权限的调整自动修改路由规则。可以理解地,路由规则配置器内动态更新并存储各种路由规则,帮助处理器确定各个应用程序的访问路径。注册器,用于注册应用程序,还用于接收应用程序发起的事件并确定应用程序的状态,为处理器提供是否调用各个应用程序的数据支持。
值得注意地,在本发明实施例中,客户端和处理器之间通过一个统一servlet接口进行连接,使得客户端不需要提前确定应用程序对应的接口,即可将请求数据通过统一servlet接口传输至处理器。可以理解地,由于在整个系统过程中,注册器可能注册新的应用程序,而新的应用程序往往是无法确定接口数据的,所以通过本发明实施例的方法,可以使客户端调用在本次系统运行过程中新添加的应用程序,从而提高应用程序调用的灵活性和实效性。
图2示出了本发明实施例一提供的应用程序的调用方法的实现流程,该方法流程包括步骤S101至S107。各步骤的具体实现原理如下。
S101:处理器通过统一servlet接口接收客户端发送的请求数据,并建立所述客户端与所述请求数据的对应关系,所述统一servlet接口用于实现多个客户端与一个处理器的数据传输。
值得注意地,本发明实施例主要介绍处理器在整个应用程序的调用方法中的工作流程。
可以理解地,处理器建立客户端与请求数据的对应关系是为了在查找到对应的应用程序后,方便客户端对该应用程序的调用。
可以理解地,由于在整个系统过程中,注册器可能注册新的应用程序,而新的应用程序往往是无法确定接口数据的,所以通过统一servlet接口,可以使得客户端在将数据发送至处理器之前无需提前确定servlet接口,一方面可以简化流程,另一方面可以使客户端调用在本次系统运行过程中新添加的应用程序,从而提高应用程序调用的灵活性和实效性。
S102,所述处理器接收注册器发送的应用程序的程序状态,根据所述程序状态更新所述处理器中存储的状态列表,其中,所述注册器中注册有多个应用程序。
此外,通过图1可知,一个处理器会与一个注册器完成数据交互。可选地,处理器可以从注册器获取一个以上应用程序的事件信息,这些事件信息中包括程序状态,例如:程序开启、程序休眠、程序满载以及程序关闭等。
S103,所述处理器解析所述请求数据,以获取所述请求数据中包含的目标应用程序的程序标识,其中,所述多个应用程序包括所述目标应用程序;基于所述状态列表,查询所述程序标识对应的程序状态是否属于预设的状态集合中的一种,所述状态列表包括所述程序标识与所述程序状态的对应关系。
在本发明实施例中,处理器通过解析出请求数据中的程序标识,确定客户端的用户希望调用的应用程序并进一步确定该应用程序的程序状态,以判断该应用程序的程序状态是否符合要求。
可选地,可以在处理器中设定一个状态列表,状态列表中包含各个程序标识与程序状态的对应关系。值得注意地,状态列表中的数据是会根据注册器发送至处理器的数据而进行动态调整的。
可选地,每当在注册器中注册一个新的应用程序,注册器就会将该应用程序的程序标识发送至处理器,并且有可能将初始的程序状态一并发送至处理器。处理器在接收到注册器发送的新的应用程序的程序标识后,会在所述状态列表中添加该应用程序的程序标识,以增加一条新的数据。若处理器同时接到该应用程序的初始的程序状态,则将该初始的程序状态与程序标识的对应关系添加进所述状态列表;若处理器未在接收到程序标识的同时接收到该应用程序的初始的程序状态,则由处理器为该程序标识分配一个预设的程序状态,并添加进状态列表中。
S104,若所述程序标识对应的所述程序状态属于所述预设的状态集合中的一种,所述处理器调用路由规则配置器中存储的路由规则集合,所述路由规则集合中的路由规则包括程序标识、调用权限以及访问路径的对应关系。
示例性地,假设预设的状态集合中的元素为:程序开启以及程序运行,则只有当正在被处理的请求数据的程序标识对应的程序状态为程序开启或程序运行时,处理器才会调用路由规则配置器中存储的路由规则集合,以进一步查找到该应用程序。
可选地,若所述程序标识对应的程序状态不属于预设的状态集合中的一种,则向客户端返回调用异常通知。
在本发明实施例中,通过在程序标识对应的程序状态属于预设的状态集合中的一种时才从路由规则配置器内调用数据,有利于节省不必要的操作步骤,提高在数据调用异常时的通知效率。
S105,所述处理器在所述路由规则集合中选择一条包含所述目标应用程序的程序标识的路由规则作为被选路由规则,并根据所述被选路由规则中的调用权限,判断所述目标应用程序是否允许所述客户端调用。
在本发明实施例中,路由规则集合中的各条路由规则包含的程序标识均不相同,因此根据目标应用程序的程序标识,在路由规则集合中只会确定出一条路由规则。示例性地,一个路由规则可以为:Rule1={id:1,name:sub1,path:/s1,auth:*},其中,id表示该路由规则的标号;name表示程序标识;path表示访问路径;auth表示调用权限。
可以理解地,在本发明实施例中,调用权限表示一个应用程序允许哪个或哪类客户端调用。示例性地,根据Rule1,该路由规则对应的调用权限为:auth:*,即任一用户都可以调用应用程序sub1。假如,根据Rule2,该路由规则对应的调用权限为:auth:lab1,则表示只有客户端的标签为lab1的客户端才可以调用该应用程序。
可以理解地,由于在S101中,已经建立了客户端与请求数据的对应关系,所以在本步骤中,可以判断出请求数据中包含的程序标识对应的应用程序是否允许该客户端调用。
S106,若所述目标应用程序允许所述客户端调用,则所述处理器通过所述被选路由规则中的访问路径调用所述目标应用程序,以对所述请求数据进行处理。
S107,若所述目标应用程序不允许所述客户端调用,则处理器向客户端返回调用异常通知。
在本发明实施例中,通过处理器使用统一servlet接口接收客户端发送的请求数据;处理器解析请求数据,以获取请求数据中包含的目标应用程序的程序标识;若程序标识对应的程序状态属于预设的状态集合中的一种,则处理器调用路由规则配置器中存储的路由规则集合;处理器在路由规则集合中选择一条包含目标应用程序的程序标识的路由规则作为被选路由规则,并根据被选路由规则中的调用权限,判断目标应用程序是否允许客户端调用;若允许调用,则处理器通过被选路由规则中的访问路径调用目标应用程序,以对请求数据进行处理,以提高应用程序调用的合理性。
实施例二
图3示出了本发明实施例二提供的应用程序的调用方法的实现流程图,该方法流程包括步骤S201至S205。各步骤的具体实现原理如下。
在实施例一中,以处理器为执行主体描述了应用程序的调用方法所涉及的整体流程,在本发明实施例中,主要以注册器为执行主体,重点介绍基于注册器实现的应用程序的动态增加,以及应用程序的程序状态和调用权限调整的流程和原理,详述如下:
S201,所述注册器解析所述应用程序生成的应用事件,以获取所述应用事件中包含的一个以上的参数信息,所述参数信息包括程序标识、当前的调用权限以及当前的程序状态的对应关系。
在本发明实施例中,每当一个应用程序改变程序状态时就会生成一个应用事件,而程序状态的改变可以根据工程师的手动调节,也可以根据应用程序的代码设计而自动进行。
可以理解地,当一个应用程序的程序状态或调用权限改变后,改变后的调用权限以及改变后的程序状态,就会作为当前的调用权限以及当前的程序状态。
S202,所述注册器调取所述程序标识对应的历史注册信息,所述历史注册信息包括所述程序标识对应的原调用权限以及原程序状态。
可以理解地,当一个应用程序的程序状态或调用权限改变后,改变前的调用权限以及改变前的程序状态,就作为原调用权限以及原程序状态,并记录在历史信息集合中,所述历史信息集合包括多个程序标识的历史注册信息,各个历史注册信息包括程序标识对应的原调用权限以及原程序状态。
S203,所述注册器根据所述历史注册信息判断所述程序标识对应的调用权限以及程序状态是否改变。
S204,若所述程序标识对应的调用权限改变,则所述注册器将发生调用权限改变的程序标识作为第一更新程序标识,并将所述第一更新程序标识与当前的调用权限的对应关系发送至所述路由规则配置器。
在本发明实施例中,路由规则配置器只决定各个路由规则中的访问路径,而不能决定调用权限。具体地,调用权限是由注册器根据应用事件而动态确定,并发送至路由规则配置器的。
可以理解地,在本发明实施例中,应用程序的调用权限可以在任意时刻进行改变,在改变后,注册器都会检测出当前的调用权限并主动发送至路由规则配置器,从而支持路由规则的动态改变。
S205,若所述程序标识对应的程序状态改变,则所述注册器将发生程序状态改变的程序标识作为第二更新程序标识,并在接收到所述处理器发送的轮询消息后,将所述第二更新程序标识与当前的程序状态的对应关系发送至所述处理器。
可选地,在本发明实施例中,不同于将改变后的调用权限主动发送至路由规则配置器,注册器是在处理器轮询后,才将更新程序标识与当前的程序状态的对应关系发送至所述处理器,以此减少处理器的非必要的数据处理量。
进一步地,在本发明实施例中,注册器还支持应用程序的动态增加,可以理解地,每增加一个新的应用程序,也就相当于一个旧的应用程序生成一个应用事件。注册器的处理新输入的应用程序的流程包括:
所述注册器接收并注册应用程序;所述注册器接收所述应用程序对应的初始的调用权限;所述注册器为所述应用程序分配初始的程序状态。
进一步地,本发明实施例还包括:
处理器轮询所述注册器;所述处理器根据所述注册器发送的所述第二更新程序标识与当前的程序状态的对应关系,对所述状态列表进行修改。
在本发明实施例中,通过上述方法可以动态的增加应用程序,注册器也会根据新增加的应用程序,或者根据应用程序的调用权限和程序状态的改变,动态地对处理器以及路由规则配置器中的数据进行修改,从而提高应用程序的调用灵活性。
实施例三
图4示出了本发明实施例三提供的应用程序的调用方法的实现流程图,该方法流程包括步骤S301至S303。各步骤的具体实现原理如下。
在本发明实施例中,主要以路由规则配置器为执行主体,详述如下:
S301,所述路由规则配置器通过所述统一servlet接口接收动态路由协议,并基于所述动态路由协议确定各个注册于所述注册器的应用程序的访问路径,以建立程序标识与访问路径的对应关系。
可以理解地,在本发明实施例中,统一servlet接口不仅可以用于实现客户端与处理器之前的数据交互,还可以使路由规则配置接收到客户端或其他设备发送动态路由协议。
由于通过动态路由协议确定应用程序的访问路径属于本领域的公知常识,所以具体的访问路径的确定方法,不在此赘述。
S302,所述路由规则配置器接收所述注册器发送的程序标识与初始的调用权限的对应关系,并基于所述程序标识与访问路径的对应关系,以及各个程序标识对应的初始的调用权限,生成初始的路由规则集合。
在本发明实施例中,路由规则配置器将访问路径和由注册器确定的调用权限进行组合,生成路由规则集合。
S303,所述路由规则配置器在接收到所述第一更新程序标识与当前的调用权限的对应关系后,对路由规则集合进行动态修改。
在本发明实施例中,路由规则配置器实时根据注册器发送的应用程序的调用权限,动态地对数据进行修改,从而提高应用程序的调用灵活性。
实施例四
对应于上文实施例所述的应用程序的调用方法,实施例四重点介绍应用程序的调用系统,该应用程序的调用系统的系统示意图如图1所示,详述如下:
该系统包括:处理器、路由规则配置器以及注册器。
所述处理器,用于通过统一servlet接口接收客户端发送的请求数据,并建立所述客户端与所述请求数据的对应关系,所述统一servlet接口用于实现多个客户端与一个处理器的数据传输;
所述处理器,还用于接收注册器发送的应用程序的程序状态,根据所述程序状态更新所述处理器中存储的状态列表,其中,所述注册器中注册有多个应用程序。
所述处理器,还用于解析所述请求数据,以获取所述请求数据中包含的目标应用程序的程序标识,其中,所述多个应用程序包括所述目标应用程序;基于所述状态列表,查询所述程序标识对应的程序状态是否属于预设的状态集合中的一种,所述状态列表包括所述程序标识与所述程序状态的对应关系;
所述处理器,还用于若所述程序标识对应的所述程序状态属于所述预设的状态集合中的一种,则调用路由规则配置器中存储的路由规则集合,所述路由规则集合中的路由规则包括程序标识、调用权限以及访问路径的对应关系;
所述处理器,还用于在所述路由规则集合中选择一条包含所述目标应用程序的程序标识的路由规则作为被选路由规则,并根据所述被选路由规则中的调用权限,判断所述目标应用程序是否允许所述客户端调用;
所述处理器,还用于若所述目标应用程序允许所述客户端调用,则通过所述被选路由规则中的访问路径调用所述目标应用程序,以对所述请求数据进行处理。
可选地,该系统还包括:
所述注册器,还用于解析所述应用程序生成的应用事件,以获取所述应用事件中包含的一个以上的参数信息,所述参数信息包括程序标识、当前的调用权限以及当前的程序状态的对应关系;
所述注册器,还用于调取所述程序标识对应的历史注册信息,所述历史注册信息包括所述程序标识对应的原调用权限以及原程序状态,
所述注册器,还用于根据所述历史注册信息判断所述程序标识对应的调用权限以及程序状态是否改变;
所述注册器,还用于若所述程序标识对应的调用权限改变,则将发生调用权限改变的程序标识作为更新程序标识,并将所述更新程序标识与当前的调用权限的对应关系发送至所述路由规则配置器;
所述注册器,还用于若所述程序标识对应的程序状态改变,则将发生程序状态改变的程序标识作为更新程序标识,并在接收到所述处理器发送的轮询消息后,将所述更新程序标识与当前的程序状态的对应关系发送至所述处理器。
可选地,该系统还包括:
所述注册器,还用于接收并注册用户输入的应用程序;
所述注册器,还用于接收所述应用程序对应的初始的调用权限;
所述注册器,还用于为所述应用程序分配一个初始的程序状态。
可选地,该系统还包括:
所述路由规则配置器,用于通过所述统一servlet接口接收动态路由协议,并基于所述动态路由协议确定各个注册于所述注册器的应用程序的访问路径,以建立程序标识与访问路径的对应关系;
所述路由规则配置器,还用于接收所述注册器发送的程序标识与初始的调用权限的对应关系,并基于所述程序标识与访问路径的对应关系,以及各个程序标识对应的初始的调用权限,生成初始的路由规则集合;
所述路由规则配置器,还用于在接收到所述更新程序标识与当前的调用权限的对应关系后,对路由规则集合进行动态修改。
可选地,该系统还包括:
所述处理器,还用于轮询所述注册器;
所述处理器,还用于根据所述注册器发送的更新程序标识与当前的程序状态的对应关系,对所述状态列表进行修改。
在本发明实施例中,通过处理器使用统一servlet接口接收客户端发送的请求数据;处理器解析请求数据,以获取请求数据中包含的目标应用程序的程序标识;若程序标识对应的程序状态属于预设的状态集合中的一种,则处理器调用路由规则配置器中存储的路由规则集合;处理器在路由规则集合中选择一条包含目标应用程序的程序标识的路由规则作为被选路由规则,并根据被选路由规则中的调用权限,判断目标应用程序是否允许客户端调用;若允许调用,则处理器通过被选路由规则中的访问路径调用目标应用程序,以对请求数据进行处理,以动态调整路由规则,进而根据应用程序的当前状态以及新的路由规则调用应用程序,提高调用的灵活性以及合理性。
所属领域的技术人员可以清楚地了解到,在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部单元来实现本实施例方案的目的。
另外,在本发明各个实施例中的各功能单元可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中。上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。
所述集成的模块/单元如果以软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明实现上述实施例方法中的全部或部分流程,也可以通过计算机程序来指令相关的硬件来完成,所述的计算机程序可存储于一计算机可读存储介质中,该计算机程序在被处理器执行时,可实现上述各个方法实施例的步骤。
以上所述实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围,均应包含在本发明的保护范围之内。
Claims (8)
1.一种应用程序的调用方法,其特征在于,包括:
处理器通过统一servlet接口接收客户端发送的请求数据,并建立所述客户端与所述请求数据的对应关系,所述统一servlet接口用于实现多个客户端与一个处理器的数据传输;
所述处理器接收注册器发送的应用程序的程序状态,根据所述程序状态更新所述处理器中存储的状态列表,其中,所述注册器中注册有多个应用程序;
所述处理器解析所述请求数据,以获取所述请求数据中包含的目标应用程序的程序标识,其中,所述多个应用程序包括所述目标应用程序;基于所述状态列表,查询所述程序标识对应的程序状态是否属于预设的状态集合中的一种,所述状态列表包括所述程序标识与所述程序状态的对应关系;
若所述程序标识对应的所述程序状态属于所述预设的状态集合中的一种,所述处理器调用路由规则配置器中存储的路由规则集合,所述路由规则集合中的路由规则包括程序标识、调用权限以及访问路径的对应关系;
所述处理器在所述路由规则集合中选择一条包含所述目标应用程序的程序标识的路由规则作为被选路由规则,并根据所述被选路由规则中的调用权限,判断所述目标应用程序是否允许所述客户端调用;
若所述目标应用程序允许所述客户端调用,则所述处理器通过所述被选路由规则中的访问路径调用所述目标应用程序,以对所述请求数据进行处理;
所述注册器解析所述应用程序生成的应用事件,以获取所述应用事件中包含的一个以上的参数信息,所述参数信息包括程序标识、当前的调用权限以及当前的程序状态的对应关系;
所述注册器调取所述程序标识对应的历史注册信息,所述历史注册信息包括所述程序标识对应的原调用权限以及原程序状态;
所述注册器根据所述历史注册信息判断所述程序标识对应的调用权限以及程序状态是否改变;
若所述程序标识对应的调用权限改变,则所述注册器将发生调用权限改变的程序标识作为第一更新程序标识,并将所述第一更新程序标识与当前的调用权限的对应关系发送至所述路由规则配置器;
若所述程序标识对应的程序状态改变,则所述注册器将发生程序状态改变的程序标识作为第二更新程序标识,并在接收到所述处理器发送的轮询消息后,将所述第二更新程序标识与当前的程序状态的对应关系发送至所述处理器。
2.如权利要求1所述的应用程序的调用方法,其特征在于,还包括:
所述注册器接收并注册应用程序;
所述注册器接收所述应用程序对应的初始的调用权限;
所述注册器为所述应用程序分配初始的程序状态。
3.如权利要求1所述的应用程序的调用方法,其特征在于,还包括:
所述路由规则配置器通过所述统一servlet接口接收动态路由协议,并基于所述动态路由协议确定各个注册于所述注册器的应用程序的访问路径,以建立程序标识与访问路径的对应关系;
所述路由规则配置器接收所述注册器发送的程序标识与初始的调用权限的对应关系,并基于所述程序标识与访问路径的对应关系,以及各个程序标识对应的初始的调用权限,生成初始的路由规则集合;
所述路由规则配置器在接收到所述第一更新程序标识与当前的调用权限的对应关系后,对路由规则集合进行动态修改。
4.如权利要求1所述的应用程序的调用方法,其特征在于,还包括:
所述处理器轮询所述注册器;
所述处理器根据所述注册器发送的所述第二更新程序标识与当前的程序状态的对应关系,对所述状态列表进行修改。
5.一种应用程序的调用系统,其特征在于,包括:处理器、路由规则配置器以及注册器;所述处理器用于:
通过统一servlet接口接收客户端发送的请求数据,并建立所述客户端与所述请求数据的对应关系,所述统一servlet接口用于实现多个客户端与一个处理器的数据传输;
接收注册器发送的应用程序的程序状态,根据所述程序状态更新所述处理器中存储的状态列表,其中,所述注册器中注册有多个应用程序;
解析所述请求数据,以获取所述请求数据中包含的目标应用程序的程序标识,其中,所述多个应用程序包括所述目标应用程序;基于所述状态列表,查询所述程序标识对应的程序状态是否属于预设的状态集合中的一种,所述状态列表包括所述程序标识与所述程序状态的对应关系;
若所述程序标识对应的所述程序状态属于所述预设的状态集合中的一种,则调用路由规则配置器中存储的路由规则集合,所述路由规则集合中的路由规则包括程序标识、调用权限以及访问路径的对应关系;
在所述路由规则集合中选择一条包含所述目标应用程序的程序标识的路由规则作为被选路由规则,并根据所述被选路由规则中的调用权限,判断所述目标应用程序是否允许所述客户端调用;
若所述目标应用程序允许所述客户端调用,则通过所述被选路由规则中的访问路径调用所述目标应用程序,以对所述请求数据进行处理;
所述注册器用于:解析所述应用程序生成的应用事件,以获取所述应用事件中包含的一个以上的参数信息,所述参数信息包括程序标识、当前的调用权限以及当前的程序状态的对应关系;
调取所述程序标识对应的历史注册信息,所述历史注册信息包括所述程序标识对应的原调用权限以及原程序状态,
根据所述历史注册信息判断所述程序标识对应的调用权限以及程序状态是否改变;
若所述程序标识对应的调用权限改变,则将发生调用权限改变的程序标识作为第一更新程序标识,并将所述第一更新程序标识与当前的调用权限的对应关系发送至所述路由规则配置器;
若所述程序标识对应的程序状态改变,则将发生程序状态改变的程序标识作为第二更新程序标识,并在接收到所述处理器发送的轮询消息后,将所述第二更新程序标识与当前的程序状态的对应关系发送至所述处理器。
6.如权利要求5所述的应用程序的调用系统,其特征在于,所述注册器还用于:
接收并注册应用程序;
接收所述应用程序对应的初始的调用权限;
为所述应用程序分配初始的程序状态。
7.如权利要求6所述的应用程序的调用系统,其特征在于,所述路由规则配置器,用于:
通过所述统一servlet接口接收动态路由协议,并基于所述动态路由协议确定各个注册于所述注册器的应用程序的访问路径,以建立程序标识与访问路径的对应关系;
接收所述注册器发送的程序标识与初始的调用权限的对应关系,并基于所述程序标识与访问路径的对应关系,以及各个程序标识对应的初始的调用权限,生成初始的路由规则集合;
在接收到所述第一更新程序标识与当前的调用权限的对应关系后,对路由规则集合进行动态修改。
8.如权利要求6所述的应用程序的调用系统,其特征在于,所述处理器用于:
轮询所述注册器;
根据所述注册器发送的所述第二更新程序标识与当前的程序状态的对应关系,对所述状态列表进行修改。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810502325.8A CN108958949B (zh) | 2018-05-23 | 2018-05-23 | 应用程序的调用方法及系统 |
PCT/CN2018/097316 WO2019223099A1 (zh) | 2018-05-23 | 2018-07-27 | 应用程序的调用方法及系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN201810502325.8A CN108958949B (zh) | 2018-05-23 | 2018-05-23 | 应用程序的调用方法及系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN108958949A CN108958949A (zh) | 2018-12-07 |
CN108958949B true CN108958949B (zh) | 2023-04-14 |
Family
ID=64499484
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN201810502325.8A Active CN108958949B (zh) | 2018-05-23 | 2018-05-23 | 应用程序的调用方法及系统 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN108958949B (zh) |
WO (1) | WO2019223099A1 (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN110442326B (zh) * | 2019-08-11 | 2023-07-14 | 西藏宁算科技集团有限公司 | 一种基于Vue简化前后端分离权限控制的方法及其系统 |
CN110825796B (zh) * | 2019-10-09 | 2021-01-19 | 车轮互联科技(上海)股份有限公司 | 数据获取的方法、装置及系统 |
CN111414391A (zh) * | 2020-03-25 | 2020-07-14 | 平安资产管理有限责任公司 | 一种访问多数据源的方法及系统 |
CN111711569A (zh) * | 2020-06-16 | 2020-09-25 | 普元信息技术股份有限公司 | 企业分布式应用中实现请求动态路由的系统及其方法 |
CN114531492A (zh) * | 2020-11-05 | 2022-05-24 | 网联清算有限公司 | 服务调用方法、装置、存储介质及计算机设备 |
CN112783978A (zh) * | 2021-01-28 | 2021-05-11 | 北京东方优播网络科技有限公司 | 数据传输方法、装置、计算机系统和存储介质 |
CN113645060B (zh) * | 2021-06-30 | 2022-11-04 | 苏州浪潮智能科技有限公司 | 一种网卡配置方法、数据处理方法及装置 |
Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105824598A (zh) * | 2016-02-29 | 2016-08-03 | 维沃移动通信有限公司 | 一种音效管理方法及移动终端 |
CN105955792A (zh) * | 2016-06-29 | 2016-09-21 | 北京金山安全软件有限公司 | 一种启动控制方法、装置及设备 |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102902654B (zh) * | 2012-09-03 | 2015-08-26 | 东软集团股份有限公司 | 异构平台间数据联动方法及装置 |
CN104539585B (zh) * | 2014-12-05 | 2017-12-05 | 北京奇虎科技有限公司 | 浏览器防注入的方法、浏览器客户端和装置 |
CN105955782B (zh) * | 2016-05-09 | 2020-02-07 | 北京奇虎科技有限公司 | 应用程序运行控制的方法及装置 |
US11128734B2 (en) * | 2016-05-10 | 2021-09-21 | Veniam, Inc. | Configuring a communication system using analytics of a restful API in a network of moving things |
-
2018
- 2018-05-23 CN CN201810502325.8A patent/CN108958949B/zh active Active
- 2018-07-27 WO PCT/CN2018/097316 patent/WO2019223099A1/zh active Application Filing
Patent Citations (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105824598A (zh) * | 2016-02-29 | 2016-08-03 | 维沃移动通信有限公司 | 一种音效管理方法及移动终端 |
CN105955792A (zh) * | 2016-06-29 | 2016-09-21 | 北京金山安全软件有限公司 | 一种启动控制方法、装置及设备 |
Also Published As
Publication number | Publication date |
---|---|
CN108958949A (zh) | 2018-12-07 |
WO2019223099A1 (zh) | 2019-11-28 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN108958949B (zh) | 应用程序的调用方法及系统 | |
CN110636115B (zh) | 跨云服务调用的处理方法、网关服务器及请求者服务器 | |
CN110351283B (zh) | 一种数据传输方法、装置、设备及存储介质 | |
JP4583452B2 (ja) | サーバ間の直接通信を用いることによってノード構成におけるサーバ・イベントを監視するための方法及びシステム | |
CN107277029B (zh) | 一种远程过程调用的方法、装置及计算机设备 | |
US9021005B2 (en) | System and method to provide remote device management for mobile virtualized platforms | |
EP2216718A1 (en) | Virtual machine address management | |
US20040158608A1 (en) | High availability presence engine for instant messaging | |
US20110145408A1 (en) | Service enablement/disablement based on service relationships | |
CN110995873A (zh) | 网关服务业务接口发现方法、系统、电子设备及存储介质 | |
CN110659109A (zh) | 一种openstack集群虚拟机监控系统及方法 | |
EP3703337A1 (en) | Mobile edge host-machine service notification method and apparatus | |
CN110049031B (zh) | 一种接口安全认证方法及服务器、认证中心服务器 | |
JP2006277243A (ja) | プレゼンスサービスシステム、プレゼンス装置、プレゼンスサービス方法、及びプログラム | |
CN113556359B (zh) | 一种通讯协议转换方法、设备、系统及网关设备 | |
CN108768727B (zh) | 访问第三方服务的方法、电子装置及可读存储介质 | |
CN114285852A (zh) | 基于多级服务平台的服务调用方法及装置 | |
CN108111496B (zh) | 为dubbo分布式应用暴露http服务的方法、装置及系统 | |
CN112351077B (zh) | 一种应用服务运行方法、系统、装置及存储介质 | |
US20080281969A1 (en) | Controlling access to versions of application software by a server, based on site ID | |
CN116233217B (zh) | 基于路由的页面跳转方法、装置、电子设备及存储介质 | |
CN109324914B (zh) | 服务调用方法、服务调用装置及中心服务器 | |
EP3863312B1 (en) | Api publishing method and device | |
CN113726902B (zh) | 微服务的调用方法、系统、服务器、设备和存储介质 | |
US7940754B2 (en) | Message formation and distribution in heterogeneous networks |
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 |