一种电费计算方法、控制服务器、计算服务器及系统技术领域
本发明涉及通信领域,尤其涉及一种电费计算方法、控制服务器、计算服务器及电费计算系统。
背景技术
电费计算是一项消耗大量资源的计算过程,随着经济的发展,电网客户规模快速增长,“算费”数据量越来越大,电费计算对计算系统的软件和硬件要求也越来越高。其中,在发达地区甚至地市级就能达到150万的抄表量,省级大集中的业务趋势为抄表后3天内的算费带来高并发访问量,为电费计算系统带来了巨大挑战。同时,电费计算系统以逐渐向省级大集中的建设转变,用户对电费计算的能力需求越来越高,也将会给企业的信息化建设管理人员以及企业带来集中系统性能压力的挑战。
以前,电费计算流程为各地区供电局在规定时间段分别进行抄表,收集数据,按照电费计算公式对数据进行计算,最后将计算结果统一汇总到省中心。而现在,由于应用大集中的趋势,未来电网的电费计算将进行省级集中,地区供电局的电费档案数据与电费计算模块,也将进行集中统一管理。然而,在集中化的形势下采用原有电费计算系统,在规定时间段内完成省级集中数据的电费计算,将使省中心的并发量骤增,计算压力显著增大;同时,原有系统所在的地区供电局的服务器与存储资源等是按照电费计算峰值的需要配置资源,资源利用率低,配置不灵活,未来大集中后如果资源不能充分利用,闲置资源一方面造成资源浪费,另一方面也不利于解决电网高并发的问题。
发明内容
本发明所要解决的技术问题在于,提供一种电费计算方法、控制服务器、计算服务器及电费计算系统,可动态分配计算服务器进行电费计算,满足电费计算大并发的需求。
为了解决上述技术问题,本发明提供了一种电费计算方法,包括:
建立控制服务器与计算服务器间连接;所述控制服务器实时获取客户端发送的电费计算请求及与所述控制服务器建立连接的计算服务器的状态参数,所述电费计算请求包括电费计算区段,所述状态参数包括CPU使用率、IO使用率、服务进程;所述控制服务器根据所述电费计算请求及状态参数生成电费计算命令,并将所述电费计算命令发送至相应的计算服务器,所述电费计算命令包括电费计算区段、计算服务器IP地址;所述计算服务器执行所述电费计算命令并生成电费值;所述计算服务器将所述电费值发送至数据中心进行存储;所述计算服务器生成结束信号,并将所述结束信号发送至所述控制服务器,所述结束信号用于表示所述计算服务器已执行完毕所述计算服务器上的电费计算命令。
作为上述方案的改进,所述建立控制服务器与计算服务器间连接的步骤包括:所述计算服务器获取管理员发布的启动信号;所述计算服务器根据所述启动信号生成注册指令,并将所述注册指令转发至所述控制服务器,所述注册指令包括计算服务器IP地址;所述控制服务器根据所述注册指令建立与计算服务器间连接。
作为上述方案的改进,所述计算服务器执行电费计算命令并生成电费值的步骤包括:所述计算服务器根据所述电费计算命令建立电费计算节点服务;所述电费计算节点服务获取数据中心的基础信息,所述基础信息包括电量、计量点;所述电费计算节点服务根据所述基础信息执行所述电费计算命令;所述电费计算节点服务根据执行结果生成电费值。
相应地,本发明还提供了一种控制服务器,包括:连接单元,用于建立与计算服务器间连接;第一获取单元,用于实时获取客户端发送的电费计算请求,所述电费计算请求包括电费计算区段;第二获取单元,用于实时获取与所述控制服务器建立连接的计算服务器的状态参数,所述状态参数包括CPU使用率、IO使用率、服务进程;命令单元,用于根据所述电费计算请求及状态参数生成电费计算命令,所述电费计算命令包括电费计算区段、计算服务器IP地址;第一发送单元,用于将所述命令单元生成的电费计算命令发送至相应的计算服务器。
相应地,本发明还提供了一种计算服务器,包括:执行单元,用于执行控制服务器发送的电费计算命令并生成电费值;第二发送单元,用于将所述执行单元生成的电费值发送至数据中心进行存储;信号单元,用于生成结束信号;第三发送单元,用于将所述信号单元所生成的结束信号发送至所述控制服务器,所述结束信号用于表示所述计算服务器已执行完毕所述计算服务器上的电费计算命令。
作为上述方案的改进,所述执行单元包括:建模单元,用于根据所述电费计算命令建立电费计算节点服务;独立执行单元,用于根据所述建模单元所建立的电费计算节点服务,独立地执行所述电费计算节点服务内的电费计算命令并生成电费值。
作为上述方案的改进,所述独立执行单元包括:获取子单元,用于获取数据中心的基础信息,所述基础信息包括电量、计量点;执行子单元,用于执行所述电费计算命令;电费子单元,用于根据执行结果生成电费值。
作为上述方案的改进,所述的计算服务器还包括:第三获取单元,用于获取管理员发布的启动信号;注册单元,用于根据所述启动信号生成注册指令,所述注册指令包括计算服务器IP地址;转发单元,用于将所述注册指令转发至控制服务器。
相应地,本发明还提供了一种电费计算系统,包括:客户端,用于发送的业务员的电费计算请求;控制服务器,用于建立与计算服务器间连接,实时获取客户端发送的电费计算请求及与所述控制服务器建立连接的计算服务器的状态参数,生成电费计算命令发送至相应的计算服务器;计算服务器,用于执行控制服务器发送的电费计算命令,生成电费值并发送至数据中心进行存储,生成结束信号并发送至所述控制服务器,同时,获取管理员发布的启动信号,生成注册指令并转发至控制服务器进行注册;数据中心,用于存储所述计算服务器发送的电费值及业务员预设的基础信息。
实施本发明的有益效果在于:
执行电费计算前,管理员根据已有经验估算电费计算的规模,动态分配计算服务器的数量,并向需要启动的计算服务器发布的启动信号。计算服务器根据管理员发布的启动信号生成注册指令,并转发至控制服务器进行自动注册,控制服务器根据所述注册指令建立与计算服务器间连接。
连接建立后,各计算服务器共同为控制服务器提供电费计算服务,控制服务器实时获取客户端发送的电费计算请求,同时获取与控制服务器建立连接的已启动的计算服务器的状态参数,控制服务器根据电费计算请求及状态参数生成电费计算命令,并将电费计算命令动态分配至相应的计算服务器,将并发压力分散在多个同时工作的计算服务器上,以满足电费计算大并发的需求,提高计算资源利用率,实现资源的弹性扩展,达到资源的最优化配置。计算服务器根据电费计算命令动态部署电费计算节点服务,使每个电费计算节点服务对应一个服务进程,其中,电费计算节点服务负责具体的电费计算,执行电费计算命令,根据执行结果生成电费值,使服务器资源得到最大效率的利用,有效解决高峰时段并发带来的系统性能压力问题。
另外,计算服务器还将电费值发送至数据中心进行存储,以便用户对电费值进行查询。
附图说明
图1是本发明一种电费计算方法的第一实施例流程图;
图2是本发明一种电费计算方法的第二实施例流程图;
图3是本发明一种电费计算方法的第三实施例流程图;
图4是本发明一种电费计算系统的实施例结构示意图;
图5是本发明一种电费计算系统的实施例中控制服务器的结构示意图;
图6是本发明一种电费计算系统的实施例中计算服务器的结构示意图
图7是本发明一种电费计算系统的实施例中计算服务器的又一结构示意图;
图8是图7中执行单元的结构示意图。
具体实施方式
为使本发明的目的、技术方案和优点更加清楚,下面将结合附图对本发明作进一步地详细描述。
图1是本发明一种电费计算方法的第一实施例流程图,包括:
S100,建立控制服务器与计算服务器间连接。
需要说明的是,计算服务器需要通过注册以建立与控制服务器间连接。执行电费计算前,管理员可以根据已有经验估算电费计算的规模并选定计算服务器进行注册;执行电费计算时,管理员可以根据已与控制服务器建立连接的计算服务器的状态参数,选定新的计算服务器进行注册。其中,计算服务器的数量可以为一个或多个。
S101,所述控制服务器实时获取客户端发送的电费计算请求及与所述控制服务器建立连接的计算服务器的状态参数。
其中,所述电费计算请求包括电费计算区段,所述状态参数包括CPU使用率、IO使用率、服务进程。
S102,所述控制服务器根据所述电费计算请求及状态参数生成电费计算命令。
所述电费计算命令包括电费计算区段、计算服务器IP地址。
需要说明的是,控制服务器按照负载均衡算法生成电费计算命令,即将电费计算请求划分为多个电费计算命令,以实现计算任务的分配。由于控制服务器实时监控与其建立连接的计算服务器的状态参数,控制服务器可对较空闲的计算服务器分配较多的电费计算命令,对较繁忙的计算服务器分配较少的电费计算命令,将电费计算命令分配到不同的计算服务器上进行处理,以减轻单个计算服务器的处理负担,从而极大的提高计算服务器性能,使资源得到最大效率的利用。
另外,当所有已注册并启动的计算服务器的状态参数均过高时,管理员可实时选定新的计算服务器进行注册,使新注册的计算服务器分担一部分的电费计算命令,以缓解原有计算服务器的压力。
S103,将所述电费计算命令发送至相应的计算服务器。
所述电费计算命令包括电费计算区段、计算服务器IP地址,其中计算服务器IP地址为计算服务器的唯一标识,控制服务器可根据计算服务器IP地址将电费计算命令发送至相应的计算服务器。
S104,所述计算服务器执行所述电费计算命令并生成电费值。
所述电费计算命令包括电费计算区段、计算服务器IP地址。
需要说明的是,计算服务器内预设有计费公式,计算服务器可根据电费计算命令中的电费计算区段及预设的计费公式计算电费,并生成对应的电费值。
S105,所述计算服务器将所述电费值发送至数据中心进行存储。
S106,所述计算服务器生成结束信号,并将所述结束信号发送至所述控制服务器。
所述结束信号用于表示所述计算服务器已执行完毕所述计算服务器上的电费计算命令。
需要说明的是,控制服务器接收到所述计算服务器所发送的结束信号后,可知所述计算服务器已执行完毕所述计算服务器上的电费计算命令。此时,用户可通过客户端向控制服务器发送查询信息,控制服务器可根据查询信息查询数据中心中的电费值,并将查询到的电费值发送给客户端。
例如,已有计算服务器B及计算服务器C与控制服务器建立连接且正在工作。业务员通过客户端发送电费计算请求,电费计算请求中包括区域A的信息。控制服务器获取电费计算请求、计算服务器B的状态参数、计算服务器C的状态参数,控制服务器按照负载均衡算法将计算请求划分为两个电费计算命令,且区域A被划分为区段A1及区段A2,其中,一个电费计算命令中包含区段A1的信息及计算服务器B的IP地址,而另一个电费计算命令中包含区段A2的信息及计算服务器C的IP地址。控制服务器将包含有计算服务器B的IP地址的电费计算命令发送至计算服务器B,将包含有计算服务器C的IP地址的电费计算命令发送至计算服务器C。计算服务器B执行相应的电费计算命令并生成电费值,同时,计算服务器C执行相应的电费计算命令并生成电费值,并分别将计算服务器B及计算服务器C所生成的电费值发送至数据中心进行存储。相应地,计算服务器B生成结束信号,并将所述结束信号发送至所述控制服务器以表示已执行完毕相应的电费计算命令;同时,计算服务器C生成结束信号,并将所述结束信号发送至所述控制服务器以表示已执行完毕相应的电费计算命令。
图2是本发明一种电费计算方法的第二实施例流程图,包括:
S200,所述计算服务器获取管理员发布的启动信号。
需要说明的是,计算服务器需要通过注册以建立与控制服务器间连接。执行电费计算前,管理员可以根据已有经验估算电费计算的规模,以选定需注册的计算服务器;执行电费计算时,管理员可以根据已与控制服务器建立连接的计算服务器的状态参数,选定新的需注册的计算服务器。其中,计算服务器的数量可以为一个或多个。
选定需注册的计算服务器后,管理员对需注册计算服务器发布启动信号。
S201,所述计算服务器根据所述启动信号生成注册指令,并将所述注册指令转发至所述控制服务器。
所述注册指令包括计算服务器IP地址。计算服务器IP地址为计算服务器的唯一标识。
S202,所述控制服务器根据所述注册指令建立与计算服务器间连接。
例如,执行电费计算前,管理员根据已有经验估算本次电费计算需要注册两台计算服务器,管理员选取任意未注册的计算服务器A及计算服务器B进行注册。管理员分别对计算服务器A及计算服务器B发布启动信号,计算服务器A生成注册指令A1并发送至控制服务器,注册指令A1中含有计算服务器A的IP地址;计算服务器B生成注册指令B1并发送至控制服务器,注册指令B1中含有计算服务器B的IP地址。控制服务器根据注册指令A1建立与计算服务器A间连接,同时根据注册指令B1建立与计算服务器B间连接。
S203,所述控制服务器实时获取客户端发送的电费计算请求及与所述控制服务器建立连接的计算服务器的状态参数。
其中,所述电费计算请求包括电费计算区段,所述状态参数包括CPU使用率、IO使用率、服务进程。
S204,所述控制服务器根据所述电费计算请求及状态参数生成电费计算命令。
所述电费计算命令包括电费计算区段、计算服务器IP地址。
需要说明的是,控制服务器按照负载均衡算法生成电费计算命令,即将电费计算请求划分为多个电费计算命令,以实现计算任务的分配。由于控制服务器实时监控与其建立连接的计算服务器的状态参数,控制服务器可对较空闲的计算服务器分配较多的电费计算命令,对较繁忙的计算服务器分配较少的电费计算命令,将电费计算命令分配到不同的计算服务器上进行处理,以减轻单个计算服务器的处理负担,从而极大的提高计算服务器性能,使资源得到最大效率的利用。
另外,当所有已注册并启动的计算服务器的状态参数均过高时,管理员可实时选定新的计算服务器进行注册,使新注册的计算服务器分担一部分的电费计算命令,以缓解原有计算服务器的压力。
S205,将所述电费计算命令发送至相应的计算服务器。
所述电费计算命令包括电费计算区段、计算服务器IP地址,其中计算服务器IP地址为计算服务器的唯一标识,控制服务器可根据计算服务器IP地址将电费计算命令发送至相应的计算服务器。
S206,所述计算服务器执行所述电费计算命令并生成电费值。
所述电费计算命令包括电费计算区段、计算服务器IP地址。
需要说明的是,计算服务器内预设有计费公式,计算服务器可根据电费计算命令中的电费计算区段及预设的计费公式计算电费,并生成对应的电费值。
S207,所述计算服务器将所述电费值发送至数据中心进行存储。
S208,所述计算服务器生成结束信号,并将所述结束信号发送至所述控制服务器。
所述结束信号用于表示所述计算服务器已执行完毕所述计算服务器上的电费计算命令。
图3是本发明一种电费计算方法的第三实施例流程图,包括:
S300,所述计算服务器获取管理员发布的启动信号。
需要说明的是,计算服务器需要通过注册以建立与控制服务器间连接。执行电费计算前,管理员可以根据已有经验估算电费计算的规模,以选定需注册的计算服务器;执行电费计算时,管理员可以根据已与控制服务器建立连接的计算服务器的状态参数,选定新的需注册的计算服务器。其中,计算服务器的数量可以为一个或多个。
选定需注册的计算服务器后,管理员对需注册计算服务器发布启动信号。
S301,所述计算服务器根据所述启动信号生成注册指令,并将所述注册指令转发至所述控制服务器。
所述注册指令包括计算服务器IP地址。计算服务器IP地址为计算服务器的唯一标识。
S302,所述控制服务器根据所述注册指令建立与计算服务器间连接。
S303,所述控制服务器实时获取客户端发送的电费计算请求及与所述控制服务器建立连接的计算服务器的状态参数。
其中,所述电费计算请求包括电费计算区段,所述状态参数包括CPU使用率、IO使用率、服务进程。
S304,所述控制服务器根据所述电费计算请求及状态参数生成电费计算命令。
所述电费计算命令包括电费计算区段、计算服务器IP地址。
需要说明的是,控制服务器按照负载均衡算法生成电费计算命令,即将电费计算请求划分为多个电费计算命令,以实现计算任务的分配。由于控制服务器实时监控与其建立连接的计算服务器的状态参数,控制服务器可对较空闲的计算服务器分配较多的电费计算命令,对较繁忙的计算服务器分配较少的电费计算命令,将电费计算命令分配到不同的计算服务器上进行处理,以减轻单个计算服务器的处理负担,从而极大的提高计算服务器性能,使资源得到最大效率的利用。
另外,当所有已注册并启动的计算服务器的状态参数均过高时,管理员可实时选定新的计算服务器进行注册,使新注册的计算服务器分担一部分的电费计算命令,以缓解原有计算服务器的压力。
S305,将所述电费计算命令发送至相应的计算服务器。
所述电费计算命令包括电费计算区段、计算服务器IP地址,其中计算服务器IP地址为计算服务器的唯一标识,控制服务器可根据计算服务器IP地址将电费计算命令发送至相应的计算服务器。
S306,所述计算服务器根据所述电费计算命令建立电费计算节点服务。
计算服务器根据电费计算命令动态部署电费计算节点服务,电费计算节点服务负责具体的电费计算,其中,电费计算节点服务的数量可以为一个或多个,每个电费计算节点服务对应一个服务进程。
S307,所述电费计算节点服务获取数据中心的基础信息。
所述基础信息包括电量、计量点。其中,所述基础信息与所述电费计算命令中的电费计算区段相对应,即所述电量、计量点均为与所述电费计算命令中的电费计算区段相对应的基础数据。
S308,所述电费计算节点服务根据所述基础信息执行所述电费计算命令。
需要说明的是,电费计算节点服务内预设有计费公式,电费计算节点服务根据电费计算命令中的电费计算区段、预设的计费公式及数据中心中的基础信息计算电费。
S309,所述电费计算节点服务根据执行结果生成电费值。
所述电费值包括电量、计量点、电费值,所述电费计算命令包括电费计算区段、计算服务器IP地址。
S310,所述计算服务器将所述电费值发送至数据中心进行存储,以便用户对电费值进行查询。
S311,所述计算服务器生成结束信号,并将所述结束信号发送至所述控制服务器。
所述结束信号用于表示所述计算服务器已执行完毕所述计算服务器上的电费计算命令。
例如,已有计算服务器B及计算服务器C与控制服务器建立连接,正在工作,且服务器B及计算服务器C已接近饱和。控制服务器实时获取计算服务器B的状态参数、计算服务器C的状态参数,管理员根据计算服务器B的状态参数及计算服务器C的状态参数,发现服务器B及计算服务器C已接近饱和,此时,管理员选取未注册的计算服务器D进行注册。管理员对计算服务器D发布启动信号,计算服务器D生成注册指令D1并发送至控制服务器,注册指令D1中含有计算服务器D的IP地址。控制服务器根据注册指令D1建立与计算服务器D间连接。
此时,业务员通过客户端发送电费计算请求以计算区域A的电费值,电费计算请求中包括区域A的信息。控制服务器获取电费计算请求、计算服务器B的状态参数、计算服务器C的状态参数及计算服务器D的状态参数,由于服务器B及计算服务器C已接近饱和,因此,该电费计算请求应由计算服务器D进行处理,控制服务器按照负载均衡算法将计算请求划分为一个电费计算命令,电费计算命令中包含区段A(区域A仅划分为区段A)的信息及计算服务器D的IP地址。控制服务器将电费计算命令发送至计算服务器D。计算服务器D根据电费计算命令建立电费计算节点服务,由电费计算节点服务向数据中心获取与区段A相关的基础信息,并执行电费计算命令以生成电费值。相应地,计算服务器D发送电费值至数据中心进行存储,同时,计算服务器D生成结束信号,并将所述结束信号发送至所述控制服务器以表示计算服务器D已执行完毕相应的电费计算命令。
图4是本发明一种电费计算系统1的实施例结构示意图,包括:
客户端2,用于发送的业务员的电费计算请求。
所述电费计算请求包括电费计算区段。
与所述客户端相连的控制服务器3,用于建立与计算服务器4间连接,实时获取客户端2发送的电费计算请求及与所述控制服务器3建立连接的计算服务器4的状态参数,生成电费计算命令发送至相应的计算服务器4。
所述状态参数包括CPU使用率、IO使用率、服务进程,所述电费计算命令包括电费计算区段、计算服务器IP地址。
计算服务器4,用于执行控制服务器3发送的电费计算命令,生成电费值并发送至数据中心5进行存储,生成结束信号并发送至所述控制服务器3,同时,获取管理员发布的启动信号,生成注册指令并转发至控制服务器3进行注册。
需要说明的是,计算服务器4的数量可以为一个或多个,各计算服务器4之间相互独立。计算服务器注册时,计算服务器获取管理员发布的启动信号,生成注册指令并转发至控制服务器3进行注册,所述注册指令包括计算服务器IP地址。
执行电费计算前,管理员可以根据已有经验估算电费计算的规模,以选定需注册的计算服务器4;执行电费计算时,管理员可以根据已与控制服务器3建立连接的计算服务器4的状态参数,,以增加新的需注册的计算服务器4。
与所述计算服务器相连的数据中心5,用于存储所述计算服务器4发送的电费值及业务员预设的基础信息。
执行电费计算时,控制服务器3实时获取客户端2发送的电费计算请求及与控制服务器3建立连接的计算服务器4的状态参数,控制服务器3根据电费计算请求及状态参数生成电费计算命令,并将电费计算命令发送至相应的计算服务器4。计算服务器4执行电费计算命令并生成电费值。计算服务器4将电费值发送至数据中心5进行存储。同时,所述计算服务器生成结束信号,并将所述结束信号发送至所述控制服务器,以表示所述计算服务器已执行完毕所述计算服务器上的电费计算命令。
如图5所示,控制服务器3包括:
连接单元31,用于建立与计算服务器4间连接。
需要说明的是,控制服务器3与计算服务器4间需要进行连接后,计算服务器4才能为控制服务器3提供计算服务。
第一获取单元32,用于实时获取客户端2发送的电费计算请求。所述电费计算请求包括电费计算区段。
第二获取单元33,用于实时获取与所述控制服务器3建立连接的计算服务器4的状态参数。所述状态参数包括CPU使用率、IO使用率、服务进程。
与所述第一获取单元32及第二获取单元33分别相连的命令单元34,用于根据所述电费计算请求及状态参数生成电费计算命令。所述电费计算命令包括电费计算区段、计算服务器IP地址。
需要说明的是,命令单元34按照负载均衡算法生成电费计算命令,即将电费计算请求划分为多个电费计算命令,以实现计算任务的分配。命令单元34可对较空闲的计算服务器4分配较多的电费计算命令,对较繁忙的计算服务器4分配较少的电费计算命令,将电费计算命令分配到不同的计算服务器4上进行处理,以减轻单个计算服务器4的处理负担,从而极大的提高计算服务器4性能,使资源得到最大效率的利用。
与所述命令单元34相连的第一发送单元35,用于将所述命令单元34生成的电费计算命令发送至相应的计算服务器4。
计算服务器IP地址为计算服务器4的唯一标识,第一发送单元35可根据计算服务器IP地址将电费计算命令发送至相应的计算服务器4。
执行电费计算时,第一获取单元32实时获取客户端2发送的电费计算请求,同时,第二获取单元33实时获取已通过连接单元31与控制服务器3建立连接的计算服务器4的状态参数,命令单元34根据电费计算请求及状态参数生成电费计算命令,并通过第一发送单元35发送至相应的计算服务器4进行计算。
如图6所示,计算服务器4包括:
执行单元41,用于执行控制服务器3发送的电费计算命令并生成电费值。
与所述执行单元41相连的第二发送单元42,用于将所述执行单元41生成的电费值发送至数据中心5进行存储。
与所述第二发送单元相连的信号单元43,用于生成结束信号。
与所述信号单元相连的第三发送单元44,用于将所述信号单元43所生成的结束信号发送至所述控制服务器3。其中,所述结束信号用于表示所述计算服务器已执行完毕所述计算服务器上的电费计算命令。
图7是本发明一种电费计算系统1的实施例中计算服务器的又一结构示意图,与图6不同的是,计算服务器4还包括:
第三获取单元45,用于获取管理员发布的启动信号。
需要说明的是,执行电费计算前,管理员可以根据已有经验估算电费计算的规模并选定计算服务器4进行注册;执行电费计算时,管理员可以根据已与控制服务器3建立连接的计算服务器4的状态参数,选定新的计算服务器4进行注册。
与所述第三获取单元45相连的注册单元46,用于根据所述启动信号生成注册指令。所述注册指令包括计算服务器IP地址。
与所述注册单元46相连的转发单元47,用于将所述注册指令转发至控制服务器3。
注册时,第三获取单元45获取管理员发布的启动信号,注册单元46根据所述启动信号生成注册指令,并通过转发单元47转发至控制服务器3的连接单元31建立控制服务3与计算服务器4间的连接。
如图8所示,所述执行单元41包括:
建模单元411,用于根据所述电费计算命令建立电费计算节点服务。
与所述建模单元411相连的独立执行单元412,用于根据所述建模单元411所建立的电费计算节点服务,独立地执行所述电费计算节点服务内的电费计算命令并生成电费值。
需要说明的是,建模单元411根据电费计算命令动态部署电费计算节点服务,其中,电费计算节点服务的数量可以为一个或多个,每个电费计算节点服务对应一个服务进程,因此独立执行单元412的数量与电费计算节点服务的数量一致,独立执行单元412与电费计算节点服务一一对应。
更佳地,所述独立执行单元412包括:
获取子单元4121,用于获取数据中心的基础信息。
需要说明的是,所述基础信息包括所属区段相关的电量、计量点。
与所述获取子单元4121相连的执行子单元4122,用于执行所述电费计算命令。
执行子单元4122内预设有计费公式,执行子单元4122根据电费计算命令中的电费计算区段、预设的计费公式及获取子单元4121所获取的基础信息计算电费。
与所述执行子单元4122相连的电费子单元4123,用于根据执行结果生成电费值。
执行电费计算时,控制服务器3的第一获取单元32实时获取客户端2发送的电费计算请求,同时,第二获取单元33实时获取已通过连接单元31与控制服务器3建立连接的计算服务器4的状态参数,命令单元34根据电费计算请求及状态参数生成电费计算命令,并通过第一发送单元35发送至相应的计算服务器4进行计算。相应地,计算服务器4的建模单元411根据所述电费计算命令建立电费计算节点服务,并由独立执行单元412独立地执行所述电费计算节点服务内的电费计算命令并生成电费值。独立执行单元412内获取子单元4121获取数据中心的基础信息,执行子单元4122依据预设的计费公式执行所述电费计算命令,电费子单元4123根据执行结果生成电费值,并由第二发送单元42将电费值发送至数据中心5进行存储,同时,信号单元43生成结束信号,并通过第三发送单元44发送至控制服务器3以通知控制服务器3计算服务器4已执行完毕本计算服务器4上的电费计算命令。
由上可知,执行电费计算前,管理员可根据已有经验估算电费计算的规模,向需要启动的计算服务器4发布启动信号以动态分配计算服务器4的数量。执行电费计算时,管理员可以根据已与控制服务器3建立连接的计算服务器4的状态参数,向需要启动的计算服务器4发布启动信号以注册新的计算服务器4。连接建立后,各计算服务器4共同为控制服务器3提供电费计算服务,控制服务器3按照负载均衡算法将电费计算请求划分为多个电费计算命令,并动态分配至相应的计算服务器4,以满足电费计算大并发的需求,提高计算资源利用率,实现资源的弹性扩展,达到资源的最优化配置。计算服务器3根据电费计算命令动态部署电费计算节点服务,使每个电费计算节点服务对应一个服务进程,其中,电费计算节点服务负责具体的电费计算,执行电费计算命令,根据执行结果生成电费值,使服务器资源得到最大效率的利用,有效解决高峰时段并发带来的系统性能压力问题。
以上所述是本发明的优选实施方式,应当指出,对于本技术领域的普通技术人员来说,在不脱离本发明原理的前提下,还可以做出若干改进和润饰,这些改进和润饰也视为本发明的保护范围。