发明内容
本发明的一个目的是提供一种权限管理的新技术方案。
根据本发明的第一方面,提供了一种权限管理方法,包括:
步骤S110,由权限管理服务器通过消息队列获取目标业务服务器发送的角色数据和资源数据,并在界面中展示所述角色数据和所述资源数据;其中,所述角色数据为反映使用所述目标业务服务器的角色的数据,所述资源数据为反映所述目标业务服务器所提供的资源的数据;
步骤S120,由所述权限管理服务器获得管理员用户通过所述界面所设定的、所述角色数据和所述资源数据之间的关联关系,其中,所述关联关系反映每个所述角色是否具有访问每个资源的权限;
步骤S130,由所述目标业务服务器获取所述关联关系;
步骤S140,由所述目标业务服务器响应于目标角色的用户针对目标资源所发出的资源访问请求,根据所述关联关系对所述资源访问请求进行处理。
可选的,将所述角色数据和/或所述资源数据作为目标数据,
由权限管理服务器通过消息队列获取目标业务服务器发送的目标数据的步骤包括:
由所述目标业务服务器将所述目标数据发送至消息队列;
由所述消息队列存储所述目标数据,并向所述目标业务服务器返回确认字符;
由所述消息队列向所述权限管理服务器发送所述目标数据;
由所述权限管理服务器在接收到所述目标数据的情况下,向所述消息队列返回确认字符;
由所述消息队列在指定时间内接收到所述权限管理服务器返回的确认字符的情况下,删除所述目标数据;在所述指定时间内未接收到所述权限管理服务器返回的确认字符的情况下,重新向所述权限管理服务器发送所述目标数据。
可选的,所述由所述目标业务服务器获取所述关联关系包括:
由所述权限管理服务器将所述关联关系发送至消息队列;
由所述消息队列存储所述目标数据,并向所述权限管理服务器返回确认字符;
由所述消息队列向所述目标业务服务器发送所述关联关系;
由所述目标业务服务器接收所述消息队列发送的所述关联关系,并在接收到所述关联关系的情况下,向所述消息队列返回确认字符;
由所述消息队列在指定时间内接收到所述目标业务服务器返回的确认字符的情况下,删除所述关联关系;在所述指定时间内未接收到所述目标业务服务器返回的确认字符的情况下,重新向所述目标业务服务器发送所述关联关系。
可选的,所述由所述目标业务服务器获取所述关联关系包括:
由所述权限管理服务器根据所述关联关系,生成反映所述关联关系的文件包;
由所述权限管理服务器将所述文件包上传至指定存储位置上;
由所述目标业务服务器从所述指定位置上下载所述文件包。
可选的,所述方法还包括:
由所述目标业务服务器按照预设的规则对所述角色数据和所述资源数据进行定义。
可选的,所述资源数据包括通用资源数据和特殊资源数据;
所述在界面中展示所述角色数据和所述资源数据包括:在所述界面中展示所述角色数据和所述特殊资源数据;
所述由所述权限管理服务器获得管理员用户通过所述界面所设定的、所述角色数据和所述资源数据之间的关联关系包括:
由所述权限管理服务器获得所述管理员用户通过所述界面所设定的、所述角色数据和所述特殊资源数据之间的关联关系;
由所述权限管理服务器对所述角色数据和所述通用资源数据进行关联,得到所述角色数据和所述通用资源数据之间的关联关系。
可选的,所述由所述权限管理服务器获得所述管理员用户通过所述界面所设定的、所述角色数据和所述特殊资源数据之间的关联关系包括:
对于每一所述角色,由所述权限管理服务器获得所述管理员用户通过所述界面所选定的特殊资源信息,对选定的特殊资源信息与对应的角色数据进行关联,得到对应角色数据和所述特殊资源数据之间的关联关系。
根据本发明的第二方面,提供了一种权限管理服务器,包括
第一存储器和第一处理器,所述第一存储器中存储有第一计算机可读指令,所述第一计算机可读指令被所述第一处理器执行时,使得所述第一处理器执行本发明第一方面所述的由所述权限管理服务器执行的方法步骤。
根据本发明的第三方面,提供了一种业务服务器,包括:
第二存储器和第二处理器,所述第二存储器中存储有第二计算机可读指令,所述第二计算机可读指令被所述第二处理器执行时,使得所述第二处理器执行本发明第一方面所述的由所述目标业务服务器执行的方法步骤。
根据本发明的第四方面,提供了一种计算机可读存储介质,其上存储有计算机程序,所述计算机程序被处理器执行时实现本发明第一方面所述方法的步骤。
本发明的一个有益效果在于,由权限管理服务器通过消息队列获取目标业务服务器发送的角色数据和资源数据,并在界面中进行展示,再获得管理员用户通过该界面所设定的、角色数据和资源数据之间的关联关系;由目标业务服务器获取该关联关系,并响应于目标角色的用户针对目标资源发出的资源访问请求,根据该关联关系对该资源访问请求进行处理。这样,可以目标业务服务器在接收到针对目标资源所发出的资源访问请求时无需访问权限管理服务器,可以降低权限管理服务器的访问压力,还可以使得目标业务服务器与权限管理服务器解耦,以避免在权限管理服务器宕机的情况下,目标业务服务器无法访问任何资源的情况发生。而且,还可以降低硬件成本。
通过以下参照附图对本发明的示例性实施例的详细描述,本发明的其它特征及其优点将会变得清楚。
具体实施方式
现在将参照附图来详细描述本发明的各种示例性实施例。应注意到:除非另外具体说明,否则在这些实施例中阐述的部件和步骤的相对布置、数字表达式和数值不限制本发明的范围。
以下对至少一个示例性实施例的描述实际上仅仅是说明性的,决不作为对本发明及其应用或使用的任何限制。
对于相关领域普通技术人员已知的技术、方法和设备可能不作详细讨论,但在适当情况下,所述技术、方法和设备应当被视为说明书的一部分。
在这里示出和讨论的所有例子中,任何具体值应被解释为仅仅是示例性的,而不是作为限制。因此,示例性实施例的其它例子可以具有不同的值。
应注意到:相似的标号和字母在下面的附图中表示类似项,因此,一旦某一项在一个附图中被定义,则在随后的附图中不需要对其进行进一步讨论。
<硬件配置>
图1为可以应用根据本说明书一个实施例的权限管理方法的一种权限管理系统的组成结构示意图。
如图1所示,本实施例的权限管理系统1000包括权限管理服务器1100、业务服务器1200以及网络1300。
权限管理服务器1100例如可以是刀片权限管理服务器、机架式权限管理服务器等,权限管理服务器1100也可以是部署在云端的权限管理服务器集群,在此不做限定。
如图1所示,权限管理服务器1100可以包括处理器1110、存储器1120、接口装置1130、通信装置1140、显示装置1150和输入装置1160。处理器1110例如可以是中央处理器CPU等。存储器1120例如包括ROM(只读存储器)、RAM(随机存取存储器)、诸如硬盘的非易失性存储器等。接口装置1130例如包括USB接口、串行接口等。通信装置1140例如能够进行有线或无线通信。显示装置1150例如是液晶显示屏。输入装置1160例如可以包括触摸屏、键盘等。
本实施例中,权限管理服务器1100的存储器1120用于存储第一计算机可读指令,该第一计算机可读指令用于控制处理器1110进行操作以执行本说明书任意实施例的权限管理方法。技术人员可以根据本说明书所公开方案设计第一计算机可读指令。第一计算机可读指令如何控制处理器进行操作,这是本领域公知,故在此不再详细描述。
本领域技术人员应当理解,尽管在图1中示出了权限管理服务器1100的多个装置,但是,本说明书实施例的权限管理服务器1100可以仅涉及其中的部分装置,例如,只涉及处理器1110和存储器1120。
业务服务器1200例如可以是刀片权限管理服务器、机架式权限管理服务器、部署在云端的权限管理服务器集群等,也可以是智能手机、便携式电脑、台式计算机、平板电脑等可以支持业务系统运行的任意设备。在此不做限定。
如图1所示,业务服务器1200可以包括处理器1210、存储器1220、接口装置1230、通信装置1240、显示装置1250、输入装置1260、音频输出装置1270、音频输入装置1280,等等。其中,处理器1210可以是中央处理器CPU、微处理器MCU等。存储器1220例如包括ROM(只读存储器)、RAM(随机存取存储器)、诸如硬盘的非易失性存储器等。接口装置1230例如包括USB接口、耳机接口等。通信装置1240例如能够进行有线或无线通信。显示装置1250例如是液晶显示屏、触摸显示屏等。输入装置1260例如可以包括触摸屏、键盘等。业务服务器1200可以通过音频输出装置1270输出音频信息,该音频输出装置1270例如包括扬声器。业务服务器1200可以通过音频拾取装置1280拾取用户输入的语音信息,该音频拾取装置1280例如包括麦克风。
在本实施例中,业务服务器1200的存储器1220用于存储第二计算机可读指令,所述第二计算机可读指令用于控制所述处理器1210进行操作以支持实现根据本说明书任意实施例的权限管理方法。技术人员可以根据本说明书所公开方案设计第二计算机可读指令。第二计算机可读指令如何控制处理器进行操作,这是本领域公知,故在此不再详细描述。
本领域技术人员应当理解,尽管在图1中示出了业务服务器1200的多个装置,但是,本说明书实施例的业务服务器1200可以仅涉及其中的部分装置,例如,只涉及处理器1210、存储器1220、显示装置1250、输入装置1260等。
通信网络1300可以是无线网络也可以是有线网络,可以是局域网也可以是广域网。业务服务器1200可以通过通信网络1300与权限管理服务器1100进行通信。
图1所示的权限管理系统1000仅是解释性的,并且决不是为了要限制本说明书、其应用或用途。例如,尽管图1仅示出一个权限管理服务器1100和一个业务服务器1200,但不意味着限制各自的数量,风险识别系统1000中可以包含多个权限管理服务器1100和/或多个业务服务器1200。
本发明实施例的总体构思,是提供一种权限管理的技术方案,由权限管理服务器通过消息队列获取目标业务服务器发送的角色数据和资源数据,并在界面中进行展示,再获得管理员用户通过该界面所设定的、角色数据和资源数据之间的关联关系;由目标业务服务器获取该关联关系,并响应于目标角色的用户针对目标资源发出的资源访问请求,根据该关联关系对该资源访问请求进行处理。这样,可以目标业务服务器在接收到针对目标资源所发出的资源访问请求时无需访问权限管理服务器,可以降低权限管理服务器的访问压力,还可以使得目标业务服务器与权限管理服务器解耦,以避免在权限管理服务器宕机的情况下,目标业务服务器无法访问任何资源的情况发生。而且,还可以降低硬件成本。
<方法实施例>
在本实施例中,提供一种权限管理方法,通过包括权限管理服务器和目标业务服务器的权限管理系统实施。在一个例子中,权限管理系统可以是图1所示的权限管理系统1000,权限管理服务器可以是图1所示的权限管理服务器1100,目标业务服务器可以是图1所示的业务服务器1200。
该权限管理方法,如图2所示,包括:步骤S110~S140。
步骤S110,由权限管理服务器通过消息队列获取目标业务服务器发送的角色数据和资源数据,并在界面中展示角色数据和资源数据。
其中,角色数据为反映使用目标业务服务器的角色的数据,可以包括角色的名称和/或角色的ID。例如,在目标业务服务器为风控系统的情况下,可以使用目标业务服务器的所有角色可以包括修改角色和审批角色。
资源数据为反映目标业务服务器所提供的资源的数据,可以包括目标业务服务器可以提供的资源的ID。例如,目标业务服务器所提供的资源可以包括菜单栏、工具栏中的按键等功能组件、数据表等。
在本公开的一个实施例中,该方法还可以包括:
由目标业务服务器按照预设的规则对角色数据和资源数据进行定义。
具体的,可以是由目标业务服务器按照预设的规则将资源数据定义为通用资源数据和特殊资源数据。其中,通用资源数据为所有角色均可以访问的资源的数据,特殊资源数据为特定角色可以访问的资源的数据。
进一步地,可以是由目标业务服务器按照预设的规则对角色的名称和/或角色的ID进行定义,得到角色数据。
消息队列(Message Queue,MQ)是基础数据结构中“先进先出”的一种数据结构。指把要传输的数据(消息)放在队列中,用队列机制来实现消息传递——生产者产生消息并把消息放入队列,然后由消费者去处理。消费者可以到指定队列拉取消息,或者订阅相应的队列,由MQ服务端给其推送消息。一般用来解决应用解耦,异步消息,流量削峰等问题,实现高性能,高可用,可伸缩和最终一致性架构。
以往通过XML文件将角色数据和/或资源数据导入权限管理服务器的方式,在新增、删除或修改角色/资源时,需要通过更新XML文件的版本来实现。而本实施例中通过MQ将角色数据和/或资源数据由业务服务器发送至权限管理服务器的方式,在新增、删除或修改角色/资源时,可以是由用户在权限管理服务器中直接对角色/资源进行新增、删除或修改处理。
在本公开的一个实施例中,可以是将角色数据和/或资源数据作为目标数据,那么,由权限管理服务器通过消息队列获取目标业务服务器发送的目标数据的步骤可以包括:
由目标业务服务器将目标数据发送至消息队列;
由消息队列存储目标数据,并向目标业务服务器返回确认字符;
由消息队列向权限管理服务器发送目标数据;
由权限管理服务器在接收到目标数据的情况下,向消息队列返回确认字符;
由消息队列在指定时间内接收到权限管理服务器返回的确认字符的情况下,删除目标数据;在指定时间内未接收到权限管理服务器返回的确认字符的情况下,重新向权限管理服务器发送目标数据。
目标业务服务器通过本实施例的方法将角色数据和/或资源数据发送至权限管理服务器中,可以实现消息持久化,保证角色数据和/或资源数据发送成功。
在一个例子中,目标业务服务器可以是同时将角色数据和资源数据通过MQ发送给权限管理服务器;也可以是先将角色数据通过MQ发送给权限管理服务器,再将资源数据通过MQ发送给权限管理服务器;还可以是先将资源数据通过MQ发送给权限管理服务器,再将角色数据通过MQ发送给权限管理服务器。
步骤S120,由权限管理服务器获得管理员用户通过界面所设定的、角色数据和资源数据之间的关联关系。
其中,关联关系反映每个角色是否具有访问每个资源的权限。具体的,对于相关联的角色数据和资源数据,对应角色具有访问对应资源的权限;对于未关联的角色数据和资源数据,对应角色不具有访问对应资源的权限。
具体的,每个角色具有在目标业务服务器中访问其所关联的资源的权限,不具有在目标业务服务器中访问其未关联的资源的权限。这样,根据该关联关系,目标业务服务器就可以确定每个角色是否可以访问目标业务服务器中的每个资源。
权限管理服务器在界面中展示角色数据和资源数据,可以是展示反映目标业务服务器的角色数据的角色ID、以及反映目标业务服务器的资源数据的资源ID,以供管理员用户对角色ID和资源ID进行关联,使得权限管理服务器得到关联关系。
在本公开的一个实施例中,由权限管理服务器获得管理员用户通过界面所设定的、角色数据和资源数据之间的关联关系可以包括:
对于每一角色,由权限管理服务器获得管理员用户通过界面所选定的资源信息,对选定的资源信息与对应的角色数据进行关联,得到对应角色数据和特殊资源数据之间的关联关系。
例如,可以是由管理员用户针对每个角色ID,来设置与对应角色ID相关联的资源ID,以将每个角色与其可以访问的资源进行关联,实现角色数据和资源数据之间的关联,使得权限管理服务器得到关联关系。
在管理员用户对所述角色数据和所述资源数据进行关联的情况下,可以获得所述角色数据和所述资源数据之间的关联关系。
在本公开的一个实施例中,资源数据包括通用资源数据和特殊资源数据。在此基础上,在界面中展示角色数据和资源数据包括:
在界面中展示角色数据和特殊资源数据;
由权限管理服务器获得管理员用户通过界面所设定的、角色数据和资源数据之间的关联关系包括如下所示的步骤S121~S122:
步骤S121,由权限管理服务器获得管理员用户通过界面所设定的、角色数据和特殊资源数据之间的关联关系。
在本公开的一个实施例中,由权限管理服务器获得管理员用户通过界面所设定的、角色数据和特殊资源数据之间的关联关系包括:
对于每一角色,由权限管理服务器获得管理员用户通过界面所选定的特殊资源信息,对选定的特殊资源信息与对应的角色数据进行关联,得到对应角色数据和特殊资源数据之间的关联关系。
步骤S122,由权限管理服务器对角色数据和通用资源数据进行关联,得到角色数据和通用资源数据之间的关联关系。
在本实施例中,可以是对于每一角色,由权限管理服务器将对应角色数据与所有的通用资源数据进行关联,得到角色数据和通用资源数据之间的关联关系。
步骤S130,由目标业务服务器获取关联关系。
在本公开的一个实施例中,由目标业务服务器获取关联关系可以包括:
由权限管理服务器将关联关系发送至消息队列;
由消息队列存储目标数据,并向权限管理服务器返回确认字符;
由消息队列向目标业务服务器发送关联关系;
由目标业务服务器接收消息队列发送的关联关系,并在接收到关联关系的情况下,向消息队列返回确认字符;
由消息队列在指定时间内接收到目标业务服务器返回的确认字符的情况下,删除关联关系;在指定时间内未接收到目标业务服务器返回的确认字符的情况下,重新向目标业务服务器发送关联关系。
权限管理服务器通过本实施例的方法将关联关系发送至目标业务服务器中,可以实现消息持久化,保证关联关系发送成功。
在本公开的另一个实施例中,由目标业务服务器获取关联关系包括:
由权限管理服务器根据关联关系,生成反映关联关系的文件包;
由权限管理服务器将文件包上传至指定存储位置上;
由目标业务服务器从指定位置上下载文件包。
本实施例中的文件包可以是JAR(Java Archive,Java归档)是一种与平台无关的文件格式,可将多个文件合成一个文件,也可简称为JAR包。
指定存储位置可以是用于存放JAR包的库,目标业务服务器可以从该指定存储位置上下载JAR包。
步骤S140,由目标业务服务器响应于目标角色的用户针对目标资源所发出的资源访问请求,根据关联关系对资源访问请求进行处理。
在一个实施例中,该业务服务器中可以预先设置有请求拦截器。在业务服务器接收到针对目标资源所发出的资源访问请求的情况下,该请求拦截器可以调用关联关系或者是反映关联关系的JAR包,来确定目标角色是否具有访问目标资源的权限。
在目标角色具有访问目标资源的权限的情况下,该请求拦截器可以允许该资源访问请求,对该资源访问请求进行响应,向目标角色的用户提供目标资源。
在目标角色不具有访问目标资源的权限的情况下,该请求拦截器可以拒绝该资源访问请求,不对该资源访问请求进行响应,不向目标角色的用户提供目标资源。
通过本发明的实施例的方法,权限管理服务器通过消息队列获取目标业务服务器发送的角色数据和资源数据,并在界面中进行展示,再获得管理员用户通过该界面所设定的、角色数据和资源数据之间的关联关系;由目标业务服务器获取该关联关系,并响应于目标角色的用户针对目标资源发出的资源访问请求,根据该关联关系对该资源访问请求进行处理。这样,可以目标业务服务器在接收到针对目标资源所发出的资源访问请求时无需访问权限管理服务器,可以降低权限管理服务器的访问压力,还可以使得目标业务服务器与权限管理服务器解耦,以避免在权限管理服务器宕机的情况下,目标业务服务器无法访问任何资源的情况发生。而且,还可以降低硬件成本。
在本公开的一个实施例中,该方法还可以包括:
由权限管理服务器检测到更新关联关系的事件发生的情况下,获取更新后的关联关系;
由目标业务服务器获取更新后的关联关系,并响应于目标角色的用户针对目标资源所发出的资源访问请求,根据更新后的关联关系对资源访问请求进行处理。
在本实施例中,更新关联关系的事件至少可以包括:接收到界面中提供的更新按钮被触发的操作;
具体的,管理员用户可以通过界面删除、修改、和/或增加任一角色数据所关联的资源数据,在操作完成后,可以点击界面中的更新按钮,使得权限管理服务器检测到更新关联关系的事件发生。
本实施例中,由权限管理服务器通过MQ将更新后的关联关系发送至权限管理服务器、或者是由权限管理服务器根据更新后的关联关系生成新的JAR包并存储在指定存储位置上、由目标业务服务器进行下载。
通过本实施例的方法,在新增、删除和/或修改角色数据和资源数据之间的关联关系时,可以是由管理员用户在权限管理服务器中直接对角色数据和资源数据进行新增、删除或修改处理,无需更新版本,可以便于管理员用户对关联关系进行更新。
<权限管理服务器>
本发明还提供了一种权限管理服务器。
如图3所示,该权限管理服务器可以包括第一存储器310和第一处理器320,第一存储器310中存储有第一计算机可读指令,第一计算机可读指令被第一处理器320执行时,使得第一处理器320执行本公开中任意实施例的权限管理方法中由权限管理服务器300执行的方法步骤。
通过本发明的实施例的权限管理服务器,通过消息队列获取目标业务服务器发送的角色数据和资源数据,并在界面中进行展示,再获得管理员用户通过该界面所设定的、角色数据和资源数据之间的关联关系;由目标业务服务器获取该关联关系,并响应于目标角色的用户针对目标资源发出的资源访问请求,根据该关联关系对该资源访问请求进行处理。这样,可以目标业务服务器在接收到针对目标资源所发出的资源访问请求时无需访问权限管理服务器,可以降低权限管理服务器的访问压力,还可以使得目标业务服务器与权限管理服务器解耦,以避免在权限管理服务器宕机的情况下,目标业务服务器无法访问任何资源的情况发生。而且,还可以降低硬件成本。
<业务服务器>
本发明还提供了一种业务服务器。
如图4所示,该业务服务器可以包括第二存储器410和第二处理器420,第二存储器410中存储有第二计算机可读指令,第二计算机可读指令被第二处理器420执行时,使得第二处理器420执行本公开中任意实施例的权限管理方法中由业务服务器400执行的方法步骤。
通过本发明的实施例的业务服务器,获取权限管理服务器所获得的角色数据和资源数据之间的关联关系,并响应于目标角色的用户针对目标资源发出的资源访问请求,根据该关联关系对该资源访问请求进行处理。这样,可以目标业务服务器在接收到针对目标资源所发出的资源访问请求时无需访问权限管理服务器,可以降低权限管理服务器的访问压力,还可以使得目标业务服务器与权限管理服务器解耦,以避免在权限管理服务器宕机的情况下,目标业务服务器无法访问任何资源的情况发生。而且,还可以降低硬件成本。
<计算机可读介质>
在本实施例中,提供一种计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现本实施例中所述的权限管理方法的步骤。
本发明可以是系统、方法和/或计算机程序产品。计算机程序产品可以包括计算机可读存储介质,其上载有用于使处理器实现本发明的各个方面的计算机可读程序指令。
计算机可读存储介质可以是可以保持和存储由指令执行设备使用的指令的有形设备。计算机可读存储介质例如可以是――但不限于――电存储设备、磁存储设备、光存储设备、电磁存储设备、半导体存储设备或者上述的任意合适的组合。计算机可读存储介质的更具体的例子(非穷举的列表)包括:便携式计算机盘、硬盘、随机存取存储器(RAM)、只读存储器(ROM)、可擦式可编程只读存储器(EPROM或闪存)、静态随机存取存储器(SRAM)、便携式压缩盘只读存储器(CD-ROM)、数字多功能盘(DVD)、记忆棒、软盘、机械编码设备、例如其上存储有指令的打孔卡或凹槽内凸起结构、以及上述的任意合适的组合。这里所使用的计算机可读存储介质不被解释为瞬时信号本身,诸如无线电波或者其他自由传播的电磁波、通过波导或其他传输媒介传播的电磁波(例如,通过光纤电缆的光脉冲)、或者通过电线传输的电信号。
这里所描述的计算机可读程序指令可以从计算机可读存储介质下载到各个计算/处理设备,或者通过网络、例如因特网、局域网、广域网和/或无线网下载到外部计算机或外部存储设备。网络可以包括铜传输电缆、光纤传输、无线传输、路由器、防火墙、交换机、网关计算机和/或边缘服务器。每个计算/处理设备中的网络适配卡或者网络接口从网络接收计算机可读程序指令,并转发该计算机可读程序指令,以供存储在各个计算/处理设备中的计算机可读存储介质中。
用于执行本发明操作的计算机程序指令可以是汇编指令、指令集架构(ISA)指令、机器指令、机器相关指令、微代码、固件指令、状态设置数据、或者以一种或多种编程语言的任意组合编写的源代码或目标代码,所述编程语言包括面向对象的编程语言—诸如Smalltalk、C++等,以及常规的过程式编程语言—诸如“C”语言或类似的编程语言。计算机可读程序指令可以完全地在用户计算机上执行、部分地在用户计算机上执行、作为一个独立的软件包执行、部分在用户计算机上部分在远程计算机上执行、或者完全在远程计算机或服务器上执行。在涉及远程计算机的情形中,远程计算机可以通过任意种类的网络—包括局域网(LAN)或广域网(WAN)—连接到用户计算机,或者,可以连接到外部计算机(例如利用因特网服务提供商来通过因特网连接)。在一些实施例中,通过利用计算机可读程序指令的状态信息来个性化定制电子电路,例如可编程逻辑电路、现场可编程门阵列(FPGA)或可编程逻辑阵列(PLA),该电子电路可以执行计算机可读程序指令,从而实现本发明的各个方面。
这里参照根据本发明实施例的方法、装置(系统)和计算机程序产品的流程图和/或框图描述了本发明的各个方面。应当理解,流程图和/或框图的每个方框以及流程图和/或框图中各方框的组合,都可以由计算机可读程序指令实现。
这些计算机可读程序指令可以提供给通用计算机、专用计算机或其它可编程数据处理装置的处理器,从而生产出一种机器,使得这些指令在通过计算机或其它可编程数据处理装置的处理器执行时,产生了实现流程图和/或框图中的一个或多个方框中规定的功能/动作的装置。也可以把这些计算机可读程序指令存储在计算机可读存储介质中,这些指令使得计算机、可编程数据处理装置和/或其他设备以特定方式工作,从而,存储有指令的计算机可读介质则包括一个制造品,其包括实现流程图和/或框图中的一个或多个方框中规定的功能/动作的各个方面的指令。
也可以把计算机可读程序指令加载到计算机、其它可编程数据处理装置、或其它设备上,使得在计算机、其它可编程数据处理装置或其它设备上执行一系列操作步骤,以产生计算机实现的过程,从而使得在计算机、其它可编程数据处理装置、或其它设备上执行的指令实现流程图和/或框图中的一个或多个方框中规定的功能/动作。
附图中的流程图和框图显示了根据本发明的多个实施例的系统、方法和计算机程序产品的可能实现的体系架构、功能和操作。在这点上,流程图或框图中的每个方框可以代表一个模块、程序段或指令的一部分,所述模块、程序段或指令的一部分包含一个或多个用于实现规定的逻辑功能的可执行指令。在有些作为替换的实现中,方框中所标注的功能也可以以不同于附图中所标注的顺序发生。例如,两个连续的方框实际上可以基本并行地执行,它们有时也可以按相反的顺序执行,这依所涉及的功能而定。也要注意的是,框图和/或流程图中的每个方框、以及框图和/或流程图中的方框的组合,可以用执行规定的功能或动作的专用的基于硬件的系统来实现,或者可以用专用硬件与计算机指令的组合来实现。对于本领域技术人员来说公知的是,通过硬件方式实现、通过软件方式实现以及通过软件和硬件结合的方式实现都是等价的。
以上已经描述了本发明的各实施例,上述说明是示例性的,并非穷尽性的,并且也不限于所披露的各实施例。在不偏离所说明的各实施例的范围和精神的情况下,对于本技术领域的普通技术人员来说许多修改和变更都是显而易见的。本文中所用术语的选择,旨在最好地解释各实施例的原理、实际应用或对市场中的技术改进,或者使本技术领域的其它普通技术人员能理解本文披露的各实施例。本发明的范围由所附权利要求来限定。