一种基于微服务的灯联网远程控制系统技术方案

技术编号:28417633 阅读:24 留言:0更新日期:2021-05-11 18:24
本发明专利技术实施例提出的一种基于微服务的灯联网远程控制系统,系统采用微服务构架实现对灯能源的管控,系统具有动态演进、系统耦合度低、易于扩充等特征,该系统给用户控制灯带来了较大的方便性,用户可以远程访问该系统,在该系统中即可对灯进行控制,同时可以对各个微服务进行监控。

【技术实现步骤摘要】
一种基于微服务的灯联网远程控制系统
本专利技术属于物联网
,具体涉及一种基于微服务的灯联网远程控制系统。
技术介绍
当今社会,城市照明已成为对外展示城市魅力的名片和窗口,然而灯的管理、维护,特别是用电问题,越来越受到人们广泛的关注,尤其是在电力能源紧张的背景下,因此,更智能更环保更节能的城市照明系统将成为发展的必然趋势。灯联网是物联网在灯具行业的具体应用,在传统灯具上添加传感器,实现相应的检测功能,由微控制器对传感器采集的数据进行处理。它接收远程监控中心控制数据或提取灯具内部设置的控制数据,完成对灯具的实时控制,其目的是实现对单灯监控和节能管理的效益最大化,以使所有的灯具可以实现与因特网的连接,方便识别、管理和控制。传统的灯联网技术方案采用单体、垂直或者SOA的架构方式,将一个大型项目进行垂直划分,即拆分为一个个的单体结构,项目和项目之间数据存在大量的冗余,且耦合程度高。项目所实现的功能全部包含在一个工程中,这对以后的需求变更和项目扩展带来了较大的不便和挑战。在系统性能方面,垂直结构只能通过扩展集群结点的方式来有限的提高系统性能,这种方式成本高,容易产生瓶颈。随着业务的不断发展,开发变得越来越复杂,修改或新增某个功能时,需要对整个系统进行测试和重新部署,一个模块出现问题,很可能导致整个系统崩溃。同时,多个开发团队对数据进行管理,容易产生安全漏洞。项目的多个模块使用同一种技术进行开发,各个模块很难根据实际情况选择合适的技术框架,因此对技术的使用局限性很大。由于模块过于复杂和庞大,工作的交接任务量较大,耗时较长。传统方式中的灯联网SOA架构中,将项目公用的部分抽象为组件,以此来为各个功能应用提供相应的服务。各系统之间采用WebServices或RPC进通信,项目和服务之间采用总线的方式进行连接。这种架构下,系统和服务之间没有明显的界限,不利于后期的开发和维护,且服务之间进行通信的协议不固定,种类繁多,增加了开发的难度,使得开发人员需要将一部分精力放在服务通信协议的设计和开发中,还会出现抽取服务粒度过大,系统和服务之间耦合度较高的问题,使得开发更加苦难。
技术实现思路
为了解决现有技术中存在的上述问题,本专利技术提供了一种基于微服务的灯联网远程控制系统。本专利技术要解决的技术问题通过以下技术方案实现:本专利技术实施例提供的一种基于微服务的灯联网远程控制系统,包括:前端服务器、Netty客户端、Netty服务器以及数据集中控制器,前端服务器与用户终端相连,所述前端服务器,用于当接收用户终端发送的登录请求后,将所述登录请求发送给Netty客户端;所述Netty客户端,用于将所述登录请求发送给Netty服务器;所述Netty服务器,用于基于所述登录请求,查询自身的数据库,确定发送该登录请求的用户终端是否是合法,当所述用户终端合法时,向所述数据集中控制器获取被控灯的状态,并将被控灯的状态转发给Netty客户端;所述Netty客户端,用于通过前端服务器向用户终端展示被控灯的状态;其中,所述状态包括:控制端口以及被控灯的开关情况;所述前端服务器,用于接收用户在用户终端上操作控制端口,产生的控制请求后,将所述控制请求转发给所述Netty客户端;所述Netty客户端,用于将所述控制请求转发给所述Netty服务器;所述Netty服务器,用于将所述控制请求发送给数据集中控制器;所述数据集中控制器,用于基于所述控制请求,控制被控灯的状态;其中,所述登录请求中携带有用户终端信息,一个用户终端信息对应至少一个被控灯,所述Netty服务器内采用SpringCloud搭建微服务架构。可选的,在所述前端服务器上设置有UI界面,所述UI界面包括:用户登录界面、主页、灯控制界面、服务注册中心界面,所述前端服务器,用于当用户通过用户终端点击用户登录界面后,产生登录请求,将所述登录请求发送给Netty客户端;所述Netty客户端,用于在接收到被控灯的状态后,转发给所述前端服务器;所述前端服务器,用于在灯控制界面展示被控灯的状态,当接收到用户在所述灯控制界面点击/输入后,产生控制请求,并将该控制请求发送给所述Netty客户端,并在灯控制界面更新被控灯的状态。可选的,所述Netty服务器,用于将所述控制请求封装成JSON格式,并将该封装后的控制请求发送给数据集中控制器。可选的,采用SpringCloud搭建微服务架构,将所述Netty服务器按照功能划分。可选的,所述微服务架构包括:Eureka注册中心、Netty客户端服务、Netty服务端服务以及Account服务,所述微服务架构中的Netty客户端服务,用于当接收到登录请求后,向所述Netty服务端服务发送调用请求并将所述登录请求发送给所述Netty服务端服务;所述Netty服务端服务,用于将登录请求通过所述注册中心发送给Account服务;所述Account服务,用于在所述数据库中查询是否存在用户终端信息,如果存在,则确定该用户终端是合法用户,并向所述Netty服务端服务发送登录成功的响应;所述Netty服务端服务,用于将所述响应转发给所述Netty客户端服务;所述Netty客户端服务,用于将所述响应转发给所述Netty客户端;所述Netty客户端,用于通过所述前端服务器展示所述用户终端登录成功。可选的,所述Account服务,还用于在所述用户终端登录成功后,生成Token存入Redis中。可选的,所述微服务架构中的Netty客户端服务,用于当接收到控制请求后,调用所述Netty服务端服务并将所述登录请求发送给所述Netty服务端服务;所述Netty服务端服务,用于将控制请求发送给数据集中控制器;所述数据集中控制器,用于基于所述控制请求,控制被控灯的状态,并将被控灯的状态发送给所述Netty服务端服务;所述Netty服务端服务,用于将被控灯的状态发送给Netty客户端服务;所述Netty客户端服务,用于将被控灯的状态发送给Netty客户端。可选的,所述微服务架构还包括:配置中心、Hystrix服务、Ribbon服务和Zuul服务。本专利技术实施例提出的一种基于微服务的灯联网远程控制系统,系统采用微服务构架实现对灯能源的管控,系统具有动态演进、系统耦合度低、易于扩充等特征,该系统给用户控制灯带来了较大的方便性,用户可以远程访问该系统,在该系统中即可对灯进行控制,同时可以对各个微服务进行监控。以下将结合附图及实施例对本专利技术做进一步详细说明。附图说明图1是本专利技术实施例提供的一种基于微服务的灯联网远程控制系统的结构图;图2是本专利技术实施例提供的三层架构的结构示意图;图3是本专利技术实施例提供的微服务调度的关系图;图4是本专利技术实施例提供的微服务架构中微服务启动的流程图。具体实施方式下面结合具体实施例对本专利技术做进一步本文档来自技高网
...

【技术保护点】
1.一种基于微服务的灯联网远程控制系统,其特征在于,包括:前端服务器、Netty客户端、Netty服务器以及数据集中控制器,前端服务器与用户终端相连,/n所述前端服务器,用于当接收用户终端发送的登录请求后,将所述登录请求发送给Netty客户端;/n所述Netty客户端,用于将所述登录请求发送给Netty服务器;/n所述Netty服务器,用于基于所述登录请求,查询自身的数据库,确定发送该登录请求的用户终端是否是合法,当所述用户终端合法时,向所述数据集中控制器获取被控灯的状态,并将被控灯的状态转发给Netty客户端;/n所述Netty客户端,用于通过前端服务器向用户终端展示被控灯的状态;/n其中,所述状态包括:控制端口以及被控灯的开关情况;/n所述前端服务器,用于接收用户在用户终端上操作控制端口,产生的控制请求后,将所述控制请求转发给所述Netty客户端;/n所述Netty客户端,用于将所述控制请求转发给所述Netty服务器;/n所述Netty服务器,用于将所述控制请求发送给数据集中控制器;/n所述数据集中控制器,用于基于所述控制请求,控制被控灯的状态;/n其中,所述登录请求中携带有用户终端信息,一个用户终端信息对应至少一个被控灯,所述Netty服务器内采用Spring Cloud搭建微服务架构。/n...

【技术特征摘要】
1.一种基于微服务的灯联网远程控制系统,其特征在于,包括:前端服务器、Netty客户端、Netty服务器以及数据集中控制器,前端服务器与用户终端相连,
所述前端服务器,用于当接收用户终端发送的登录请求后,将所述登录请求发送给Netty客户端;
所述Netty客户端,用于将所述登录请求发送给Netty服务器;
所述Netty服务器,用于基于所述登录请求,查询自身的数据库,确定发送该登录请求的用户终端是否是合法,当所述用户终端合法时,向所述数据集中控制器获取被控灯的状态,并将被控灯的状态转发给Netty客户端;
所述Netty客户端,用于通过前端服务器向用户终端展示被控灯的状态;
其中,所述状态包括:控制端口以及被控灯的开关情况;
所述前端服务器,用于接收用户在用户终端上操作控制端口,产生的控制请求后,将所述控制请求转发给所述Netty客户端;
所述Netty客户端,用于将所述控制请求转发给所述Netty服务器;
所述Netty服务器,用于将所述控制请求发送给数据集中控制器;
所述数据集中控制器,用于基于所述控制请求,控制被控灯的状态;
其中,所述登录请求中携带有用户终端信息,一个用户终端信息对应至少一个被控灯,所述Netty服务器内采用SpringCloud搭建微服务架构。


2.根据权利要求1所述的基于微服务的灯联网远程控制系统,其特征在于,在所述前端服务器上设置有UI界面,所述UI界面包括:用户登录界面、主页、灯控制界面、服务注册中心界面,
所述前端服务器,用于当用户通过用户终端点击用户登录界面后,产生登录请求,将所述登录请求发送给Netty客户端;
所述Netty客户端,用于在接收到被控灯的状态后,转发给所述前端服务器;
所述前端服务器,用于在灯控制界面展示被控灯的状态,当接收到用户在所述灯控制界面点击/输入后,产生控制请求,并将该控制请求发送给所述Netty客户端,并在灯控制界面更新被控灯的状态。


3.根据权利要求1所述的基于微服务的灯联网远程控制系统,其特征在于,
所述Netty服务器,用于将所述控制请求封装成JSON格式,并将该封装后的控制请求发送给数据集中控制器。

【专利技术属性】
技术研发人员:王博舒新峰
申请(专利权)人:西安邮电大学
类型:发明
国别省市:陕西;61

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1