业务系统中的网关控制方法、装置及电子设备转让专利

申请号 : CN202010400943.9

文献号 : CN111585880B

文献日 :

基本信息:

PDF:

法律信息:

相似专利:

发明人 : 林梅贞

申请人 : 腾讯科技(深圳)有限公司

摘要 :

本申请提供了一种业务系统中的网关控制方法、装置、电子设备及计算机可读存储介质;方法包括:获取针对业务系统中的网关的许可信息;其中,所述许可信息用于指示向所述网关授权使用的处理器数量;通过所述许可信息确定向所述网关分配的处理器数量;其中,向所述网关分配的处理器数量小于或等于所述授权使用的处理器数量;根据向所述网关分配的处理器数量,运行部署在所述网关上的业务服务。通过本申请,能够提升网关控制的稳定性,有效地保护业务系统的运作。

权利要求 :

1.一种业务系统中的网关控制方法,其特征在于,包括:获取针对业务系统中的网关的许可信息;其中,所述许可信息用于指示向所述网关授权使用的处理器数量;

根据所述许可信息中的设备信息,从所述业务系统包括的多个网关中确定许可网关;

其中,所述设备信息包括所述许可网关所在设备的地址;

在所述许可网关部署对应所述许可信息的许可服务;

响应于对所述许可服务的调用,通过所述许可信息确定向调用所述许可服务的网关分配的处理器数量;

其中,调用所述许可服务的网关为所述业务系统中的任意一个网关;向调用所述许可服务的网关分配的处理器数量小于或等于所述授权使用的处理器数量;

根据向调用所述许可服务的网关分配的处理器数量,运行部署在调用所述许可服务的网关上的业务服务。

2.根据权利要求1所述的网关控制方法,其特征在于,所述获取针对业务系统中的网关的许可信息,包括:

将申请信息发送至签发中心;其中,所述申请信息包括为所述网关申请的处理器数量;

获取所述签发中心对所述申请信息审批通过时、发送的加密后的许可信息以及解密密钥;

其中,所述解密密钥用于在确定向所述网关分配的处理器数量时,对所述加密后的许可信息进行解密处理。

3.根据权利要求2所述的网关控制方法,其特征在于,还包括:当确定出向调用所述许可服务的网关分配的处理器数量时,将所述授权使用的处理器数量减去向调用所述许可服务的网关分配的处理器数量,得到剩余的处理器数量;

当所述剩余的处理器数量小于数量阈值时,输出告警信息;

其中,所述告警信息用于提示将新的申请信息发送至所述签发中心,所述新的申请信息用于申请新的许可信息,以使新剩余的处理器数量大于或等于所述数量阈值,所述新剩余的处理器数量为所述新的许可信息中授权使用的处理器数量减去向调用所述许可服务的网关分配的处理器数量得到。

4.根据权利要求1所述的网关控制方法,其特征在于,所述通过所述许可信息确定向调用所述许可服务的网关分配的处理器数量,包括:获取调用所述许可服务的网关生成的第一签名;其中,所述第一签名是对调用所述许可服务的网关的标识信息进行加密处理得到的;

对预先存储的、有权调用所述许可服务的网关的标识信息进行加密处理,得到第二签名;

当所述第一签名与所述第二签名匹配时,通过所述许可信息确定向调用所述许可服务的网关分配的处理器数量。

5.根据权利要求1所述的网关控制方法,其特征在于,所述在所述许可网关部署对应所述许可信息的许可服务之后,还包括:将所述许可服务的接口部署至所述业务系统中具有转发能力的网关,以使所述业务系统中的网关通过所述许可服务的接口调用所述许可服务;

所述通过所述许可信息确定向调用所述许可服务的网关分配的处理器数量之后,还包括:

将所述分配的处理器数量发送至所述具有转发能力的网关,以使所述具有转发能力的网关将所述分配的处理器数量发送至调用所述许可服务的网关。

6.根据权利要求1所述的网关控制方法,其特征在于,所述通过所述许可信息确定向调用所述许可服务的网关分配的处理器数量,包括:在调用所述许可服务的网关每次启动时或设定周期到达时,获取调用所述许可服务的网关的实际处理器数量;

当根据所述许可信息确定未向调用所述许可服务的网关分配处理器数量时,根据所述授权使用的处理器数量与所述实际处理器数量之间的比对结果,确定向调用所述许可服务的网关分配的处理器数量,并

将分配时间添加至所述许可信息中;

当根据所述许可信息确定已向调用所述许可服务的网关分配处理器数量时,保持向调用所述许可服务的网关分配的处理器数量不变,并根据实时时间更新所述许可信息中的分配时间。

7.根据权利要求6所述的网关控制方法,其特征在于,所述根据所述授权使用的处理器数量与所述实际处理器数量之间的比对结果,确定向调用所述许可服务的网关分配的处理器数量,包括:当所述授权使用的处理器数量小于所述实际处理器数量时,将所述授权使用的处理器数量确定为向调用所述许可服务的网关分配的处理器数量;

当所述授权使用的处理器数量大于或等于所述实际处理器数量时,将所述实际处理器数量确定为向调用所述许可服务的网关分配的处理器数量;

所述网关控制方法,还包括:

将实时时间减去所述许可信息中的分配时间,得到差值时长;

当所述差值时长超过时长阈值时,确定向调用所述许可服务的网关分配的处理器数量无效。

8.根据权利要求1至7任一项所述的网关控制方法,其特征在于,所述根据向调用所述许可服务的网关分配的处理器数量,运行部署在调用所述许可服务的网关上的业务服务,包括:

当向调用所述许可服务的网关分配的处理器数量为零时,运行部署在调用所述许可服务的网关上的第一业务服务,并拒绝运行部署在调用所述许可服务的网关上的第二业务服务;

当向调用所述许可服务的网关分配的处理器数量大于零时,根据向调用所述许可服务的网关分配的处理器数量,运行部署在调用所述许可服务的网关上的所述第一业务服务和所述第二业务服务;

其中,所述第一业务服务通过调用所述许可服务的网关自身的接口实现;所述第二业务服务用于与部署在其他网关的业务服务进行互相调用。

9.根据权利要求1至7任一项所述的网关控制方法,其特征在于,所述通过所述许可信息确定向调用所述许可服务的网关分配的处理器数量,包括:当实时时间超过所述许可信息中的有效期时,确定向调用所述许可服务的网关分配的处理器数量为零;

所述网关控制方法,还包括:

当所述网关第一次启动时,根据设定的处理器数量运行部署在所述网关上的业务服务;

其中,所述设定的处理器数量大于零。

10.一种业务系统中的网关控制方法,其特征在于,包括:获取针对业务系统中的网关的许可信息;其中,所述许可信息用于指示向所述网关授权使用的处理器数量;

根据所述许可信息中的设备信息,从所述业务系统包括的多个网关中确定许可网关;

其中,所述设备信息包括所述许可网关所在设备的地址;

在所述许可网关部署对应所述许可信息的许可服务;

响应于对所述许可服务的调用,通过所述许可信息确定向调用所述许可服务的网关分配的处理器数量;其中,调用所述许可服务的网关为所述业务系统中的任意一个网关;

响应于对调用所述许可服务的网关的查看操作,在显示界面中显示所述授权使用的处理器数量、以及向调用所述许可服务的网关分配的处理器数量;

其中,向调用所述许可服务的网关分配的处理器数量用于运行部署在调用所述许可服务的网关上的业务服务。

11.一种业务系统中的网关控制装置,其特征在于,包括:第一获取模块,用于获取针对业务系统中的网关的许可信息;其中,所述许可信息用于指示向所述网关授权使用的处理器数量;

分配模块,用于:

根据所述许可信息中的设备信息,从所述业务系统包括的多个网关中确定许可网关;

其中,所述设备信息包括所述许可网关所在设备的地址;

在所述许可网关部署对应所述许可信息的许可服务;

响应于对所述许可服务的调用,通过所述许可信息确定向调用所述许可服务的网关分配的处理器数量;

其中,调用所述许可服务的网关为所述业务系统中的任意一个网关;向调用所述许可服务的网关分配的处理器数量小于或等于所述授权使用的处理器数量;

运行模块,用于根据向调用所述许可服务的网关分配的处理器数量,运行部署在调用所述许可服务的网关上的业务服务。

12.一种业务系统中的网关控制装置,其特征在于,包括:第二获取模块,用于获取针对业务系统中的网关的许可信息;其中,所述许可信息用于指示向所述网关授权使用的处理器数量;

分配模块,用于:

根据所述许可信息中的设备信息,从所述业务系统包括的多个网关中确定许可网关;

其中,所述设备信息包括所述许可网关所在设备的地址;

在所述许可网关部署对应所述许可信息的许可服务;

响应于对所述许可服务的调用,通过所述许可信息确定向调用所述许可服务的网关分配的处理器数量;其中,调用所述许可服务的网关为所述业务系统中的任意一个网关;

显示模块,用于响应于对调用所述许可服务的网关的查看操作,在显示界面中显示所述授权使用的处理器数量、以及向调用所述许可服务的网关分配的处理器数量;

其中,向调用所述许可服务的网关分配的处理器数量用于运行部署在调用所述许可服务的网关上的业务服务。

13.一种电子设备,其特征在于,包括:存储器,用于存储可执行指令;

处理器,用于执行所述存储器中存储的可执行指令时,实现权利要求1至9任一项所述的业务系统中的网关控制方法,或者权利要求10所述的业务系统中的网关控制方法。

14.一种计算机可读存储介质,其特征在于,存储有可执行指令,用于被处理器执行时,实现权利要求1至9任一项所述的业务系统中的网关控制方法,或者权利要求10所述的业务系统中的网关控制方法。

说明书 :

业务系统中的网关控制方法、装置及电子设备

技术领域

[0001] 本申请涉及网关和云技术,尤其涉及一种业务系统中的网关控制方法、装置、电子设备及计算机可读存储介质。

背景技术

[0002] 业务系统是指用于执行特定业务的系统。业务系统中通常包括网关,网关是业务系统中用于负责数据传输的模块,可用于实现负载均衡、流量控制及数据加密等功能,网关
也是在业务系统中搭建业务中台的支撑框架。
[0003] 在业务系统正式上线之前,需要对业务系统中的网关进行许可。在相关技术提供的方案中,通常是由客户侧预估业务系统的运作情况,来采购对网关的许可,如采购流量上
限。但是,业务系统的实际运作情况很可能超出预估,例如使用的流量超过流量上限,导致
网关和业务系统存在崩溃或宕掉的风险,网关控制的稳定性低。

发明内容

[0004] 本申请实施例提供一种业务系统中的网关控制方法、装置、电子设备及计算机可读存储介质,能够提升网关控制的稳定性,有效地保护业务系统的运作。
[0005] 本申请实施例的技术方案是这样实现的:
[0006] 本申请实施例提供一种业务系统中的网关控制方法,包括:
[0007] 获取针对业务系统中的网关的许可信息;其中,所述许可信息用于指示向所述网关授权使用的处理器数量;
[0008] 通过所述许可信息确定向所述网关分配的处理器数量;其中,向所述网关分配的处理器数量小于或等于所述授权使用的处理器数量;
[0009] 根据向所述网关分配的处理器数量,运行部署在所述网关上的业务服务。
[0010] 本申请实施例提供一种业务系统中的网关控制方法,包括:
[0011] 获取针对业务系统中的网关的许可信息;其中,所述许可信息用于指示向所述网关授权使用的处理器数量,还用于确定向所述网关分配的处理器数量;
[0012] 响应于对所述网关的查看操作,在显示界面中显示所述授权使用的处理器数量、以及向所述网关分配的处理器数量;
[0013] 其中,向所述网关分配的处理器数量用于运行部署在所述网关上的业务服务。
[0014] 本申请实施例提供一种业务系统中的网关控制装置,包括:
[0015] 第一获取模块,用于获取针对业务系统中的网关的许可信息;其中,所述许可信息用于指示向所述网关授权使用的处理器数量;
[0016] 分配模块,用于通过所述许可信息确定向所述网关分配的处理器数量;其中,向所述网关分配的处理器数量小于或等于所述授权使用的处理器数量;
[0017] 运行模块,用于根据向所述网关分配的处理器数量,运行部署在所述网关上的业务服务。
[0018] 本申请实施例提供一种业务系统中的网关控制装置,包括:
[0019] 第二获取模块,用于获取针对业务系统中的网关的许可信息;其中,所述许可信息用于指示向所述网关授权使用的处理器数量,还用于确定向所述网关分配的处理器数量;
[0020] 显示模块,用于响应于对所述网关的查看操作,在显示界面中显示所述授权使用的处理器数量、以及向所述网关分配的处理器数量;
[0021] 其中,向所述网关分配的处理器数量用于运行部署在所述网关上的业务服务。
[0022] 本申请实施例提供一种电子设备,包括:
[0023] 存储器,用于存储可执行指令;
[0024] 处理器,用于执行所述存储器中存储的可执行指令时,实现本申请实施例提供的业务系统中的网关控制方法。
[0025] 本申请实施例提供一种计算机可读存储介质,存储有可执行指令,用于引起处理器执行时,实现本申请实施例提供的业务系统中的网关控制方法。
[0026] 本申请实施例具有以下有益效果:
[0027] 通过获取许可信息,根据许可信息来确定向网关分配的处理器数量,并根据分配的处理器数量运行部署在网关上的业务服务,从而将网关的授权机制与业务系统的运作情
况剥离开,就算业务系统出现访问频率高或者使用流量多的情况,也能够保证网关上的业
务服务正常运行,提升了网关控制的稳定性。

附图说明

[0028] 图1A是本申请实施例提供的业务系统中的网关控制系统的一个可选的架构示意图;
[0029] 图1B是本申请实施例提供的业务系统的一个可选的架构示意图;
[0030] 图2A是本申请实施例提供的服务器的一个可选的架构示意图;
[0031] 图2B是本申请实施例提供的终端设备的一个可选的架构示意图;
[0032] 图3A是本申请实施例提供的业务系统中的网关控制方法的一个可选的流程示意图;
[0033] 图3B是本申请实施例提供的业务系统中的网关控制方法的一个可选的流程示意图;
[0034] 图3C是本申请实施例提供的业务系统中的网关控制方法的一个可选的流程示意图;
[0035] 图4是本申请实施例提供的业务系统中的网关控制方法的一个可选的流程示意图;
[0036] 图5是本申请实施例提供的网关控制台的一个可选的界面示意图;
[0037] 图6是本申请实施例提供的签发中心的一个可选的界面示意图;
[0038] 图7是本申请实施例提供的网关控制台的一个可选的界面示意图;
[0039] 图8是本申请实施例提供的网关控制的一个可选的示意图;
[0040] 图9是本申请实施例提供的网关控制的一个可选的示意图;
[0041] 图10是本申请实施例提供的网关控制的一个可选的示意图;
[0042] 图11是本申请实施例提供的许可证书签发与管理的一个可选的示意图。

具体实施方式

[0043] 为了使本申请的目的、技术方案和优点更加清楚,下面将结合附图对本申请作进一步地详细描述,所描述的实施例不应视为对本申请的限制,本领域普通技术人员在没有
做出创造性劳动前提下所获得的所有其它实施例,都属于本申请保护的范围。
[0044] 在以下的描述中,涉及到“一些实施例”,其描述了所有可能实施例的子集,但是可以理解“, 一些实施例”可以是所有可能实施例的相同子集或不同子集,并且可以在不冲突
的情况下相互结合。在以下的描述中,涉及到的“多个”是指至少两个。
[0045] 在以下的描述中,所涉及的术语“第一\第二”仅仅是是区别类似的对象,不代表针对对象的特定排序,可以理解地,“第一\第二”在允许的情况下可以互换特定的顺序或先后
次序,以使这里描述的本申请实施例能够以除了在这里图示或描述的以外的顺序实施。
[0046] 除非另有定义,本文所使用的所有的技术和科学术语与属于本申请的技术领域的技术人员通常理解的含义相同。本文中所使用的术语只是为了描述本申请实施例的目的,
不是旨在限制本申请。
[0047] 对本申请实施例进行进一步详细说明之前,对本申请实施例中涉及的名词和术语进行说明,本申请实施例中涉及的名词和术语适用于如下的解释。
[0048] 1)业务系统:指与业务关联的所有功能模块所组成的系统,覆盖了业务执行的整个流程。在本文中,业务系统可以是私有化部署至客户侧,并由客户侧使用的系统。例如对
于政务办公类业务,该业务的应用程序的前台、后台以及负责前后台通信的中间模块(网
关)构成了该业务的业务系统。业务系统中可以集成多种业务,例如集成运行在移动端的业
务,运行在个人电脑(PC,Personal Computer)端的业务等。
[0049] 2)网关:业务系统中用于实现网络互联的模块,设置于电子设备中,是在业务系统中搭建业务中台的支撑。网关可以负责前台与后台之间的通信,也可以负责在不同的网关
之间转发数据。在网关上可以部署与业务系统相关的业务服务,例如身份鉴权、访问控制及
域名代理等。
[0050] 3)业务中台:用于提供各式各样的接口,对接前台和后台,将相对稳定的后台环境和复杂多变的前台环境进行解耦。
[0051] 4)向网关授权使用的处理器数量:网关控制的凭证,可通过签发中心审批得到,用于确定向网关分配的处理器数量。
[0052] 5)向网关分配的处理器数量:结合授权使用的处理器数量和网关的实际情况所确定出的,用于对网关最终使用的处理器数量进行限定,即网关最终使用的处理器数量不能
超过向网关分配的处理器数量。其中,向网关分配的处理器数量小于或等于授权使用的处
理器数量。
[0053] 6)私有云(Private Cloud):将云基础设施与软硬件资源创建在防火墙内,以供机构或企业(客户侧)内各部门共享数据中心内的资源,可应用于私有化部署的业务系统。
[0054] 7)数据库(Database):可视为电子化的文件柜——存储电子文件的处所,用户可以对文件中的数据进行新增、查询、更新及删除等操作。所谓“数据库”是以一定方式储存在
一起、能与多个用户共享、具有尽可能小的冗余度、与应用程序彼此独立的数据集合。
[0055] 在政企市场里,客户侧对于信息和数据的安全和机密性要求很高,因此产品需要支持私有化部署交付,即商家侧需要根据客户侧的业务特点,针对性地部署用于实现客户
侧业务的业务系统。例如,客户侧为一个政务单位,则商家侧可以部署一个私有化的、用于
实现数字化政务的业务系统,该业务系统提供有政务网站和政务小程序,政务单位的用户
可通过访问政务网站和政务小程序,来实现相应目的,例如查询某些政务文件等。
[0056] 而对于私有化部署,需要有一个机制去对产品进行统一的授权,该授权的凭据会作为双方合同的采购内容。网关作为私有化部署的一个模块,同样需要进行授权管理。在相
关技术提供的方案中,通常是预估私有化部署的业务系统的运作情况,例如业务服务的调
用频率、站点的访问频率、上行下行的流量等,再根据预估的情况决定如何采购对网关的许
可,例如采购网关所允许的业务服务的流量上限。相关技术提供的方案主要存在以下问题:
1)客户侧必须先部署网关,并在网关上运行业务服务后,才能具体了解采购的许可是否能
扛住业务系统的调用频率、访问频率以及下行上行的流量,若业务系统的实际运作情况与
预估的运作情况不符,例如访问频率和使用流量严重超过预期,则会导致采购的许可无法
支持业务系统运作,业务系统容易出现崩溃或者中途宕掉的情况;2)正在运行的业务系统
可能在特殊时期,如重保期间出现数量级较大的集中访问,若没有及时扩容许可,就会严重
影响业务系统的运作。
[0057] 本申请实施例提供一种业务系统中的网关控制方法、装置、电子设备及计算机可读存储介质,能够提升网关控制的稳定性,有效地保护业务系统的运作。下面说明本申请实
施例提供的电子设备的示例性应用,本申请实施例提供的电子设备可以实施为各种类型的
用户终端,也可以实施为服务器。
[0058] 参见图1A,图1A是本申请实施例提供的业务系统中的网关控制系统100的一个可选的架构示意图,为实现支撑一个业务系统中的网关控制应用,终端设备400通过网络300‑
1连接服务器200,终端设备400还通过网络300‑2连接签发中心600(签发中心600可为终端
设备或服务器,图1A以服务器为例),服务器200连接数据库500,服务器200还通过网络300‑
3连接终端设备700。其中,对于网络300‑1、300‑2和300‑3来说,其可以是广域网或者局域
网,又或者是二者的组合;服务器200中部署有网关,这里,在一个服务器中,可以部署一个
网关,可以部署相同类型的多个网关,也可以部署不同类型的多个网关,另外,在终端设备
中也可部署网关,并不限于这里示出的服务器。
[0059] 对于终端设备400,其可以是在客户侧部署(例如私有化)的业务系统的智能控制台,用于根据部署人员的操作或按照设定逻辑,控制服务器200以及部署在服务器200中的
网关。终端设备400可将申请信息发送至商家侧的签发中心600,该申请信息包括为服务器
200中的网关申请的处理器数量。商家侧的人员对申请信息进行审批(其中可包括与客户侧
的签约流程),在审批通过后将许可信息发送至终端设备400,许可信息用于指示向网关授
权使用的处理器数量。终端设备400可将许可信息发送至服务器200,由服务器200确定向网
关分配的处理器数量,并根据向网关分配的处理器数量,运行部署在网关上的业务服务。终
端设备400可向服务器200发送对某个网关的查看请求,得到向该网关分配的处理器数量,
进而在图形界面410中显示许可信息包括向该网关授权使用的处理器数量、以及分配的处
理器数量。图1A中,以处理器数量为逻辑中央处理器(CPU,Central Processing Unit)数量
为例,示出了向xx网关授权使用的逻辑CPU数量24个、以及向xx网关分配的逻辑CPU数量8
个。
[0060] 当然,服务器200也可不借助终端设备400,直接向签发中心600发送申请信息,并获取签发中心600审批通过时发送的许可信息,进而确定向网关分配的处理器数量,运行部
署在网关上的业务服务。
[0061] 为了便于说明,以服务器200为服务器集群为例,示出了部署在服务器200‑1上的接入网关、部署在服务器200‑2上的准入网关以及部署在服务器200‑3上的应用程序接口
(API,Application Programming Interface)网关。基于接入网关、准入网关和API网关可
构建业务系统中的业务中台,通过协同运作,实现前台与后台的解耦。
[0062] 在服务器200运行部署在网关上的业务服务后,业务系统可通过小程序、网站或应用程序APP的方式进行发布、上线,这里,业务系统可运行在私有化环境中或互联网环境中。
图1A示出了通过网络300‑3连接服务器200的终端设备700,终端设备700可通过打开即时通
讯软件中的小程序、打开特定域名的网站或者运行下载的APP等方式,访问业务系统提供的
业务服务。终端设备700可在图形界面710中显示业务系统的界面,并在该界面中提供查询
数据的选项,当然,除了查询数据之外,业务系统还可提供更多的业务服务,这里仅以查询
数据进行示例说明。终端设备700响应于输入关键词的操作,将包括关键词的查询请求发送
至服务器200,服务器200中的网关根据该查询请求,从数据库500中查找与关键词对应的业
务数据,并将业务数据返回给终端设备700,以在图形界面710中显示。这里,存储数据的处
所并不限于数据库,例如还可以是分布式文件系统及区块链等。
[0063] 在一些实施例中,服务器200可以是独立的物理服务器,也可以是多个物理服务器构成的服务器集群或者分布式系统,还可以是提供云服务、云数据库、云计算、云函数、云存
储、网络服务、云通信、中间件服务、域名服务、安全服务、CDN、以及大数据和人工智能平台
等基础云计算服务的云服务器,云服务器可用于构建私有云,以实现私有化部署的业务系
统。终端设备400可以是平板电脑、笔记本电脑、台式计算机、机顶盒、移动设备(例如,移动
电话,个人数字助理,专用消息设备)等,但并不局限于此。终端设备以及服务器可以通过有
线或无线通信方式进行直接或间接地连接,本申请实施例中不做限制。
[0064] 参见图1B,图1B是本申请实施例提供的业务系统101的一个可选的架构示意图,业务系统包括接入网关、准入网关和API网关三种类型的网关,其中,接入网关提供的业务服
务包括但不限于域名代理、流量控制、负载均衡及数据加密,准入网关提供的业务服务包括
但不限于身份鉴权、会话管理及访问控制,API网关用于发布和管理API服务,具体如转发其
他网关的数据,或者调用后端服务的数据等,后端服务包括但不限于商业软件、云服务、自
建系统和数据服务。另外,还可基于网关构建身份认证模块,以实现统一的身份管理。在业
务系统中还可部署网关控制台,便于客户侧的相关人员对网关进行控制,例如进行身份认
证管理,开启或关闭网关,注册和配置应用,发布和配置API,订阅和审批API等。
[0065] 基于接入网关、准入网关和API网关,可构建业务系统的业务中台(图1B示出的数字化中台),从而将前端应用和后端服务进行解耦,这里,前端应用包括但不限于门户站点、
小程序以及手机APP。业务系统的使用人员,如图1B示出的消费者、渠道商、供应商、开发商
和客户侧的员工,可通过前端应用来访问业务系统。业务系统中各种类型的网关通过协同
运作,从而对使用人员在前端应用发起的操作进行响应,例如响应于使用人员发起的查询
操作,将相应的业务数据显示于前端应用的界面。其中,业务系统的使用人员是指客户侧的
目标用户,与前文的商家侧不同。
[0066] 参见图2A,图2A是本申请实施例提供的服务器200(例如,可以是图1A所示的服务器200)的架构示意图,图2A所示的服务器200包括:至少一个处理器210、存储器240和至少
一个网络接口220。服务器200中的各个组件通过总线系统230耦合在一起。可理解,总线系
统230用于实现这些组件之间的连接通信。总线系统230除包括数据总线之外,还包括电源
总线、控制总线和状态信号总线。但是为了清楚说明起见,在图2A中将各种总线都标为总线
系统230。
[0067] 处理器210可以是一种集成电路芯片,具有信号的处理能力,例如通用处理器、数字信号处理器(DSP,Digital Signal Processor),或者其他可编程逻辑器件、分立门或者
晶体管逻辑器件、分立硬件组件等,其中,通用处理器可以是微处理器或者任何常规的处理
器等。
[0068] 存储器240可以是可移除的,不可移除的或其组合。示例性的硬件设备包括固态存储器,硬盘驱动器,光盘驱动器等。存储器240可选地包括在物理位置上远离处理器210的一
个或多个存储设备。
[0069] 存储器240包括易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。非易失性存储器可以是只读存储器(ROM,Read Only Memory),易失性存储器可
以是随机存取存储器(RAM,Random Access Memory)。本申请实施例描述的存储器240旨在
包括任意适合类型的存储器。
[0070] 在一些实施例中,存储器240能够存储数据以支持各种操作,这些数据的示例包括程序、模块和数据结构或者其子集或超集,下面示例性说明。
[0071] 操作系统241,包括用于处理各种基本系统服务和执行硬件相关任务的系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务;
[0072] 网络通信模块242,用于经由一个或多个(有线或无线)网络接口220到达其他计算设备,示例性的网络接口220包括:蓝牙、无线相容性认证(WiFi)、和通用串行总线(USB,
Universal Serial Bus)等。
[0073] 在一些实施例中,本申请实施例提供的业务系统中的网关控制装置可以采用软件方式实现,图2A示出了存储在存储器240中的业务系统中的网关控制装置243,其可以是程
序和插件等形式的软件,包括以下软件模块:第一获取模块2431、分配模块2432及运行模块
2433,这些模块是逻辑上的,因此根据所实现的功能可以进行任意的组合或进一步拆分。将
在下文中说明各个模块的功能。
[0074] 在另一些实施例中,本申请实施例提供的业务系统中的网关控制装置可以采用硬件方式实现,作为示例,本申请实施例提供的业务系统中的网关控制装置可以是采用硬件
译码处理器形式的处理器,其被编程以执行本申请实施例提供的业务系统中的网关控制方
法,例如,硬件译码处理器形式的处理器可以采用一个或多个应用专用集成电路(ASIC,
Application Specific Integrated Circuit)、DSP、可编程逻辑器件(PLD,Programmable 
Logic Device)、复杂可编程逻辑器件(CPLD,Complex Programmable Logic Device)、现场
可编程门阵列(FPGA,Field‑Programmable Gate Array)或其他电子元件。
[0075] 参见图2B,图2B是本申请实施例提供的终端设备400的结构示意图,图2B所示的终端设备400包括:至少一个处理器410、存储器450、至少一个网络接口420和用户接口430。终
端400中的各个组件通过总线系统440耦合在一起。可理解,总线系统440用于实现这些组件
之间的连接通信。总线系统440除包括数据总线之外,还包括电源总线、控制总线和状态信
号总线。但是为了清楚说明起见,在图2B中将各种总线都标为总线系统440。
[0076] 处理器410可以是一种集成电路芯片,具有信号的处理能力,例如通用处理器、DSP或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等,其中,通用处理
器可以是微处理器或者任何常规的处理器等。
[0077] 用户接口430包括使得能够呈现媒体内容的一个或多个输出装置431,包括一个或多个扬声器和/或一个或多个视觉显示屏。用户接口430还包括一个或多个输入装置432,包
括有助于用户输入的用户接口部件,比如键盘、鼠标、麦克风、触屏显示屏、摄像头、其他输
入按钮和控件。
[0078] 存储器450可以是可移除的,不可移除的或其组合。示例性的硬件设备包括固态存储器,硬盘驱动器,光盘驱动器等。存储器450可选地包括在物理位置上远离处理器410的一
个或多个存储设备。
[0079] 存储器450包括易失性存储器或非易失性存储器,也可包括易失性和非易失性存储器两者。非易失性存储器可以是ROM,易失性存储器可以是RAM。本申请实施例描述的存储
器450旨在包括任意适合类型的存储器。
[0080] 在一些实施例中,存储器450能够存储数据以支持各种操作,这些数据的示例包括程序、模块和数据结构或者其子集或超集,下面示例性说明。
[0081] 操作系统451,包括用于处理各种基本系统服务和执行硬件相关任务的系统程序,例如框架层、核心库层、驱动层等,用于实现各种基础业务以及处理基于硬件的任务;
[0082] 网络通信模块452,用于经由一个或多个(有线或无线)网络接口420到达其他计算设备,示例性的网络接口420包括:蓝牙、无线相容性认证(WiFi)、和USB等;
[0083] 呈现模块453,用于经由一个或多个与用户接口430相关联的输出装置431(例如,显示屏、扬声器等)使得能够呈现信息(例如,用于操作外围设备和显示内容和信息的用户
接口);
[0084] 输入处理模块454,用于对一个或多个来自一个或多个输入装置432之一的一个或多个用户输入或互动进行检测以及翻译所检测的输入或互动。
[0085] 在一些实施例中,本申请实施例提供的业务系统中的网关控制装置可以采用软件方式实现,图2B示出了存储在存储器450中的业务系统中的网关控制装置455,其可以是程
序和插件等形式的软件,包括以下软件模块:第二获取模块4551及显示模块4552,这些模块
是逻辑上的,因此根据所实现的功能可以进行任意的组合或进一步拆分。将在下文中说明
各个模块的功能。
[0086] 在另一些实施例中,本申请实施例提供的业务系统中的网关控制装置可以采用硬件方式实现,作为示例,本申请实施例提供的业务系统中的网关控制装置可以是采用硬件
译码处理器形式的处理器,其被编程以执行本申请实施例提供的业务系统中的网关控制方
法,例如,硬件译码处理器形式的处理器可以采用一个或多个ASIC、DSP、PLD、CPLD、FPGA或
其他电子元件。
[0087] 将结合本申请实施例提供的电子设备的示例性应用和实施,说明本申请实施例提供的业务系统中的网关控制方法。
[0088] 参见图3A,图3A是本申请实施例提供的业务系统中的网关控制方法的一个可选的流程示意图,将结合图3A示出的步骤进行说明。
[0089] 在步骤101中,获取针对业务系统中的网关的许可信息;其中,许可信息用于指示向网关授权使用的处理器数量。
[0090] 这里,以电子设备为服务器的情况进行举例说明。例如,业务系统中的服务器部署有网关,服务器获取针对该网关的许可信息,该许可信息用于指示向该网关授权使用的处
理器数量。在业务系统私有化部署于客户侧的情况下,许可信息可以是由与客户侧进行交
易的商家侧生成的,即授权使用的处理器数量为交易的内容,本申请实施例对交易的方式
不做限定,例如可为线上交易,也可为在线下交易完成后,商家侧在线上审批通过相应的授
权使用的处理器数量。
[0091] 在步骤102中,通过许可信息确定向网关分配的处理器数量;其中,向网关分配的处理器数量小于或等于授权使用的处理器数量。
[0092] 这里,确定出的向网关分配的处理器数量小于或等于授权使用的处理器数量,具体的确定方式可根据实际应用场景而定。例如,可以获取网关所在设备(服务器)的实际处
理器数量,将授权使用的处理器数量与实际处理器数量进行比对,根据比对结果确定向网
关分配的处理器数量,具体内容在后文进行详细阐述。
[0093] 在一些实施例中,可以通过这样的方式来实现上述的获取针对业务系统中的网关的许可信息:将申请信息发送至签发中心;其中,申请信息包括为网关申请的处理器数量;
获取签发中心对申请信息审批通过时、发送的加密后的许可信息以及解密密钥;其中,解密
密钥用于在确定向网关分配的处理器数量时,对加密后的许可信息进行解密处理。
[0094] 这里,将申请信息发送至签发中心,例如客户侧的服务器将申请信息发送至商家侧的签发中心,签发中心可位于互联网端(云端)。申请信息包括为网关申请的处理器数量,
当然,申请信息中还可包括其他信息,例如联系人信息、业务系统的关联项目、部署类型及
部署环境(开发环境、测试环境、预生产环境或生产环境)等,便于签发中心进行审批。
[0095] 签发中心在接收到申请信息后,可人为或根据设定的逻辑进行审批,在审批通过时生成许可信息,该许可信息包括向网关授权使用的处理器数量。相较于申请的处理器数
量,授权使用的处理器数量可以更多、更少或相同,根据实际的交易及审批结果而定。签发
中心在生成许可信息之后,可对许可信息进行加密,并将加密后的许可信息和解密密钥发
送至服务器。例如,签发中心可通过非对称加密算法生成加密密钥和解密密钥,并通过加密
密钥对许可信息进行加密,其中,加密密钥可为私钥,解密密钥可为公钥,当然这并不构成
对本申请实施例的限定。服务器在满足设定的解密条件时,例如需要确定向网关分配的处
理器数量时,通过解密密钥对加密后的许可信息进行解密处理。在不满足解密条件的其他
情况下,由于许可信息处于加密状态,故能够有效地保证许可信息的安全性和保密性。
[0096] 在一些实施例中,在步骤101之后,还包括:当确定出向网关分配的处理器数量时,将授权使用的处理器数量减去向网关分配的处理器数量,得到剩余的处理器数量;当剩余
的处理器数量小于数量阈值时,输出告警信息;其中,告警信息用于提示将新的申请信息发
送至签发中心,新的申请信息用于申请新的许可信息,以使新剩余的处理器数量大于或等
于数量阈值,新剩余的处理器数量为新的许可信息中授权使用的处理器数量减去向网关分
配的处理器数量得到。
[0097] 这里,数量阈值可以是正整数,具体根据实际应用场景进行设定。当得到的剩余的处理器数量小于数量阈值时,输出告警信息,例如,将告警信息以短信、电话或邮件等方式
发送给客户侧的相关人员,以提示相关人员扩容许可。扩容许可的过程可以是,控制服务器
将新的申请信息发送至签发中心,得到签发中心返回的新的许可信息,以使新剩余的处理
器数量大于或等于数量阈值,新剩余的处理器数量为新的许可信息中授权使用的处理器数
量减去向网关分配的处理器数量得到。值得说明的是,在得到签发中心发送的新的许可信
息时,根据新的许可信息重新执行步骤102,即通过新的许可信息重新确定向网关分配的处
理器数量。通过上述方式,在剩余的处理器数量不足时,提醒对授权使用的处理器数量进行
扩容,进一步保证了业务系统的正常运作。
[0098] 在一些实施例中,可以通过这样的方式来实现上述的通过许可信息确定向网关分配的处理器数量:当实时时间超过许可信息中的有效期时,确定向网关分配的处理器数量
为零。
[0099] 许可信息中除了对网关授权使用的处理器数量之外,还可包括授权使用的有效期,这里,在业务系统包括多个网关的情况下,可为多个网关单独设置有效期,当然也可对
所有网关设置一个统一的有效期。服务器可获取实时时间,并将实时时间与许可信息中的
有效期进行比对,当实时时间超过有效期时,确定向网关分配的处理器数量为零。通过上述
方式,对网关的授权时限进行了有效控制,适用于实际的审批场景。
[0100] 在步骤103中,根据向网关分配的处理器数量,运行部署在网关上的业务服务。
[0101] 向网关分配的处理器数量,即为网关能够在所在设备中使用的处理器的最大数量,相当于网关对处理器的最终使用权限。在根据许可信息确定出向网关分配的处理器数
量时,运行部署在网关上的业务服务,本申请实施例对业务服务的内容不做限定,可根据网
关的类型和实际的业务系统来进行设定,例如可以是用户鉴权、访问控制或调取后台数据
等,还可以是依照业务系统的不同功能来划分的业务服务,例如在支付类的业务系统中,业
务服务可以是信用卡还款服务、账号服务或者话费充值服务等。根据分配的处理器数量运
行部署在网关上的业务服务后,就算业务系统的访问频率和使用流量较高,也只会使得业
务系统的响应速度变慢,而不会造成业务系统崩溃或者中途宕掉。
[0102] 在一些实施例中,可以通过这样的方式来实现上述的根据向网关分配的处理器数量,运行部署在网关上的业务服务:当向网关分配的处理器数量为零时,运行部署在网关上
的第一业务服务,并拒绝运行部署在网关上的第二业务服务;当向网关分配的处理器数量
大于零时,根据向网关分配的处理器数量,运行部署在网关上的第一业务服务和第二业务
服务;其中,第一业务服务通过网关自身的接口实现;第二业务服务用于与部署在其他网关
的业务服务进行互相调用。
[0103] 这里,将部署在网关上的业务服务分为两类,第一业务服务是指通过网关自身的接口实现的业务服务,在第一业务服务的实现过程中,不需调用其他网关提供的业务服务,
例如网关提供有OpenAPI,客户侧的相关人员可以不用访问网关的管理后台,直接调用网关
的OpenAPI去定制相应的管理界面,这里根据OpenAPI实现的服务即为第一业务服务;第二
业务服务用于与部署在其他网关的业务服务进行互相调用,例如网关A提供的信用卡还款
服务,网关B提供的是账号服务,则在调用信用卡还款服务时,需要调用账号服务,以确定对
哪个用户账号的信用卡进行还款,这里,对于网关A来说,信用卡还款服务即为第二业务服
务。
[0104] 网关可以单独部署第一业务服务或第二业务服务,也可以同时部署第一业务服务和第二业务服务,为了便于理解,以后者情况进行举例说明。当向网关分配的处理器数量为
零时,运行部署在网关上的第一业务服务,并拒绝运行部署在网关上的第二业务服务;当向
网关分配的处理器数量大于零时,根据向网关分配的处理器数量,运行部署在网关上的第
一业务服务和第二业务服务。通过上述方式,在未对网关分配处理器数量或分配的处理器
数量为零时,仍能够保证第一业务服务的正常运行,提升了业务系统的健壮性。
[0105] 在一些实施例中,步骤103之前,还包括:当网关第一次启动时,根据设定的处理器数量运行部署在网关上的业务服务;其中,设定的处理器数量大于零。
[0106] 这里,在网关第一次启动时,先根据设定的处理器数量运行部署在网关上的业务服务,其中,设定的处理器数量大于零,例如可为1。然后,再根据许可信息确定向该网关分
配的处理器数量,进而根据分配的处理器数量运行部署在该网关上的业务服务。通过上述
方式,使得在根据许可信息对网关进行授权之前,业务服务能够正常运行。
[0107] 通过申请实施例对于图3A的上述示例性实施可知,本申请实施例将网关的授权机制与业务系统的运作情况剥离开来,提升了网关控制的稳定性,能够保证业务系统的正常
运作。
[0108] 在一些实施例中,参见图3B,图3B是本申请实施例提供的业务系统中的网关控制方法的一个可选的流程示意图,图3A示出的步骤102可以通过步骤201至步骤203实现,将结
合各步骤进行说明。
[0109] 在步骤201中,根据许可信息中的设备信息,从业务系统包括的多个网关中确定许可网关;其中,设备信息包括许可网关所在设备的地址。
[0110] 许可信息除了包括向网关授权使用的处理器数量外,还可包括设备信息,该设备信息用于在业务系统包括的多个网关中确定许可网关。设备信息可以是由客户侧确定的,
例如客户侧的服务器将包括设备信息的申请信息发送至签发中心,签发中心在审批得到向
网关授权使用的处理器数量后,生成包括授权使用的处理器数量和设备信息的许可信息,
并将许可信息发送至服务器。这里,许可信息可包括许可网关所在设备的地址及实际处理
器数量等,对此不做限定。
[0111] 在步骤202中,在许可网关部署对应许可信息的许可服务。
[0112] 这里,对应许可信息的许可服务与上文的业务服务存在差异,许可服务用于确定向网关分配的服务器数量。值得说明的是,可在许可网关中额外部署一个许可中心,以使许
可中心专门运行许可服务,从而进一步将许可服务与许可网关运行的其他业务服务进行区
分。
[0113] 在步骤203中,响应于对许可服务的调用,通过许可信息确定向调用许可服务的网关分配的处理器数量;其中,调用许可服务的网关为业务系统中的任意一个网关。
[0114] 在部署完成许可服务后,响应于对许可网关中的许可服务的调用,通过许可信息包括的向调动许可服务的网关授权使用的处理器数量,确定向调用许可服务的网关分配的
处理器数量。其中,调用许可服务的网关为业务系统中的任意一个网关,许可网关也可调用
自身的许可服务,来得到向许可网关分配的处理器数量。
[0115] 值得说明的是,对于一个电子设备(如服务器)中部署有多个网关的情况,可以整个电子设备为单位进行网关控制,即向电子设备中的多个网关授权使用的处理器数量可以
是相同的。例如,某个服务器上部署有网关A、网关B和网关C,则在许可信息中,向网关A、网
关B和网关C授权使用的处理器数量相同。另外,在步骤101中接收到的是加密后的许可信息
以及解密密钥的情况下,可将解密密钥存储于许可服务中,以在响应对许可服务的调用时,
根据解密密钥对加密后的许可信息进行解密处理。
[0116] 在一些实施例中,可以通过这样的方式来实现上述的通过许可信息确定向调用许可服务的网关分配的处理器数量:获取调用许可服务的网关生成的第一签名;其中,第一签
名是对调用许可服务的网关的标识信息进行加密处理得到的;对预先存储的、有权调用许
可服务的网关的标识信息进行加密处理,得到第二签名;当第一签名与第二签名匹配时,通
过许可信息确定向调用许可服务的网关分配的处理器数量。
[0117] 在本申请实施例中,可对调用许可服务的网关进行身份鉴权。例如,预先针对有权调用许可服务的多个网关分别设定标识信息,并将标识信息发送对应的网关,同时将多个
标识信息保存在许可网关本地。在接收到对许可服务的调用时,获取调用许可服务的网关
生成的第一签名,该第一签名是调用许可服务的网关对自身的标识信息进行加密处理得到
的,同时,对预先存储的、有权调用许可服务的网关的多个标识信息分别进行加密处理,得
到多个第二签名,其中,生成第一签名和生成第二签名的加密处理的方式一致,例如都是哈
希加密。
[0118] 当第一签名与第二签名匹配,即第一签名与任意一个第二签名相同时,通过许可信息确定向调用许可服务的网关分配的处理器数量;当第一签名与第二签名不匹配时,拒
绝向调用许可服务的网关分配处理器数量。值得说明的是,可以对标识信息和动态信息共
同进行加密处理,得到签名,以防止恶意方通过窃取历史的签名来通过身份鉴权,动态信息
如实时时间。另外,上述方式并不构成对本申请实施例的限定,即在本申请实施例中还可应
用其他的身份鉴权方式。通过上述方式,提升了向网关分配处理器数量的有效性和安全性。
[0119] 在一些实施例中,步骤202之后,还包括:将许可服务的接口部署至业务系统中具有转发能力的网关,以使业务系统中的网关通过许可服务的接口,调用许可服务;步骤203
之后,还包括:将分配的处理器数量发送至具有转发能力的网关,以使具有转发能力的网关
将分配的处理器数量,发送至调用许可服务的网关。
[0120] 在一些情况中,许可网关与业务系统中的某些网关可能无法实现直接通信,故可将许可服务的接口部署至业务系统中具有转发能力的网关,例如业务系统中的API网关。如
此,业务系统中的其他网关可通过API网关中的许可服务的接口,调用许可服务,即API网关
用于在许可网关与调用许可服务的网关之间转发数据,以完成对调用许可服务的网关的授
权。当通过许可服务确定向调用许可服务的网关分配的处理器数量时,可将分配的处理器
数量发送至API网关,以使API网关将分配的处理器数量,发送至调用许可服务的网关。另
外,API网关也可以进行身份鉴权,当确定调用许可服务的接口的网关的第一签名与第二签
名匹配时,将调用许可服务的接口的网关发送的数据(例如该网关的实际处理器数量)转发
至许可网关,以调用许可服务;当不匹配时,拒绝转发调用许可服务的接口的网关发送的数
据。通过上述方式,通过具有转发能力的网关提升了网关授权的成功率,适用于业务系统中
不同网关之间可能无法直接通信的场景。
[0121] 通过申请实施例对于图3B的上述示例性实施可知,本申请实施例在许可网关中部署许可服务,从而以服务调用的形式实现对业务系统中网关的授权,提升了网关授权的成
功率。
[0122] 在一些实施例中,参见图3C,图3C是本申请实施例提供的业务系统中的网关控制方法的一个可选的流程示意图,图3A示出的步骤102可以通过步骤301至步骤303实现,将结
合各步骤进行说明。
[0123] 在步骤301中,在网关每次启动时或设定周期到达时,获取网关的实际处理器数量。
[0124] 这里,在网关每次启动时或设定周期到达时,获取网关的实际处理器数量,实际处理器数量可以是网关所在设备(如服务器)的处理器数量,其中,设定周期可根据实际应用
场景进行设定,如设定为1天。步骤301相当于在网关每次启动时或设定周期到达时,检查一
次对网关的授权。
[0125] 在步骤302中,当根据许可信息确定未向网关分配处理器数量时,根据授权使用的处理器数量与实际处理器数量之间的比对结果,确定向网关分配的处理器数量,并将分配
时间添加至许可信息中。
[0126] 在本申请实施例中,在根据许可信息确定向网关分配的处理器数量后,会将此次分配的记录,即网关授权的记录添加在许可信息中,网关授权的记录也可以发送至被授权
的网关中,这里以网关授权的记录包括分配时间为例。当许可信息中未包括与网关对应的
分配时间时,确定未向该网关分配处理器数量,此时,将许可信息中向该网关授权使用的处
理器数量与该网关的实际处理器数量进行比对,并根据比对结果确定向该网关分配的处理
器数量,同时将实时时间作为分配时间,添加至许可信息中。值得说明的是,在业务系统包
括多个网关的情况下,每个授权的网关对应一个分配时间。另外,在许可信息被加密密钥进
行加密的情况下,添加的网关授权的记录同样可通过加密密钥进行加密,其中,加密密钥可
由服务器自己生成,也可以从签发中心处获取。
[0127] 在一些实施例中,可以通过这样的方式来实现上述的根据授权使用的处理器数量与实际处理器数量之间的比对结果,确定向网关分配的处理器数量:当授权使用的处理器
数量小于实际处理器数量时,将授权使用的处理器数量,确定为向网关分配的处理器数量;
当授权使用的处理器数量大于或等于实际处理器数量时,将实际处理器数量确定为向网关
分配的处理器数量。
[0128] 这里,当授权使用的处理器数量小于实际处理器数量时,将授权使用的处理器数量,确定为向网关分配的处理器数量,例如授权使用的处理器数量为8个,网关所在设备的
实际处理器数量为24个,则确定向该网关分配的处理器数量为8个;否则,将实际处理器数
量确定为向网关分配的处理器数量,例如授权使用的处理器数量为24个,网关所在设备的
实际处理器数量为8个,则确定向该网关分配的处理器数量为8个。通过上述方式,提升了向
网关分配处理器数量的有效性。
[0129] 在步骤303中,当根据许可信息确定已向网关分配处理器数量时,保持向网关分配的处理器数量不变,并根据实时时间更新许可信息中的分配时间。
[0130] 当许可信息中包括与网关对应的分配时间时,确定已向该网关分配处理器数量,此时,保持向该网关分配的处理器数量不变,并根据实时时间覆盖许可信息中与该网关对
应的分配时间,即对分配时间进行更新。
[0131] 在一些实施例中,在任意步骤之间,还包括:将实时时间减去许可信息中的分配时间,得到差值时长;当差值时长超过时长阈值时,确定向网关分配的处理器数量无效。
[0132] 在本申请实施例中,还可以实时地或者周期性地,将实时时间减去许可信息中的分配时间,得到差值时长,该差值时长也相当于实时时间与最近一次对网关的授权情况进
行检查的时间之间的差值。若得到的差值时长超过时长阈值,如7天时,证明对应的网关出
现了异常,确定向网关分配的处理器数量无效。此外,若该网关所在的设备(如服务器)上部
署有其他网关,则也可确定向该网关所在设备上部署的其他网关分配的处理器数量无效。
通过上述方式,在长时间无法检查对网关的授权情况时,失效对该网关的授权,从而释放分
配给该网关的处理器数量。
[0133] 通过申请实施例对于图3C的上述示例性实施可知,本申请实施例在网关每次启动时或设定周期到达时,检查一次对网关的授权,实现了对授权情况的及时更新。
[0134] 参见图4,图4是本申请实施例提供的业务系统中的网关控制方法的一个可选的流程示意图,将结合图1A示出的终端设备400和服务器200,对图4示出的各个步骤进行说明。
[0135] 在步骤401中,终端设备获取针对业务系统中的网关的许可信息,并将许可信息发送至服务器;其中,许可信息用于指示向网关授权使用的处理器数量。
[0136] 例如,终端设备可从签发中心获取针对业务系统中的网关的许可信息,并将许可信息发送至服务器。在许可信息包括设备信息的情况下,终端设备可将许可信息发送至业
务系统中与设备信息对应的网关,以将许可信息保存(安装)至该网关。
[0137] 在一些实施例中,在任意步骤之间,还包括:终端设备响应于启动网关的操作,将启动网关的指令发送至服务器,以使服务器启动网关。
[0138] 这里,终端设备可响应于启动网关的操作,将启动网关的指令发送至服务器,服务器在接收到该指令后,启动相应的网关。终端设备还可响应于关闭网关的操作,将关闭网关
的指令发送至服务器,以使服务器关闭相应的网关。其中,可在终端设备中设定专门的显示
界面,用于接收启动网关或关闭网关的操作。通过上述方式,降低了控制网关开启和关闭的
难度。
[0139] 在一些实施例中,可以通过这样的方式来实现上述的终端设备获取针对业务系统中的网关的许可信息:终端设备响应于在显示界面中输入申请信息的操作,将申请信息发
送至签发中心,并获取签发中心对申请信息审批通过时发送的许可信息。
[0140] 这里的显示界面可以是终端设备中专用于输入申请信息的界面,终端设备响应于在显示界面中输入申请信息的操作,将得到的申请信息发送至签发中心。签发中心根据申
请信息进行审批,在审批通过时,将生成的许可信息发送至终端设备,这里,签发中心也可
以将加密后的许可信息以及解密密钥发送至终端设备。通过上述方式,能够加强与客户侧
人员的互动,提升网关控制的灵活性。
[0141] 在步骤402中,服务器通过许可信息确定向网关分配的处理器数量,并根据向网关分配的处理器数量,运行部署在网关上的业务服务。
[0142] 服务器在接收到终端设备发送的许可信息后,通过许可信息确定向网关分配的处理器数量,从而运行部署在网关上的业务服务。
[0143] 在步骤403中,终端设备响应于对网关的查看操作,在显示界面中显示授权使用的处理器数量、以及向网关分配的处理器数量。
[0144] 这里的显示界面可以是终端设备中专用于显示与网关相关信息的界面,终端设备在接收到对网关的查看操作时,从服务器获取向网关分配的处理器数量,并在该显示界面
中显示向网关授权使用的处理器数量、以及向网关分配的处理器数量。除此之外,还可在该
显示界面中显示该网关授权的记录,例如网关所在设备的名称及分配时间等,以增加显示
的信息的维度。如此,便于终端设备的用户,如客户侧的相关人员实时地了解网关的授权情
况,检查网关授权是否正常,以及是否需要对授权使用的处理器数量进行扩容等。
[0145] 通过申请实施例对于图4的上述示例性实施可知,本申请实施例响应于对网关的查看操作,在终端设备的显示界面中显示授权使用的处理器数量、以及向网关分配的处理
器数量,提升了网关控制的可见性和可交互性,便于相关人员了解网关的授权情况。
[0146] 下面,将说明本申请实施例在一个实际的应用场景中的示例性应用。以私有化部署在客户侧的业务系统举例,其业务中台由智能网关阵列构建,智能网关阵列包括API网
关、准入网关及接入网关等多种类型的网关,网关部署在服务器上。
[0147] 这里,以前端展示的角度说明网关控制的过程。首先,安装许可中心和网关控制台在同一智能网关阵列所能访问的网络区域,其中,许可中心可部署于智能网关阵列中的任
意一个网关上,网关控制台对应终端设备,可供客户侧的相关人员进行操作。然后,通过网
关控制台启动智能网关阵列,并向智能网关阵列发送申请授权的请求,智能网关阵列将该
请求转发至许可中心,以生成部署信息(对应上文的设备信息),部署信息包括许可中心所
在的服务器的互联网协议(IP,Internet Protocol)地址、媒体存取控制(MAC,Media 
Access Control)地址及实际逻辑CPU数量(对应上文的实际处理器数量)等。本申请实施例
提供了如图5所示的网关控制台的一个界面示意图,在图5中,示出了许可中心节点的信息
即部署信息,许可中心节点是指许可中心所在的服务器,图5中的CPU核数即为逻辑CPU数
量,图5中还示出了刷新部署信息的选项,便于客户侧的相关人员(如运维人员)通过该选项
更新部署信息。
[0148] 客户侧的相关人员在得到部署信息后,将部署信息上传至签发中心,该签发中心可运行在公有云(Public Cloud)上,公有云通常指第三方提供商为用户提供的能够使用的
云,一般可通过互联网使用,核心属性是共享资源服务。本申请实施例提供了如图6所示的
签发中心的一个上传界面的示意图,在图6中,除了上传部署信息之外,还需要上传联系人
姓名、联系人邮箱、关联项目、部署类型、部署环境及为网关申请的逻辑CPU数量等信息,这
些信息共同构成了上传至签发中心的申请信息,便于签发中心的人员根据申请信息进行审
批,其中,部署类型包括正式部署和概念验证(POC,Proof Of Concept)部署等,部署环境包
括POC环境、开发环境、测试环境、预生产环境及生产环境等,当然,这并不构成对本申请实
施例的限定。
[0149] 获取到签发中心审批通过时返回的许可信息后,客户侧的相关人员可在网关控制台中上传许可信息,上传完成后即可查看到网关的授权状态,这里的上传,指的是将证书形
式的许可信息(许可证书)安装至许可中心,后文所指的许可信息和许可证书的含义相同。
本申请实施例提供了如图7所示的网关控制台的一个界面示意图,在图7中,示出了许可证
书的授权产品,这里的授权产品指的是节点(即网关所在的服务器),图示中以网关名称作
为节点的ID,具体包括边缘网关(Edge Gateway)、准入网关(Service Access Gateway)、接
入网关(Access Gateway)以及API网关,图7中还示出了许可证书的授权时间和到期时间
(授权时间与到期时间之间的时间即为许可证书的有效期)。对于每一种网关,还示出了在
许可证书中授权使用的逻辑CPU数量(即图中的CPUCount)以及网关正在使用的逻辑CPU数
量。图7还示出了网关的授权状态,包括授权节点ID、授权序列号、计算机名、授权时间、最后
获取时间(对应上文的分配时间)、状态(正常或连接失效)以及正在使用的逻辑CPU数量。
[0150] 接下来,从底层角度说明网关控制的过程:
[0151] 1、网关初始化。
[0152] 1)安装许可。
[0153] 将许可中心和网关控制台部署在同一个智能网关阵列可达的网络区域,且将许可证书加密安装至许可中心,例如,可从签发中心处获取加密后的许可证书及解密密钥,在许
可中心中安装加密后的许可证书,并在许可中心的许可服务里存储解密密钥。当从签发中
心处获取到新的许可证书,即许可中心更换许可证书时,相应地更新许可服务中的解密密
钥。安装完成后,许可中心在网关上自动注册自身公开的许可服务,如图8所示,许可中心在
API网关上部署许可服务的接口,该接口可通过超文本传输安全协议(HTTPS,Hyper Text 
Transfer Protocol over Securesocket layer)来调用,当然也可通过其他方式进行调
用,根据实际环境而定。另外,图8中的许可中心GateAgent是指许可中心所在的网关,阵列
授权Agent是指智能网关阵列中需要授权的网关,阵列GateAgent是指API网关阵列,即所有
的API网关,图8中的网关服务对应上文的业务服务。
[0154] 2)对网关进行授权,并添加授权的记录。
[0155] 许可中心根据许可证书和网关发送的实际逻辑CPU数量(对应上文的实际处理器数量),判断是否对网关进行授权,并向网关返回结果。
[0156] 检测许可证书,分为以下几个情况:
[0157] ①许可证书未安装/安装失败:返回“未检测到合法的license文件”的提示,即提示未授权许可的错误信息。
[0158] ②当前节点(发起请求的网关所在的服务器)已授权,返回已授权信息,并更新最后获取时间,作为示例,这里以服务器为单位进行授权。
[0159] ③当前节点未授权:以M表示许可证书中向当前节点授权使用的逻辑CPU数量,以N表示当前节点的实际逻辑CPU数量,CPU计数器中的数值初始化为M,其中,CPU计数器中的数
值对应上文的剩余的处理器数量。若M为0,则返回0,即向当前节点分配的逻辑CPU数量为0。
若1节点,CPU计数器中的数值减N。当CPU计数器中的数值小于数量阈值时,可输出告警信息,例
如将告警信息显示于网关控制台的界面中,以提示客户侧的相关人员扩容许可。
[0160] 在每次通过检测许可证书判断是否进行授权后,记录本次检查的日志,日志信息包括但不限于:调用来源、节点ID、调用时间、调用状态和返回结果。此外,还可保存网关授
权的记录,包括但不限于:授权序列号、许可证书序列号、分配的逻辑CPU数量、授权时间、最
后获取时间和到期时间。其中,可对保存网关授权的记录的文件或数据库加密,以提升其安
全性和保密性。日志信息和网关授权的记录可便于客户侧的相关人员实时了解授权情况、
是否过期以及是否需要追加许可等。
[0161] 3)列出当前所有许可信息。
[0162] 通过命令行工具展示许可信息中与所有节点对应的内容,例如可以是上文的日志信息和网关授权的记录。展示的内容包括但不限于:授权节点ID、计算机名、网络设备名、授
权序列号、分配的逻辑CPU数量、授权时间、最后获取时间及状态。其中,状态包括:a.正常:
正常按照许可信息分配逻辑CPU数量,并且授权节点连接正常;b.连接失效:授权节点心跳
检测一段时间后无响应。
[0163] 2、授权状态检测。
[0164] 如图9所示,在采集智能网关阵列中各网关所在节点的设备信息(即实际逻辑CPU数量),并根据许可证书完成逻辑CPU数量的分配后,智能网关阵列通过API网关上的许可服
务接口,在每次启动时或设定周期(如1天)到达时,检查授权节点是否连接。对于某个授权
节点来说,若最后一次连接成功时间(即最后获取时间)距今超过时长阈值(如7天),则自动
失效对该授权节点的授权,并释放分配给该授权节点的逻辑CPU数量。
[0165] 本申请实施例还提供了如图10所示的网关控制的流程示意图,在将许可证书安装至许可中心后,智能网关阵列在每次启动时或设定周期到达时,都会重新获取网关所在服
务器的实际逻辑CPU数量,并检查本地是否存在许可证书,若本地存在许可证书,则直接根
据许可证书进行授权许可。若本地不存在许可证书,则连接到许可服务。这里,阵列授权
Agent也可以定时检查许可中心返回的结果,例如返回的网关授权的记录,并连接许可服
务,实现对授权情况的定期检查。
[0166] 若无法连接上许可服务,或者许可服务不存在,则提示未授权许可的错误信息。若能够连接上许可服务,则阵列GateAgent将计算签名,即对阵列授权Agent进行身份鉴权。身
份鉴权通过后,阵列GateAgent将包括实际逻辑CPU数量的请求,通过API网关路由过程转发
至许可中心,其中,API网关路由过程由部署有许可服务的接口的API网关实现。许可中心接
收到该请求后,根据安装的许可证书得到授权许可的结果(例如网关授权的记录),并将结
果以请求形式返回给阵列授权Agent,同时更新许可证书(例如添加网关授权的记录),其
中,许可中心GateAgent同样通过计算签名的方式进行身份鉴权,以保证在智能网关阵列中
进行数据传输的安全性。
[0167] 许可中心返回结果的情形包括但不限于以下示例:1)许可证书仍在有效期内,且仍有剩余的逻辑CPU数量,则向网关分配逻辑CPU数量,即图10中所示的许可数量,以启动网
关上的服务;2)许可证书已失效,则提示授权过期的错误信息;3)许可证书中无剩余的逻辑
CPU数量,则提示未授权许可的错误信息。
[0168] 值得说明的是,图10涉及的阵列授权Agent、阵列GateAgent以及许可中心GateAgent的相关概念与图8相同,此处不再进行赘述。另外,图10中仅以实现的功能来划分
不同的网关,但在实际应用场景,不同的网关可能存在重叠,或者还可进一步拆分出更多类
型的网关,本申请实施例对此不做限定。
[0169] 3、许可签发与管理
[0170] 如图11所示,客户侧的运维人员在私有云(如政务云)上部署好网关后,登录网关控制台,下载许可中心的部署信息,然后前往公有云上的签发中心,上传包括部署信息的申
请信息。然后,获取签发中心对申请信息审批通过后,下发的许可证书。
[0171] 在此期间,私有化部署在客户侧的智能网关阵列和许可服务,将持续不断地对许可证书的有效性做验证,例如检查许可证书的有效期,并将验证结果同步给互联网端的签
发中心,签发中心也会根据需要重新生成许可证书,新的许可证书会再次同步到许可服务。
在图11中,签发中心提供的功能包括但不限于企业管理、产品管理、管理流程、证书签发、加
解密及有效性检查,其中,加解密指的是对许可证书进行加解密;许可服务提供的功能包括
但不限于证书安装、证书检查、证书更新、许可验证和防复制,其中,由于解密密钥存储在许
可服务中,即必须调用许可服务才能获知许可证书中的内容,实现了许可证书防复制的能
力;智能网关阵列和身份认证模块可调用许可服务,从而实现相应目的,其中,图11示出的
许可维度是指网关发送的实际逻辑CPU数量,身份认证模块基于智能网关阵列实现,用于提
供统一账号和认证管理、统一用户管理、统一组织结构管理和统一通讯录管理等功能。
[0172] 通过本申请实施例能够实现以下技术效果:
[0173] 1)在本申请实施例中,网关本身提供的服务不受许可影响,即在客户侧部署网关后即便没有申请许可,网关自身提供的服务也可以照常运作,提升了网关运行的稳定性。而
客户侧在网关上发布的应用(如小程序)及服务站点(如网站)等会作为许可保护的对象,即
所有发布在网关的应用及服务站点等在启动时,都需要许可授权才能正常访问。
[0174] 2)将网关的授权机制与业务系统剥离开,网关的授权方式为按逻辑CPU数量去授权。即网关私有化部署在客户侧的机器上,而该机器为支撑网关运作所需要的CPU配置,是
可以在规划部署方案时提前明确的,与业务系统的运作情况无关,只涉及到网关本身的并
发情况。因此,能够有效保障业务系统的正常运作。此外,在智能网关阵列第一次启动时,可
设定默认使用一个逻辑CPU,以在授权前保障业务系统的正常运作。
[0175] 3)实时了解授权的状态。通过逻辑CPU数量授权,定时检查授权节点是否连接,若连接超时,则自动失效对授权节点的授权,释放逻辑CPU数量,实现了资源的节省。
[0176] 下面继续说明本申请实施例提供的业务系统中的网关控制装置243实施为软件模块的示例性结构,在一些实施例中,如图2A所示,存储在存储器240的业务系统中的网关控
制装置243中的软件模块可以包括:第一获取模块2431,用于获取针对业务系统中的网关的
许可信息;其中,许可信息用于指示向网关授权使用的处理器数量;分配模块2432,用于通
过许可信息确定向网关分配的处理器数量;其中,向网关分配的处理器数量小于或等于授
权使用的处理器数量;运行模块2433,用于根据向网关分配的处理器数量,运行部署在网关
上的业务服务。
[0177] 在一些实施例中,第一获取模块2431,还用于:将申请信息发送至签发中心;其中,申请信息包括为网关申请的处理器数量;获取签发中心对申请信息审批通过时、发送的加
密后的许可信息以及解密密钥;其中,解密密钥用于在确定向网关分配的处理器数量时,对
加密后的许可信息进行解密处理。
[0178] 在一些实施例中,业务系统中的网关控制装置243还包括:剩余数量计算模块,用于当确定出向网关分配的处理器数量时,将授权使用的处理器数量减去向网关分配的处理
器数量,得到剩余的处理器数量;告警模块,用于当剩余的处理器数量小于数量阈值时,输
出告警信息;其中,告警信息用于提示将新的申请信息发送至签发中心,新的申请信息用于
申请新的许可信息,以使新剩余的处理器数量大于或等于数量阈值,新剩余的处理器数量
为新的许可信息中授权使用的处理器数量减去向网关分配的处理器数量得到。
[0179] 在一些实施例中,分配模块2432,还用于:根据许可信息中的设备信息,从业务系统包括的多个网关中确定许可网关;其中,设备信息包括许可网关所在设备的地址;在许可
网关部署对应许可信息的许可服务;响应于对许可服务的调用,通过许可信息确定向调用
许可服务的网关分配的处理器数量;其中,调用许可服务的网关为业务系统中的任意一个
网关。
[0180] 在一些实施例中,分配模块2432,还用于:获取调用许可服务的网关生成的第一签名;其中,第一签名是对调用许可服务的网关的标识信息进行加密处理得到的;对预先存储
的、有权调用许可服务的网关的标识信息进行加密处理,得到第二签名;当第一签名与第二
签名匹配时,通过许可信息确定向调用许可服务的网关分配的处理器数量。
[0181] 在一些实施例中,分配模块2432,还用于:将许可服务的接口部署至业务系统中具有转发能力的网关,以使业务系统中的网关通过许可服务的接口,调用许可服务;将分配的
处理器数量发送至具有转发能力的网关,以使具有转发能力的网关将分配的处理器数量,
发送至调用许可服务的网关。
[0182] 在一些实施例中,分配模块2432,还用于:在网关每次启动时或设定周期到达时,获取网关的实际处理器数量;当根据许可信息确定未向网关分配处理器数量时,根据授权
使用的处理器数量与实际处理器数量之间的比对结果,确定向网关分配的处理器数量,并
将分配时间添加至许可信息中;当根据许可信息确定已向网关分配处理器数量时,保持向
网关分配的处理器数量不变,并根据实时时间更新许可信息中的分配时间。
[0183] 在一些实施例中,分配模块2432,还用于:当授权使用的处理器数量小于实际处理器数量时,将授权使用的处理器数量,确定为向网关分配的处理器数量;当授权使用的处理
器数量大于或等于实际处理器数量时,将实际处理器数量确定为向网关分配的处理器数
量。
[0184] 在一些实施例中,业务系统中的网关控制装置243还包括:差值时长确定模块,用于将实时时间减去许可信息中的分配时间,得到差值时长;无效模块,用于当差值时长超过
时长阈值时,确定向网关分配的处理器数量无效。
[0185] 在一些实施例中,运行模块2433,还用于:当向网关分配的处理器数量为零时,运行部署在网关上的第一业务服务,并拒绝运行部署在网关上的第二业务服务;当向网关分
配的处理器数量大于零时,根据向网关分配的处理器数量,运行部署在网关上的第一业务
服务和第二业务服务;其中,第一业务服务通过网关自身的接口实现;第二业务服务用于与
部署在其他网关的业务服务进行互相调用。
[0186] 在一些实施例中,分配模块2432,还用于:当实时时间超过许可信息中的有效期时,确定向网关分配的处理器数量为零。
[0187] 在一些实施例中,业务系统中的网关控制装置243还包括:初始运行模块,用于当网关第一次启动时,根据设定的处理器数量运行部署在网关上的业务服务;其中,设定的处
理器数量大于零。
[0188] 下面继续说明本申请实施例提供的业务系统中的网关控制装置455实施为软件模块的示例性结构,在一些实施例中,如图2B所示,存储在存储器450的业务系统中的网关控
制装置455中的软件模块可以包括:第二获取模块4551,用于获取针对业务系统中的网关的
许可信息;其中,许可信息用于指示向网关授权使用的处理器数量,还用于确定向网关分配
的处理器数量;显示模块4552,用于响应于对网关的查看操作,在显示界面中显示授权使用
的处理器数量、以及向网关分配的处理器数量;其中,向网关分配的处理器数量用于运行部
署在网关上的业务服务。
[0189] 在一些实施例中,第二获取模块4551,还用于:响应于在显示界面中输入申请信息的操作,将申请信息发送至签发中心,并获取签发中心对申请信息审批通过时发送的许可
信息。
[0190] 本申请实施例提供一种存储有可执行指令的计算机可读存储介质,其中存储有可执行指令,当可执行指令被处理器执行时,将引起处理器执行本申请实施例提供的方法,例
如,如图3A、图3B、图3C和图4示出的业务系统中的网关控制方法。
[0191] 在一些实施例中,计算机可读存储介质可以是FRAM、ROM、PROM、EPROM、EEPROM、闪存、磁表面存储器、光盘、或CD‑ROM等存储器;也可以是包括上述存储器之一或任意组合的
各种设备。
[0192] 在一些实施例中,可执行指令可以采用程序、软件、软件模块、脚本或代码的形式,按任意形式的编程语言(包括编译或解释语言,或者声明性或过程性语言)来编写,并且其
可按任意形式部署,包括被部署为独立的程序或者被部署为模块、组件、子例程或者适合在
计算环境中使用的其它单元。
[0193] 作为示例,可执行指令可以但不一定对应于文件系统中的文件,可以可被存储在保存其它程序或数据的文件的一部分,例如,存储在超文本标记语言(HTML,Hyper Text 
Markup Language)文档中的一个或多个脚本中,存储在专用于所讨论的程序的单个文件
中,或者,存储在多个协同文件(例如,存储一个或多个模块、子程序或代码部分的文件)中。
[0194] 作为示例,可执行指令可被部署为在一个计算设备上执行,或者在位于一个地点的多个计算设备上执行,又或者,在分布在多个地点且通过通信网络互连的多个计算设备
上执行。
[0195] 综上,通过本申请实施例能够实现以下技术效果:
[0196] 1)将网关的授权机制与业务系统的运作情况剥离开来,根据处理器数量对网关进行授权,提升了网关控制的稳定性,就算业务系统上线后的访问频率或使用流量较高,也能
够保证业务系统的正常运作,不会出现业务系统崩溃或者中途宕掉的情况。本申请实施例
能够较好地适用于私有化部署的应用场景。
[0197] 2)将在网关部署的业务服务划分为第一业务服务和第二业务服务,并明确许可的对象是第二业务服务。如此,在未对网关分配处理器数量或分配的处理器数量为零时,仍能
够保证利用网关自身接口提供的第一业务服务的正常运行,提升了业务系统的健壮性。
[0198] 3)本申请实施例通过获取加密后的许可信息,并在满足解密条件时,对加密后的许可信息进行解密,提升了许可信息本身的安全性和保密性,有效地避免了恶意方窃取许
可信息。
[0199] 4)实时或周期性地计算剩余的处理器数量,当剩余的处理器数量不足时,输出告警信息,以提醒对授权使用的处理器数量进行扩容,进一步保证了业务系统的正常运作。
[0200] 5)在显示界面中显示向网关授权使用的处理器数量、向网关分配的处理器数量以及与网关关联的其他信息,便于客户侧的相关人员如运维人员实时了解网关授权情况,有
助于相关人员判断许可是否过期,是否需要追加(扩容)许可等。
[0201] 6)实时或周期性地检查对网关的授权情况,若得到的差值时长超过时长阈值,则自动失效对网关的授权,释放处理器数量,实现了资源的节省。
[0202] 以上,仅为本申请的实施例而已,并非用于限定本申请的保护范围。凡在本申请的精神和范围之内所作的任何修改、等同替换和改进等,均包含在本申请的保护范围之内。