一种智慧照明管控系统、资源服务方法及相关装置与流程

未命名 07-22 阅读:120 评论:0


1.本发明涉及计算机软件应用技术领域,尤其涉及一种智慧照明管控系统、资源服务方法及相关装置。


背景技术:

2.现有智慧工作照明系统是采用单体服务,把所有的功能、模块耦合在一个应用中的架构方式;使用一台服务器运行所有功能。在接入到系统的网关和设备较多的情况下,单体服务对处理设备的数量是有限的,同时服务扩展性比较差,并且当服务出现宕机的时候,系统将不可使用。在使用分布式框架时,将一个大的应用拆分成多个小的应用(微服务),这些小的应用相对独立。当设备的数量大于服务处理的数量,可以通过新增服务器添加对应的服务达到提高处理设备数量的能力。如果一台服务宕机,其他服务可以正常运行,不影响系统正常使用。
3.但由于分布式智慧照明系统具有多个资源服务,因此,如何高效地使得前端快速地获取资源,以实现业务服务,是亟须解决的问题。


技术实现要素:

4.本发明的主要目的在于提供一种智慧照明管控系统、资源服务方法及相关装置,其中,该相关装置包括一种资源服务装置、计算机设备及存储介质,可以解决现有技术中的获取资源效率较低的问题。
5.为实现上述目的,本发明第一方面提供一种智慧照明管控系统,所述智慧照明管控系统包括前端、nginx、网关服务、微服务、数据库、网关集中模块以及终端设备;
6.所述前端用于发起请求;
7.所述nginx用于根据请求的请求路径和所述智慧照明管控系统部署的服务器数量,选择服务器跳转;
8.所述网关服务用于对登入请求指定微服务中的认证服务,以及对于其他请求进行验证和跳转微服务中的资源服务;其中,所述其他请求为除所述登入请求以外的请求类型;所述资源服务用于通过数据库获取所述请求所需的资源,以及根据所述资源通过套接字向网关集中模块发送命令;所述认证服务用于对所述登入请求登入的账号密码进行验证;
9.所述网关集中模块用于将所述命令转发到终端设备;
10.所述终端设备用于执行命令;
11.所述网关集中模块还用于将所述终端设备的执行结果返回资源服务;
12.所述资源服务还用于将所述执行结果返回给所述前端。
13.为实现上述目的,本发明第二方面提供一种资源服务方法,所述方法应用于上述的智慧照明管控系统,所述方法包括:
14.接收来自前端的请求,判断所述请求是否为除认证请求以外的其他请求,若所述请求为除认证请求以外的其他请求,则跳转至微服务中对应的资源服务;
15.确定资源服务的第一数据库中是否含有所述请求所需的资源,若确定所述第一数据库中不含有所述请求所需的资源,则使得资源服务从第二数据库中获取所述请求所需的资源,若确定所述第一数据库中含有所述请求所需的资源,则使得资源服务从第一数据库中获取所述请求所需的资源。
16.结合第一方面,在一种可能的实现方式中,上述资源服务从第二数据库中获取所述请求所需的资源,还包括:将所述资源同步至所述第一数据库中。
17.结合第一方面,在一种可能的实现方式中,上述方法还包括:间隔预设时间更新所述第二数据库中的资源。
18.结合第一方面,在一种可能的实现方式中,上述间隔预设时间更新所述第二数据库中的资源之后,包括:查询第一数据库中是否存在所述第二数据库中的资源,如果存在,则删除第一数据库中的与所述第二数据库相同的资源。
19.结合第一方面,在一种可能的实现方式中,上述查询第一数据库中是否存在所述第二数据库中的资源,包括:根据所述第二数据库中的资源得到查询数据表;根据所述查询数据表依次提取数据与第一数据库中的数据进行对比,查询第一数据库中是否存在所述第二数据库中的资源。
20.为实现上述目的,本发明第三方面提供一种资源服务装置,所述装置包括:
21.接收判断模块:用于接收来自前端的请求,判断所述请求是否为除认证请求以外的其他请求,若所述请求为除认证请求以外的其他请求,则通过网关服务跳转至微服务中对应的资源服务;
22.确定获取模块:用于确定资源服务的第一数据库中是否含有所述请求所需的资源,若确定所述第一数据库中不含有所述请求所需的资源,则使得资源服务从第二数据库中获取所述请求所需的资源,若确定所述第一数据库中含有所述请求所需的资源,则使得资源服务从第一数据库中获取所述请求所需的资源。
23.结合第三方面,在一种可能的实现方式中,所述确定获取模块还用于:将所述资源同步至所述第一数据库中。
24.为实现上述目的,本发明第四方面提供一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行以下步骤:
25.接收来自前端的请求,判断所述请求是否为除认证请求以外的其他请求,若所述请求为除认证请求以外的其他请求,则跳转至微服务中对应的资源服务;
26.确定资源服务的第一数据库中是否含有所述请求所需的资源,若确定所述第一数据库中不含有所述请求所需的资源,则使得资源服务从第二数据库中获取所述请求所需的资源,若确定所述第一数据库中含有所述请求所需的资源,则使得资源服务从第一数据库中获取所述请求所需的资源。
27.为实现上述目的,本发明第五方面提供一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行以下步骤:
28.接收来自前端的请求,判断所述请求是否为除认证请求以外的其他请求,若所述请求为除认证请求以外的其他请求,则跳转至微服务中对应的资源服务;
29.确定资源服务的第一数据库中是否含有所述请求所需的资源,若确定所述第一数
据库中不含有所述请求所需的资源,则使得资源服务从第二数据库中获取所述请求所需的资源,若确定所述第一数据库中含有所述请求所需的资源,则使得资源服务从第一数据库中获取所述请求所需的资源。
30.采用本发明实施例,具有如下有益效果:
31.本发明实施例提供了一种智慧照明管控系统和资源服务方法,该智慧照明管控系统包括前端、nginx、网关服务、微服务、数据库、网关集中模块以及终端设备,其中,前端用于发起请求;nginx用于根据请求的请求路径和智慧照明管控系统部署的服务器数量,选择服务器跳转,网关服务用于对登入请求指定微服务中的认证服务,以及对于其他请求进行验证和跳转微服务中的资源服务;资源服务用于通过数据库获取请求所需的资源,以及根据资源通过套接字向网关集中模块发送命令;认证服务用于对登入请求登入的账号密码进行验证;网关集中模块用于将所述命令转发到终端设备,并将终端设备的执行结果返回资源服务;资源服务还用于将执行结果返回给前端,终端设备用于执行命令。其方法包括接收来自前端的请求,判断请求是否为除认证请求以外的其他请求,若请求为除认证请求以外的其他请求,则通过网关服务跳转至微服务中对应的资源服务;确定资源服务的第一数据库中是否含有请求所需的资源,若确定第一数据库中不含有请求所需的资源,则从第二数据库中获取请求所需的资源。基于分布式结构的智慧照明管控系统,可以实现在其中某资源服务down的情况下,其他资源服务可以正常运行,不影响系统正常使用,提高了实用性。此外,若次次从第二数据库中获取资源,则容易阻塞整个服务,因此首选从第一数据库中获取资源数据,可以有效地提高获取速度,提高服务处理网关数据的性能。
附图说明
32.为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。
33.其中:
34.图1为本发明实施例中一种智慧照明管控系统的结构框图;
35.图2为本发明实施例中一种基于智慧照明管控系统的资源服务方法的流程示意图;
36.图3为本发明实施例中一种资源服务装置的结构框图;
37.图4为本发明实施例中计算机设备的结构框图。
具体实施方式
38.下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
39.本发明实施例提供了一种智慧照明管控系统,参照图1,图1为本发明实施例提供的一种智慧照明管控系统的结构框图,如图1所示,该智慧照明管控系统包括前端、nginx、
网关服务、微服务、数据库、网关集中模块以及终端设备。其中,前端可以为软件设备,比如手机、电脑等,用户可以控制前端发起请求,该请求用于控制终端设备的状态,终端设备可以理解为照明设备,比如,用户通过操作前端来发起请求,来控制终端设备的照明方案;nginx用于根据请求的请求路径和分布式智慧照明系统部署的服务器数量,选择服务器跳转;网关服务用于对登入请求指定微服务中的认证服务,以及对于其他请求进行验证和跳转微服务中的资源服务,其中,其他请求为除登入请求以外的请求类型;资源服务用于通过数据库获取请求所需的资源,以及根据资源通过套接字向网关集中模块发送命令;认证服务用于对登入请求登入的账号密码进行验证;网关集中模块用于将命令转发到终端设备;终端设备用于将执行命令;网关集中模块还用于将终端设备的执行结果返回资源服务;资源服务还用于将执行结果返回给前端。
40.具体地,微服务与网关集中模块通信连接,网关集中模块与终端设备通信连接,终端设备与网关集中模块之间包括无线或有线通信,其中有线通信方式可以为:网关集中模块与具有电力载波通信功能的网关即plc网关串口连接,plc网关与终端设备通过电力线通信。
41.基于上述智慧照明管控系统,下面详细介绍一种资源服务方法,参照图2,图2为本发明实施例提供的一种基于智慧照明管控系统的资源服务方法的流程示意图,如图2所示,该资源服务方法具体包括如下步骤:
42.步骤s101、接收来自前端的请求,判断所述请求是否为除认证请求以外的其他请求,若所述请求为除认证请求以外的其他请求,则跳转至微服务中对应的资源服务。
43.用户控制前端发出请求,网关服务接收前端发送的请求,校验该前端是否有请求资格,若前端不具有请求资格,则对请求进行拦截,若前端具有请求资格,则判断该请求的类型,若所述请求为除认证请求以外的其他请求,则跳转至微服务中对应的资源服务。具体地,在微服务中有多个资源服务,每个资源服务对应与一个资源服务器,不同的资源服务可以使得终端设备执行不同的业务服务,比如微服务中包括视频监控服务,该视频监控服务可使得终端设备执行视频监控功能。在本实施例中,可以根据请求的请求地址查找出所有的资源服务器,从所有资源服务器中确定对应的资源服务,并跳转至对应的资源服务。
44.步骤s102、确定资源服务的第一数据库中是否含有所述请求所需的资源,若确定所述第一数据库中不含有所述请求所需的资源,则使得资源服务从第二数据库中获取所述请求所需的资源,若确定所述第一数据库中含有所述请求所需的资源,则使得资源服务从第一数据库中获取所述请求所需的资源。
45.待跳转至对应的资源服务后,网关服务确定资源服务的第一数据库中是否含有请求所需的资源,若第一数据库中不含有请求所需的资源,则使得资源服务从第二数据库中获取请求所需的资源,若第一数据库中含有请求所需的资源,则使得资源服务从第一数据库中获取请求所需的资源。在本实施例中,为了提高资源获取的速度,该第一数据库可以为redis数据库,数据库可以为mysql数据库。
46.其中,mysql数据库包括主数据库和从数据库,主、从数据库可以数据复制,具体为:
47.从数据库的io线程和主数据库的dump线程建立连接,从数据库根据change master to语句提供的file名和position号,io线程向主数据库发起binlog的请求,
48.主数据库dump线程根据从数据库的请求,将本地binlog以events的方式发给从数据库io线程,其中,返回信息中除了日志所包含的信息之外,还包括本次返回的信息的bin-log file的以及bin-log position,从数据库io线程接收binlog events,并存放到本地relay-log中,并且传送过来的信息,会记录到master.info中,以便在下一次读取,从数据库sql线程应用relay-log,并且把应用过的记录到relay-log.info中,默认情况下,已经应用过的relay会自动被清理purge。
49.进一步地,若第一数据库中不含有请求所需的资源,则资源服务从第二数据库中获取请求所需的资源之后,还将资源同步至第一数据库中。
50.在本实施例中,间隔预设时间更新第二数据库中的资源,同时查询第一数据库中是否存在第二数据库中的资源,如果存在,则删除第一数据库中的与第二数据库相同的资源。
51.其中,查询第一数据库中是否存在第二数据库中的资源的方法如下:
52.根据第二数据库中的资源得到查询数据表,根据查询数据表依次提取数据与第一数据库中的数据进行对比,查询第一数据库中是否存在所述第二数据库中的资源。
53.基于上述方法,该智慧照明管控系统包括前端、nginx、网关服务、微服务、数据库、网关集中模块以及终端设备,其中,前端用于发起请求;nginx用于根据请求的请求路径和智慧照明管控系统部署的服务器数量,选择服务器跳转,网关服务用于对登入请求指定微服务中的认证服务,以及对于其他请求进行验证和跳转微服务中的资源服务;资源服务用于通过数据库获取请求所需的资源,以及根据资源通过套接字向网关集中模块发送命令;认证服务用于对登入请求登入的账号密码进行验证;网关集中模块用于将所述命令转发到终端设备,并将终端设备的执行结果返回资源服务;资源服务还用于将执行结果返回给前端,终端设备用于执行命令。其方法包括接收来自前端的请求,判断请求是否为除认证请求以外的其他请求,若请求为除认证请求以外的其他请求,则通过网关服务跳转至微服务中对应的资源服务;确定资源服务的第一数据库中是否含有请求所需的资源,若确定第一数据库中不含有请求所需的资源,则从第二数据库中获取请求所需的资源。基于分布式结构的智慧照明管控系统,可以实现在其中某资源服务down的情况下,其他资源服务可以正常运行,不影响系统正常使用,提高了实用性。此外,若次次从第二数据库中获取资源,则容易阻塞整个服务,因此首选从第一数据库中获取资源数据,可以有效地提高获取速度,提高服务处理网关数据的性能。
54.为了更好地实现上述方法,本发明实施例提供了一种资源服务装置,该装置可以实现上述方法类似的全部功能,参照图3,图3为本发明实施例提供的一种资源服务装置的结构框图,如图3所示,该装置30包括:
55.接收判断模块301:用于接收来自前端的请求,判断所述请求是否为除认证请求以外的其他请求,若所述请求为除认证请求以外的其他请求,则通过网关服务跳转至微服务中对应的资源服务。
56.确定获取模块302:用于确定资源服务的第一数据库中是否含有所述请求所需的资源,若确定所述第一数据库中不含有所述请求所需的资源,则使得资源服务从第二数据库中获取所述请求所需的资源,若确定所述第一数据库中含有所述请求所需的资源,则使得资源服务从第一数据库中获取所述请求所需的资源。
57.在一种可能的设计中,确定获取模块302还用于将所述资源同步至所述第一数据库中。
58.基于上述装置,基于分布式结构的智慧照明管控系统,可以实现在其中某资源服务down的情况下,其他资源服务可以正常运行,不影响系统正常使用,提高了实用性。此外,若次次从第二数据库中获取资源,则容易阻塞整个服务,因此首选从第一数据库中获取资源数据,可以有效地提高获取速度,提高服务处理网关数据的性能。
59.图4示出了一个实施例中计算机设备的内部结构图。该计算机设备具体可以是终端,也可以是服务器。如图4所示,该计算机设备包括通过系统总线连接的处理器、存储器和网络接口。其中,存储器包括非易失性存储介质和第一数据库储器。该计算机设备的非易失性存储介质存储有操作系统,还可存储有计算机程序,该计算机程序被处理器执行时,可使得处理器实现上述方法的全部步骤。该第一数据库储器中也可储存有计算机程序,该计算机程序被处理器执行时,可使得处理器执行上述方法的全部步骤。本领域技术人员可以理解,图4中示出的结构,仅仅是与本技术方案相关的部分结构的框图,并不构成对本技术方案所应用于其上的计算机设备的限定,具体的计算机设备可以包括比图中所示更多或更少的部件,或者组合某些部件,或者具有不同的部件布置。
60.在一个实施例中,提出了一种计算机设备,包括存储器和处理器,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行前述方法的各个步骤。
61.在一个实施例中,提出了一种计算机可读存储介质,存储有计算机程序,所述计算机程序被处理器执行时,使得所述处理器执行前述方法的各个步骤。
62.本领域普通技术人员可以理解实现上述实施例方法中的全部或部分流程,是可以通过计算机程序来指令相关的硬件来完成,所述的程序可存储于一非易失性计算机可读取存储介质中,该程序在执行时,可包括如上述各方法的实施例的流程。其中,本技术所提供的各实施例中所使用的对存储器、存储、数据库或其它介质的任何引用,均可包括非易失性和/或易失性存储器。非易失性存储器可包括只读存储器(rom)、可编程rom(prom)、电可编程rom(eprom)、电可擦除可编程rom(eeprom)或闪存。易失性存储器可包括随机存取存储器(ram)或者外部高速缓冲存储器。作为说明而非局限,ram以多种形式可得,诸如静态ram(sram)、动态ram(dram)、同步dram(sdram)、双数据率sdram(ddrsdram)、增强型sdram(esdram)、同步链路(synchlink)dram(sldram)、存储器总线(rambus)直接ram(rdram)、直接存储器总线动态ram(drdram)、以及存储器总线动态ram(rdram)等。
63.以上实施例的各技术特征可以进行任意的组合,为使描述简洁,未对上述实施例中的各个技术特征所有可能的组合都进行描述,然而,只要这些技术特征的组合不存在矛盾,都应当认为是本说明书记载的范围。
64.以上所述实施例仅表达了本技术的几种实施方式,其描述较为具体和详细,但并不能因此而理解为对本技术专利范围的限制。应当指出的是,对于本领域的普通技术人员来说,在不脱离本技术构思的前提下,还可以做出若干变形和改进,这些都属于本技术的保护范围。因此,本技术专利的保护范围应以所附权利要求为准。

技术特征:
1.一种智慧照明管控系统,其特征在于,所述智慧照明管控系统包括前端、nginx、网关服务、微服务、数据库、网关集中模块以及终端设备;所述前端用于发起请求;所述nginx用于根据请求的请求路径和所述智慧照明管控系统部署的服务器数量,选择服务器跳转;所述网关服务用于对登入请求指定微服务中的认证服务,以及对于其他请求进行验证和跳转微服务中的资源服务;其中,所述其他请求为除所述登入请求以外的请求类型;所述资源服务用于通过数据库获取所述请求所需的资源,以及根据所述资源通过套接字向网关集中模块发送命令;所述认证服务用于对所述登入请求登入的账号密码进行验证;所述网关集中模块用于将所述命令转发到终端设备;所述终端设备用于执行命令;所述网关集中模块还用于将所述终端设备的执行结果返回资源服务;所述资源服务还用于将所述执行结果返回给所述前端。2.一种资源服务方法,其特征在于,所述方法应用于权利要求1所述的一种智慧照明管控系统,所述方法包括:接收来自前端的请求,判断所述请求是否为除认证请求以外的其他请求,若所述请求为除认证请求以外的其他请求,则跳转至微服务中对应的资源服务;确定资源服务的第一数据库中是否含有所述请求所需的资源,若确定所述第一数据库中不含有所述请求所需的资源,则使得资源服务从第二数据库中获取所述请求所需的资源,若确定所述第一数据库中含有所述请求所需的资源,则使得资源服务从第一数据库中获取所述请求所需的资源。3.根据权利要求2所述的方法,其特征在于,所述资源服务从第二数据库中获取所述请求所需的资源,还包括:将所述资源同步至所述第一数据库中。4.根据权利要求2所述的方法,其特征在于,所述方法还包括:间隔预设时间更新所述第二数据库中的资源。5.根据权利要求4所述的方法,其特征在于,所述间隔预设时间更新所述第二数据库中的资源之后,包括:查询第一数据库中是否存在所述第二数据库中的资源,如果存在,则删除第一数据库中的与所述第二数据库相同的资源。6.根据权利要求5所述的方法,其特征在于,所述查询第一数据库中是否存在所述第二数据库中的资源,包括:根据所述第二数据库中的资源得到查询数据表;根据所述查询数据表依次提取数据与第一数据库中的数据进行对比,查询第一数据库中是否存在所述第二数据库中的资源。7.一种资源服务装置,其特征在于,所述装置包括:接收判断模块:用于接收来自前端的请求,判断所述请求是否为除认证请求以外的其他请求,若所述请求为除认证请求以外的其他请求,则通过网关服务跳转至微服务中对应的资源服务;
确定获取模块:用于确定资源服务的第一数据库中是否含有所述请求所需的资源,若确定所述第一数据库中不含有所述请求所需的资源,则使得资源服务从第二数据库中获取所述请求所需的资源,若确定所述第一数据库中含有所述请求所需的资源,则使得资源服务从第一数据库中获取所述请求所需的资源。8.根据权利要求7所述的装置,其特征在于,所述确定获取模块还用于:将所述资源同步至所述第一数据库中。9.一种计算机可读存储介质,存储有计算机程序,其特征在于,所述计算机程序被处理器执行时,使得所述处理器执行如权利要求1至6中任一项所述方法的步骤。10.一种计算机设备,包括存储器和处理器,其特征在于,所述存储器存储有计算机程序,所述计算机程序被所述处理器执行时,使得所述处理器执行如权利要求1至6中任一项所述方法的步骤。

技术总结
本发明实施例公开了一种智慧照明管控系统、资源服务方法及相关装置,其中,该智慧照明管控系统包括前端、nginx、网关服务、微服务、数据库、网关集中模块以及终端设备,该方法基于分布式结构的智慧照明管控系统,可以实现在其中某资源服务down的情况下,其他资源服务可以正常运行,不影响系统正常使用,提高了实用性。此外,首选从第一数据库中获取资源数据,可以有效地提高获取速度,提高服务处理网关数据的性能。性能。性能。


技术研发人员:徐素 冯敏
受保护的技术使用者:海洋王(东莞)照明科技有限公司 深圳市海洋王照明工程有限公司 深圳市海洋王绿色照明技术有限公司 深圳市海洋王电网照明技术有限公司 深圳市海洋王船舶场馆照明技术有限公司 深圳市海洋王铁路照明技术有限公司 深圳市海洋王石油照明技术有限公司 深圳市海洋王冶金照明技术有限公司 深圳市海洋王公消照明技术有限公司 深圳市海洋王石化照明技术有限公司
技术研发日:2023.01.14
技术公布日:2023/7/20
版权声明

本文仅代表作者观点,不代表航空之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

飞行汽车 https://www.autovtol.com/

分享:

扫一扫在手机阅读、分享本文

相关推荐