具体实施方式
为使本发明的目的、技术方案及优点更加清楚明白,以下参照附图并举实施例,对本发明作进一步详细说明。
本发明实施例公开了一种在网络环境中进行License管理的技术方案,该方案由License客户端向License服务器上报该License客户端所拥有的License控制项及相应的资源数量,并由License服务器根据所接收的License控制项及相应的资源数量,计算每个License控制项的资源总量,然后在每个License控制项的资源总量内,将License控制项资源重新分配给License客户端。此后,就由各License客户端所获取到的License控制项来控制相应软件的运行,从而实现了由License服务器对各设备中的License控制项资源进行统一管理,进而控制网络中各软件程序的运行,使得在网络中已经形成完善的单机License文件管理流程、且各终端上已经使用大量单机License文件的情形下,能够平滑地进行License文件的网络共享,降低了升级成本和维护成本。
由上述概述可见,本发明实施例公开了一种在现有网络License管理技术的基础上,能够共享网络中已有单机License文件的技术方案,使得单机License文件中的License控制项资源能够由License服务器进行统一管理和分配,从而被网络中的License客户端共享。
本发明实施例进行License管理的方法包括如下几个主要的过程:
License客户端加入License网络共享的过程;
License服务器为License客户端分配License控制项资源的过程;
License客户端退出License网络共享的过程;
License客户端与License服务器之间进行同步的过程;
License服务器对License控制项资源进行自动调整的过程。
上述几个主要过程中,License服务器和License客户端之间需要进行通信,实现所述通信最常用的方式是采用TCP/IP协议,在后续描述中,将对上述几个主要过程的较佳实施方式、以及License客户端和License服务器之间交互的消息进行详细说明。
1、License客户端加入License网络共享的过程
图2为本发明实施例中License客户端加入License网络共享的过程示意图。参见图2,该过程包括:
步骤201:License服务器向License客户端发送加入License网络共享的通知。
本步骤中,License服务器向License客户端发送的加入License网络共享的通知,可以使用如表1所示消息格式:
字段 |
值 |
注释 |
长度(以字节计算) |
客户端标识 |
|
|
2 |
帧指示 |
|
单帧、首帧、中间帧或最后帧 |
1 |
帧序列号 |
|
|
1 |
消息类型 |
0X01 |
|
1 |
长度 |
|
后面内容的消息长度 |
1 |
类型 |
0X00/0X01 |
加入网络共享/退出网络共享 |
1 |
表1
表1中,各字段的值可以根据“注释”进行相应的置位,值得说明的是,本步骤是License服务器向License客户端发送加入License网络共享的通知,因此,根据表1,“类型”字段应置为表示加入网络共享的“0X00”。
此外,还可以定义表1所示“类型类型”字段取值为“0X02”时,表示License客户端向License服务器返回的成功应答消息,取值为“0X03”时,表示License客户端向License服务器返回的失败应答消息。License客户端可以使用表1所述消息格式向License服务器返回针对所述加入License网络共享通知的成功应答消息或失败应答消息。
较佳地,可以预先在License服务器中设置需要进行License网络共享的License客户端,则本步骤中,License服务器可以向所述设置的需要进行License网络共享的License客户端发送加入License网络共享的通知。
并且,还可以预先在License服务器中设置需要进行License网络共享的License控制项,并由License服务器将所述预先设置的需要进行License网络共享的License控制项携带于所述通知中发送给License客户端,此时,需要在所述通知中增加相应的字段,例如:增加License控制项标识字段。
步骤202:接收到该通知,License客户端根据自身的实际情况向License服务器上报该License客户端所拥有的License控制项及相应的资源数量。
本步骤中,License客户端向License服务器上报License控制项及相应的资源数量时,可以使用如表2所示消息格式:
字段 |
值 |
注释 |
长度(以字节计算) |
客户端标识 |
|
|
2 |
帧指示 |
|
单帧、首帧、中间帧或最后帧 |
1 |
帧序列号 |
|
|
1 |
消息类型 |
0X04 |
|
1 |
长度 |
|
后面内容的消息长度 |
1 |
扩展消息标识 |
0xF1 |
|
1 |
扩展消息类型 |
0x00/0x01/0x02 |
0x00:客户端向服务器上报License文件资源0x01:服务器分配给该客户端的资源0x02:客户端实际使用资源 |
1 |
操作模式标识 |
0x00 |
属性ID |
1 |
操作模式 |
0x00/0x01/0x02 |
0x00:增加0x01:删除0x02:修改 |
1 |
LICENSE资源项标识 |
0x01 |
属性ID |
1 |
长度 |
|
后面内容的消息长度 |
2 |
资源项名称1 |
|
|
16 |
资源项数量1 |
|
|
2 |
...... |
|
|
|
资源项名称n |
|
|
16 |
资源项数量n |
|
|
2 |
表2
表2中,各字段的值可以根据“注释”进行相应的置位。此外,还可以定义表2所示“类型类型”字段取值为“0X05”时,表示License服务器向License客户端返回的成功应答消息,“类型类型”字段取值为“0X06”时,表示License服务器向License客户端返回的失败应答消息。License服务器和License客户端可以使用如表2所示消息格式对License控制项及相应的资源数量进行交换。
如前所述,部署在网络环境中实际硬件设备上的软件称为License客户端,因此,本步骤中,实际上是License客户端所在的硬件设备接收到所述“加入License网络共享的通知”。通常,同一个设备上可能存在多个License客户端。此时,该设备首先需要判断是否有License文件,如果有,则在验证所述License文件的合法性之后,向License服务器上报相应的License控制项及资源数量;如果该设备上有某个License客户端、但没有所述License客户端的License文件,或所述License客户端的License文件无效,则向License服务器上报该License客户端所拥有的License控制项,并上报所述License控制项的资源数量为0。
由于License客户端实际上就是软件程序,就如同软件程序知道其自身具备哪些功能一样,软件程序知道其自身具备哪些License控制项。只是,可能运行该软件程序的设备不具有该软件程序的License文件或者所述License文件无效,此时,软件程序可以将其自身所具备的License控制项上报,并上报所述License控制项的资源数量为0。这样做的目的是为了实现本发明实施例所述License网络共享,即:只要某个设备上安装了某种软件程序,那么,即使该设备不具有该软件的License文件,也可以通过共享网络中其他设备的License文件中相应的License控制项来运行该软件。
步骤203:License服务器根据接收的License控制项及相应的资源数量,计算每个License控制项的资源总量。
本步骤中,License服务器还可以进一步记录License客户端与该License客户端所上报的License控制项及相应的资源数量之间的对应关系。
2、License服务器为License客户端分配License的过程
在分配License的过程中,License服务器将在每个License控制项的资源总量内,将License控制项资源分配给相应的License客户端。如果在上述步骤203中,License服务器记录了License客户端与该License客户端所上报的License控制项及相应的资源数量之间的对应关系,则可以根据所述记录的对应关系,将License控制项资源分配给与该License控制项存在对应关系的License客户端。
所述分配的过程可以根据License客户端的请求触发执行,也可以由License服务器根据实际需要触发执行。下面以License客户端向License服务器请求License控制项资源为例进行说明。
图3为本发明实施例中License服务器为License客户端分配License的过程示意图。参见图3,该过程包括:
步骤301:License客户端向License服务器发送请求,请求获取相应的License控制项资源。
步骤302:License服务器判断相应License控制项是否还存在可用的资源,如果还存在,继续执行步骤303,否则,无法根据该License客户端的请求进行License分配,结束本过程。
为了便于实现License分配,可以建立License管理表,通过所述License管理表管理每个License控制项对应于每个License客户端的资源数量、分配数量和使用数量。License管理表的示例如表3所示:
|
|
License客户端1 |
License客户端2 |
License客户端3 |
License客户端4 |
总量 |
License控制项1 |
资源数量 |
100
|
0
|
NA
|
100
|
200 |
分配数量 |
50 |
50 |
NA
|
100 |
200 |
使用数量 |
45
|
45
|
NA
|
90
|
180 |
License控制项2 |
资源数量 |
NA
|
0
|
200
|
200
|
400 |
分配数量 |
NA
|
50 |
50 |
300 |
400 |
使用数量 |
NA
|
30
|
30
|
200
|
260 |
表3
表3中,资源数量:表示License客户端自身原本所拥有的某一License控制项的资源数量;
分配数量:表示License服务器为License客户端所分配的某一License控制项的资源数量;
使用数量:表示License客户端实际使用的某一License控制项的资源数量;
NA:表示License客户端没有相应的License控制项,因此,不能为该License客户端分配相应的License控制项;
总量:表示某一License控制项的资源总量、分配总量或使用总量;
表3中带下划线的数值在进行License分配时不可修改,但是在后续License客户端退出License网络共享等可能引起资源总量发生改变的情况下,可以根据实际情况作相应修改。
步骤303:License服务器判断该License客户端是否能够被分配其所请求的License控制项资源,即:判断该License客户端是否具备其所请求的License控制项,如果判断结果为是,则继续执行步骤304;否则,无法根据该License客户端的请求进行License分配,结束本过程。
步骤302和步骤303可以调换执行次序。
步骤304:License服务器为License客户端分配License控制项以及相应的资源数量。
本步骤中,可以根据所述分配的情况更新License管理表。
在License服务器为License客户端分配License控制项以及相应的分配数量之后,就可以由License控制项来控制相应License客户端的运行了。这与背景技术所述现有网络License管理技术中的第4步相同,也就是说,本发明实施例所述技术方案中,License客户端的运行过程是:License客户端从License服务器获取License控制项,由License控制项来控制License客户端的运行。
由于现有单机License管理技术中,License客户端的运行过程是:首先验证其自身所拥有的License文件,从所述License文件中获取License控制项,然后由License控制项控制软件的运行;因此,在本发明实施例所述技术方案中,对于已经拥有License文件的License客户端,需要将其现有的运行过程改变为上述本发明实施例所述运行过程,使之不再根据从其自身所拥有的License文件中获取到的License控制项来控制License客户端的运行。所述改变可以按照现有网络License管理技术,通过修改License客户端的软件程序来实现。
3、License客户端退出License网络共享的过程
图4为本发明实施例中License客户端退出License网络共享的过程示意图。参见图4,该过程包括:
步骤401:License服务器判断是否存在退出License网络共享的License客户端,如果是,则继续执行步骤402;否则,继续执行本步骤所述判断。
当License服务器收到来自于License客户端的退出License网络共享的消息时,或当License服务器检测到与某个License客户端之间的连接已中断一定时间时,或由于其他原因使得License客户端需要退出License网络共享时,均可以使本步骤所述判断条件得到满足,继续执行步骤402。本步骤所述判断可以定时进行。
步骤402:License服务器从所述退出License网络共享的License客户端回收其他License客户端所上报的License控制项资源,并将所述退出License网络共享的License客户端所上报的License控制项资源数量,从相应License控制项的资源总量中扣除。
由于各License客户端在加入License网络共享时,分别将其所拥有的License控制项资源上报给了License服务器,由License服务器对License控制项资源进行统一分配;所以,该License客户端在退出License网络共享时,可能占用着网络中其他License客户端的License控制项资源,也可能向其他License客户端贡献着其自身所拥有的License控制项资源。因此,在某个License客户端退出License网络共享时,License服务器需要从该License客户端回收分配给该License客户端的、属于其他License客户端的License控制项资源;并且,由于该License客户端所拥有的License控制项资源将不再属于License网络共享,因此,需要从相应的License控制项的资源总量中扣除该License客户端所上报的那些资源数量。
本步骤所述回收、扣除,对于表3所示License管理表来说,就是对表3中的相关数值进行相应的修改;对于License控制项资源来说,就是按照与现有网络License管理技术相同的方法将已经分配给License客户端的License控制项资源收回。具体而言:
从所述退出License网络共享的License客户端“回收”其他License客户端所上报的License控制项资源是指:将退出License网络共享的客户端占用的其他客户端共享的License数量增加到相应License控制项的资源数量中;
将所述退出License网络共享的License客户端所上报的License控制项资源数量,从相应License控制项的资源总量中扣除是指:从相应License控制项的资源数量中减去该License客户端共享给其他License客户端的License控制项资源数量。
4、License客户端与License服务器之间进行同步的过程
License客户端与License服务器之间可能需要进行同步,同步就是保持License客户端侧各种信息与License服务器侧各种信息的一致性,即:使License服务器所维护的License管理表与网络中License客户端的License控制项资源的实际情况保持一致。在如下几种情况下可能需要进行同步:
第一种情况:License客户端的License控制项或相应的资源数量发生变化。引起所述变化的原因包括:License文件更新、License文件过期或License控制项过期等。这种情况下,License客户端与License服务器之间的同步包括如下步骤,请参见图5:
步骤501:License客户端将变化后的License控制项及相应的资源数量上报给License服务器。
步骤502:License服务器以所述变化后的License控制项及相应的资源数量更新相应的License控制项的资源总量。具体而言,对于License管理表来说,就是删除之前由该License客户端上报的License控制项及相应的资源数量,并将本次该License客户端上报的License控制项及相应的资源数量合并到相应的License控制项的资源总量中。
第二种情况:License服务器需要为License客户端重新分配License控制项资源时,可以通知License客户端重新从License服务器获取相应的License控制项资源。
第三种情况:当License服务器发现某个License控制项的资源总量低于所述License控制项的资源分配总量时,通知License客户端释放相应的License控制项资源。
上述第三种情况可能是由License客户端退出License网络共享所引起的。因为,在License客户端退出License网络共享时,License服务器需要从相应License控制项的资源总量中扣除该License客户端所上报的License控制项资源数量,这使得相应License控制项的资源总量减少了;而在此之前,License服务器是依据扣除之前的License控制项的资源总量来进行资源分配的,这就可能导致某个License控制项的资源总量低于所述License控制项的资源分配总量的情况发生。
上述第三种情况下,可以采取多种策略来决定由哪些License客户端释放License控制项资源,并决定这些License客户端释放License控制项资源的数量。例如,参见表3,在需要License客户端释放40个单位的License控制项1的资源时,可以采取以下几种方式:
第一种方式:由License服务器计算分配给各License客户端的License控制项1的资源数量的比例,并按照所述比例通知各License客户端释放。表3中,所述比例为50∶50∶0∶100,此时,License服务器可以通知License客户端1和License客户端2释放10个单位的License控制项1的资源,通知License客户端4释放20个单位的License控制项1的资源。
第二种方式:首先由License服务器通知各License客户端:将已分配给各License客户端、但各License客户端尚未使用的License控制项1的资源释放,参见表3,经过本步骤之后将释放20个单位的License控制项1的资源;然后按照上述第一种方式通知各License客户端,将剩余的需要释放的20个单位的资源释放。
第三种方式:License服务器通知各License客户端需要释放License控制项1的资源,由各License客户端根据各自所采取的策略对License控制项1的资源进行释放。例如,根据各License客户端在过去一段时间内对License控制项1的资源实际使用量的平均值,预留与所述平均值相等数量的资源、或预留平均值与预定阀值之和的数量的资源后,将自身所占用的其他License控制项1的资源释放。
第四种情况:License服务器可以周期性地检查License客户端对License控制项的使用数量和分配数量的一致性,在不一致时,通知License客户端重新从License服务器获取相应的License控制项资源。在收到所述重新获取License控制项资源的通知后,License客户端当前所拥有的License控制项资源将被释放或失效,License客户端需要重新从License服务器获取相应的License控制项资源;而License服务器重新分配License控制项资源的过程,实际上就完成了一次License客户端与License服务器的同步。
5、License服务器对License控制项资源进行自动调整的过程
在License服务器将License控制项资源分配给License客户端之后,License服务器可以周期性地获得License客户端对License控制项资源的实际使用量,并通过计算过去一段时间内各License客户端对License控制项资源实际使用量的平均值,来对License控制项的空闲资源进行重新分配。这里,License控制项的空闲资源即:某一License控制项的资源数量总量减去使用数量总量。
例如,License服务器可以通过周期性地向License客户端发送请求的方式,或由License客户端周期性地主动上报的方式,来获取License客户端在过去一段时间内对各个License控制项资源的实际使用量。假设,所述周期为1天,License客户端1在过去5天内对License控制项1的实际使用量分别是:38、39、40、41和42,则该License客户端1对License控制项1的实际使用量的平均值为40。类似地,假设计算得到License客户端2对License控制项1的实际使用量的平均值为30、License客户端3对License控制项1的实际使用量的平均值为45、License客户端4对License控制项1的实际使用量的平均值为50。
在对License控制项1的空闲资源进行重新分配时,可以根据上述计算得到的每个License客户端对License控制项1的实际使用量的平均值计算各License客户端实际使用License控制项1资源的比例,并按照所述比例将License控制项1的空闲资源分配给相应的License客户端。对应于上述例子,可以按照比例40∶30∶45∶50将License控制项1的空闲资源分配给License客户端1、License客户端2、License客户端3和License客户端4、
在实际应用中,可以对上述自动调整的功能进行设置,以更好地实现本发明实施例所述License网络共享。例如:
可以设置参与自动调整的License控制项和/或参与自动调整的License客户端,那么所述自动调整只会在所述设置的License控制项与License客户端范围内进行。
还可以设置自动调整的周期、自动调整的参考时间段,并以各License客户端在所述参考时间段内对License控制项资源实际使用量的平均值作为各License客户端的分配数量。
还可以设置最低分配数量,当在上述参考时间段内,某个License客户端的分配数量为0时,可以按照设置的最低分配数量为该License客户端分配License控制项资源。
进一步地,可以设置一个阈值,当空闲License控制项的数量低于所述阈值时,进行相应的告警。当然,还可以设置所述告警发生的周期。
另外,本发明实施例上述自动调整的功能也可以单独应用于现有技术所述网络License管理技术中,从而在现有网络License管理技术中实现对License控制项资源的自动调整。
采用本发明实施例上述技术方案能够带来如下有益效果:
如果已经形成了完善的单机License文件管理流程、且现有网络中单机License方案已经大规模实施,而需要将各单机License文件的控制项资源在各License客户端中重新分配的情况下,采用本发明实施例所述技术方案,可以不采取大规模License维护升级手段,实现将License由单机管理方式转换为网络共享管理方式。
此外,在实际应用中,尤其是在电信网络中,同一License客户端在不同时间内,其License控制项资源的使用量是不相同的,而且往往具有数量级的差异。采用本发明实施例所述技术方案可以对各License客户端的License控制项资源进行自动调整,避免手工调整的繁琐和高成本,提高客户满意度。
可见,本发明实施例所述技术方案能够降低License管理中的升级成本和维护成本,并能够对单机License文件实现网络共享。
以上对本发明实施例进行License管理的方法的具体实施方式进行了详细说明,下面对本发明实施例进行License管理的系统进行详细说明。
图6为本发明实施例中License管理系统的组成结构示意图。参见图6,该系统包括License服务器和多个客户端设备。其中,每个客户端设备上部署有至少一个License客户端,每个License客户端拥有一个License文件。
其中,License客户端,用于向License服务器上报其自身所拥有的License控制项及相应的资源数量,并用于接收License服务器所分配的License控制项及相应的资源数量;
License服务器,用于接收所述License客户端上报的所述License客户端拥有的License控制项及相应的资源数量,根据所述接收的License控制项及相应的资源数量计算每个License控制项的资源总量,并在所述每个License控制项的资源总量内,将License控制项资源分配给所述License客户端。
图7为本发明实施例中License服务器的组成结构示意图。参见图7,该License服务器包括:
第一通信模块710,用于接收License客户端上报的信息;所述上报的信息包括:所述License客户端拥有的License控制项及相应的资源数量;
资源管理模块720,用于根据各个License客户端上报的License控制项及相应的资源数量,计算每个License控制项的资源总量;
资源分配模块730,用于在每个License控制项的资源总量内,将License控制项资源分配给License客户端。
图7所示License服务器中还可以包括:客户端识别模块760,用于识别所述上报信息的License客户端;
所述资源管理模块720中可以包括:资源总量管理单元721,用于根据各个License客户端上报的License控制项及相应的资源数量,计算并记录每个License控制项的资源总量;
上报管理单元722,用于根据License客户端上报的信息,记录License客户端与该License客户端所上报的License控制项及相应的资源数量之间的第一对应关系;
所述资源分配模块730为第一资源分配模块,用于在每个License控制项的资源总量内,根据所述记录的第一对应关系,将License控制项资源分配给与所述License控制项存在第一对应关系的License客户端,并用于将资源分配情况通知分配管理单元723;
所述资源管理模块中还可以包括:分配管理单元723,用于根据第一资源分配模块的分配情况,记录License客户端与分配给该License客户端的License控制项及相应的资源数量之间的第二对应关系。
所述上报管理单元722中可以包括:
上报判断子单元7221,用于根据License客户端上报的信息判断是否已记录License客户端与该License客户端所上报的License控制项及相应的资源数量之间的第一对应关系,若已记录所述第一对应关系,则进一步根据所述记录的第一对应关系判断所述License客户端的License控制项或相应的资源数量是否发生变化,如果发生变化,由上报记录子单元7222根据所述上报的信息更新所述已记录的第一对应关系;若未记录所述第一对应关系,由上报记录子单元7222根据所述上报的信息记录相应的第一对应关系;
上报记录子单元7222,用于根据所述上报判断子单元7221的判断结果,进行相应的更新或记录操作。
图7所示License服务器中可以进一步包括:
网络共享管理模块740,用于构造加入License网络共享的通知;
所述第一通信模块710,还用于向License客户端发送所述加入License网络共享的通知。
图7所示License服务器的网络共享管理模块740,还用于确定License客户端的License网络共享状态,在确定License客户端退出License网络共享时,由资源总量管理单元、上报管理单元和分配管理单元进行相应的处理;
所述资源总量管理单元721,用于将分配给所述退出License网络共享的License客户端的、属于其他License客户端的License控制项资源增加到相应License控制项的资源总量中;并将所述退出License网络共享的License客户端所上报的License控制项资源数量,从相应License控制项的资源总量中扣除;
所述上报管理单元722,用于删除所述退出License网络共享的License客户端与该License客户端所上报的License控制项及相应的资源数量之间的第一对应关系;
所述分配管理单元723,用于删除所述退出License网络共享的License客户端与分配给该License客户端的License控制项及相应的资源数量之间的第二对应关系。
较佳地,图7所示License服务器的网络共享管理模块740中可以包括:
设置单元741,用于设置需要加入License网络共享的License客户端以及License控制项;
通知构造单元742,用于构造加入License网络共享的通知,并在所述构造的通知中携带所述需要加入License网络共享的License控制项;
所述第一通信模块710,还用于向所述需要加入License网络共享的License客户端发送所述加入License网络共享的通知;
退出管理单元743,用于确定License客户端的License网络共享状态,在确定License客户端退出License网络共享时,由资源总量管理单元721、上报管理单元722和分配管理单元723进行相应的处理。
图7所示License服务器中可以进一步包括:
一致性管理模块750,用于根据分配管理单元记录的License客户端与分配给该License客户端的License控制项及相应的资源数量之间的第二对应关系、以及资源总量管理单元记录的每个License控制项的资源总量,判断License控制项的资源总量是否低于分配给License客户端的所述License控制项的资源的总量,在判定License控制项的资源总量低于分配给License客户端的所述License控制项的资源的总量时,构造释放相应License控制项资源的通知;
所述第一通信模块710,还用于向License客户端发送所述释放相应License控制项资源的通知。
图7所示第一通信模块710,还可以用于接收License客户端上报的License控制项资源的实际使用数量;
所述资源管理模块720中可以进一步包括:使用管理单元724,用于根据License客户端上报的License控制项资源的实际使用数量,记录License客户端与License控制项及相应的实际使用数量之间的第三对应关系;
所述第一资源分配模块730还用于根据所述记录的License客户端与License控制项及相应的实际使用数量之间的第三对应关系,针对每一个License控制项计算得到各License客户端对所述License控制项资源的实际使用数量的平均值之间的比例,并按照所述比例将尚未分配的License控制项资源分配给相应的License客户端。
图8为本发明实施例中License客户端的组成结构示意图。参见图8,该License客户端包括:
资源确定模块810,用于确定所述License客户端自身所拥有的License控制项及相应的资源数量;
第二通信模块820,用于将所述确定的License控制项及相应的资源数量发送给License服务器,并用于接收License服务器分配的License控制项及相应的资源数量;
运行控制模块830,用于根据所述分配的License控制项及相应的资源数量运行。
图8所示资源确定模块810中可以包括:
判断单元811,用于判断License客户端是否拥有License文件,如果拥有License文件,则由验证单元812处理;否则,由控制项确定单元813处理;
验证单元812,用于验证所述License文件的合法性,在所述License文件合法时,确定License文件中的License控制项及相应的资源数量;在所述License文件不合法时,由控制项确定单元处理;
控制项确定单元813,用于确定所述License客户端所拥有的License控制项,并确定相应License控制项的资源数量为0。
图8所示第二通信模块820,还用于接收来自于License服务器的加入License网络共享的通知;
所述资源确定模块810中的判断单元811为第一判断单元,用于根据所述接收到的加入License网络共享的通知,判断License客户端是否拥有License文件,如果拥有License文件,则由验证单元处理;否则,由控制项确定单元处理。
图8所示资源确定模块810中还可以包括:
变化判断单元814,用于判断License客户端所拥有的License控制项或相应的资源数量是否发生变化,在发生变化时,确定所述变化后的License控制项及相应的资源数量。
图8所示资源确定模块810中还可以包括:
使用监控单元815,用于确定License客户端对License控制项资源的实际使用数量;
所述第二通信模块820,还用于周期性地将所述License控制项资源的实际使用数量发送给License服务器。
由上述技术方案可见,本发明实施例所公开的进行License管理的技术方案中,由License客户端向License服务器上报所述License客户端所拥有的License控制项及相应的资源数量;然后,由License服务器根据所接收的License控制项及相应的资源数量,计算每个License控制项的资源总量,并在每个License控制项的资源总量内,将License控制项资源重新分配给所述License客户端。从而实现了由License服务器对各设备中的License控制项资源进行统一管理,并由License服务器控制网络中各软件程序的运行,使得在网络中已经形成完善的单机License文件管理流程、且各终端上已经使用大量单机License文件的情形下,能够平滑地进行License文件的网络共享,降低了升级成本和维护成本。
本领域普通技术人员可以理解实现上述实施例方法中进行License管理的过程可以通过程序指令相关的硬件来完成,所述的程序可以存储于License服务器和License客户端的可读取存储介质中,该程序在执行时执行上述方法中的对应步骤。所述的存储介质可以如:ROM/RAM、磁碟、光盘等。
以上所述仅为本发明的较佳实施例而已,并非用于限定本发明的保护范围。凡在本发明的精神和原则之内所作的任何修改、等同替换、改进等,均应包含在本发明的保护范围之内。