智能农机管理平台的数据集群管理方法和系统与流程

文档序号:12278876阅读:480来源:国知局
智能农机管理平台的数据集群管理方法和系统与流程

本发明涉及技术领域智能农机技术领域,特别是涉及一种智能农机管理平台的数据集群管理方法和系统。



背景技术:

农业作为一个特殊的产业,其生产存在季节性、地域性强,生产者分散且生产周期长,生产出来的产品标准化程度低等,是长期困扰发展的主要问题。农业要走出困境,摆脱其固有问题,建立强有力的信息服务,高效生产管理以及发展农产品流通新模式刻不容缓。

农机产业的发展在一定程度上促进了农业的发展。农机装备的作业效率和质量是影响农业生产水平的重要因素之一。近年来人们也逐渐认识到了农机装备的重要性,同时对高性能、高质量的农机装备的需求也逐年加大,对农机作业质量的要求也逐渐提高。从而也促进了农机合作社行业的发展壮大和农机跨区作业需求的不断扩大。在农机行业新兴业务迅猛发展的同时,也为我们提出了农机作业监控技术的新需求。

如何通过技术手段有效地进行农机作业远程监控与调度,提高作业质量尤其是保障农机夜间作业质量和农机装备的智能化水平,实现区域农机监控上网可查数据、实时上报农机故障、经销商实时监控售卖农机作业状态、上报故障之后通过客户端联系最近的维修公司根据农机故障定位赶赴现场维修,是目前现代化大农业发展的迫切需求之一。

另外,作为物联网农业化Web端,在种植季节和收获季节经常会出现范围性的高频集中访问,导致服务器集中性崩溃,致使某一区域内的所有农机作业信息无法采集和访问、农机故障信息无法上传、维修人员无法联系,增长了农作物的收获周期。



技术实现要素:

本发明所要解决的技术问题是提供一种智能农机管理平台的数据集群管理方法和系统,农产品生产不同的阶段来看,第一,通过增设解析缓存服务器,解决了上万台农机同时短间隔发送数据包时,解析程序服务器解析队列的可靠性,避免解析队列丢失造成的数据包丢失。第二,增设SQL报警数据库,将智能农机上传的数据包解析后立即对比各个参数值是否处于SQL报警数据库中所规定的该参数的阈值范围内,如果不处于阈值范围内,则管理平台启动报警模块,通过短信、Email、Web端、移动终端APP等信息推送的方式将报警信息推送给智能农机的操作者或第三方机构。(第三方机构可以是农机三包维修方、农业合作社等)第三,增设数据库缓存服务器,数据库缓存服务器采用非关系型的数据库,该数据库缓存服务器将采集数据库中被高频访问的数据写入改数据库缓存服务器中,当Web端从采集数据库中读取数据时排序队列过长时,Web端可以读取数据库缓存服务器中复制的内容,减小了采集数据库的读取负载。第四,解析缓存服务器和数据库缓存服务器均采用集群服务器架构,使解析缓存服务器内的多个服务器之间形成一个并行或分布式系统,由主从关系模式决定数据接收方式,为用户和应用程序提供单一的系统映射,集群内的服务器通过Redis、mongoDB、zookeeper等集群软件实现相互连接,使集群内的服务器之间可以相互替代,具有使用故障应急与负载平衡功能。第五,Web端和移动终端APP均通过WebAPI即Web应用编程接口连接采集数据库服务器和数据库缓存服务器,且WebAPI作为分离式的后台程序,其与IIS管理器(即互联网信息服务管理器)连接时采用与Web端和APP端口不同的内部IP,且Web端、移动终端APP和WebAPI的内部IP之间是并行关系可以相互访问,其对外端口号作为一个。

本发明解决其技术问题所采用的技术方案是:

智能农机管理平台的数据集群管理方法,其特征在于,包括以下步骤:

S01:采集程序服务器接收到智能农机发送的数据包,采集服务器接受到数据包之后会由缓存地址生成器生成一个缓存地址,并由采集服务器以该缓存地址标记该数据包,并写入对应的缓存服务器中,所述解析缓存服务器为集群架构,集群架构中包括至少两台主虚拟服务器,每台主虚拟服务器包括至少一台从虚拟服务器,每台主虚拟服务器与其对应的从虚拟服务器之间通过交换机信息交互;所述集群架构中只要有一台主虚拟服务器正常运作,该解析缓存程序服务器正常运作;

S02:采集程序服务器将数据包通过缓存生成器生成的地址存入解析缓存服务器之后,解析缓存服务器通过非关系型的数据库存储并加载时间标记数据形成信息队列;解析程序服务器按照信息队列定时读取非关系型的数据库里面的数据,解析数据包并将该解析出的数据中的各个参数值与报警SQL数据库中所设定的参数阈值范围比较,如果解析出的数据在参数阈值范围内,则进入下一步骤;若解析出的数据在参数阈值范围之外,则管理平台启动报警模块,通过短信、Email、Web端、移动终端APP等信息推送的方式将报警信息推送给智能农机的操作者或第三方机构之后再进入下一步骤;

S03:解析缓存服务器将解析出的全部数据存入采集数据库SQL,并从采集数据库SQL中调取高频访问的信息,将该信息存入数据库缓存服务器中;所述数据库缓存服务器为集群架构,集群架构中包括至少两台主虚拟服务器,每台主虚拟服务器包括至少一台从虚拟服务器,每台主虚拟服务器与其对应的从虚拟服务器之间通过交换机信息交互;所述集群架构中只要有一台主虚拟服务器正常运作,该数据库缓存程序服务器正常运作;

S04:所述WebAPI采用与Web端和移动终端APP分离式的后台程序架构,WebAPI、Web端和移动终端APP分别具有独立的内部IP,Web端和移动终端APP均通过WebAPI访问采集数据库SQL或解析缓存服务器;

S05:根据Web端对访问采集数据库SQL的访问量、访问时间、访问次数制成访问量统计表,设置一个用以记录更新情况以及更新开始点的游标index,统计单次统计数据步长Step,并根据游标index查询访问量统计表中的访问数据,定时将访问量统计表中的访问数据与高并发数据库中的阈值范围比较,当访问量统计表中的访问数据数值均在阈值范围内时,判断Web端和移动终端APP访问采集数据库不是高并发事件,则Web端和移动终端APP从采集数据库中读取数据;当访问量统计表中的访问数据与高并发数据库中的阈值比较,当访问量统计表中的访问数据数值不在阈值范围内时,判断Web端和移动终端APP访问采集数据库是高并发事件,由数据库缓存服务器调取不在阈值范围内的访问数据,将其存储在数据库缓存服务器中,当Web端和移动终端APP访问的是不在阈值范围内的访问数据时自数据库缓存服务器读取数据。

进一步地,所述步骤S05中,所述数据库缓存服务器调取不在阈值范围内的访问数据,将其存储在数据库缓存服务器中时,数据库缓存服务器中自带第一定时器,第一定时器的作用是定时更新数据库缓存服务器,使数据库缓存服务器中调取的采集数据库SQL中的数据是最新解析出的实时数据。

进一步地,所述步骤S05中,当Web端和移动终端APP的访问量由超过高并发数据库中的阈值范围下降到处于高并发数据库中的阈值范围内时,由第二定时器定时对比访问量统计表与高并发数据库中的阈值范围,当低于阈值时,重新判断Web端和移动终端APP访问采集数据库不是高并发事件。

进一步地,所述步骤S05中,访问量统计表在制作时,各个参数的数值统计和统计时间相互分离,使之互不影响。

进一步地,所述步骤S05中,访问量统计表中还包括访问数据类型,当访问数据类型中图片比重高于设定值时,增设至少一台虚拟图片服务器,通过图片访问与页面访问分离,减小高并发页面访问请求时服务器系统的压力,保证系统不会由于图片加载问题崩溃。在采集数据库SQL和图片服务器上,可以进行不同的配置优化,例如apache在配置ContentType的时候可以尽量少支持,尽可能少的LoadModule,保证更高的系统消耗和执行效率。

进一步地,所述解析缓存服务器和数据库缓存服务器的集群服务器架构中的主虚拟服务器和从虚拟服务器之间采用Paxos协议连接,Paxos协议通过对该主虚拟服务器的所有从虚拟服务器进行分布式选举,找到一个与该主虚拟服务器最匹配的从虚拟服务器来代替主虚拟服务器。这样可以保证系统的可持续工作,且能够保证代替该主虚拟服务器的从虚拟服务器与主虚拟服务器的一致性,减小从虚拟服务器与主虚拟服务器之间的小段时间的写服务中断。

进一步地,所述步骤S02中的解析程序服务器完成一个数据包的解析之后,会给予解析缓存服务器反馈以消除解析缓存服务器集群内的主虚拟服务器和从虚拟服务器对该数据包的存档。

进一步地,所述解析缓存服务器和数据库缓存服务器的集群服务器架构中的主虚拟服务器和从虚拟服务器的个数按照物理层上服务器的数量而定,优选地,每台物理层服务器上均设置集群服务器上的一个主虚拟服务器或从虚拟服务器。

智能农机管理平台的数据集群管理系统,包括采集程序服务器、解析程序服务器、采集数据库SQL、Web应用编程接口、Web端、移动终端APP,其特征在于,还包括解析缓存服务器、SQL报警数据库和数据库缓存服务器,所述采集程序服务器与解析缓存服务器协议连接,所述解析缓存服务器与解析程序服务器协议连接,所述解析程序服务器与采集数据库SQL协议连接,所述解析程序服务器还与数据库缓存服务器协议连接,所述数据库缓存服务器和采集数据库SQL均与Web应用编程接口连接,所述Web应用编程接口分别与Web端和移动终端APP协议通讯连接。

进一步地,还包括用于定时更新数据库缓存服务器的第一定时器。

进一步地,还包括用于比较高并发数据库和访问量统计表的第二定时器。

进一步地,所述解析缓存服务器和数据库缓存服务器均为集群架构,集群架构中包括至少两台主虚拟服务器,每台主虚拟服务器包括至少一台从虚拟服务器,每台主虚拟服务器与其对应的从虚拟服务器之间通过交换机连接。

有益效果

由于采用了上述的技术方案,本发明与现有技术相比,具有以下的优点和积极效果:

第一,通过增设解析缓存服务器,解决了上万台农机同时短间隔发送数据包时,解析程序服务器解析队列的可靠性,避免解析队列丢失造成的数据包丢失。第二,增设SQL报警数据库,将智能农机上传的数据包解析后立即对比各个参数值是否处于SQL报警数据库中所规定的该参数的阈值范围内,如果不处于阈值范围内,则管理平台启动报警模块,通过短信、Email、Web端、移动终端APP等信息推送的方式将报警信息推送给智能农机的操作者或第三方机构。(第三方机构可以是农机三包维修方、农业合作社等)第三,增设数据库缓存服务器,数据库缓存服务器采用非关系型的数据库,该数据库缓存服务器将采集数据库中被高频访问的数据写入改数据库缓存服务器中,当Web端从采集数据库中读取数据时排序队列过长时,Web端可以读取数据库缓存服务器中复制的内容,减小了采集数据库的读取负载。第四,解析缓存服务器和数据库缓存服务器均采用集群服务器架构,使解析缓存服务器内的多个服务器之间形成一个并行或分布式系统,由主从关系模式决定数据接收方式,为用户和应用程序提供单一的系统映射,集群内的服务器通过Redis、mongoDB、zookeeper等集群软件实现相互连接,使集群内的服务器之间可以相互替代,具有使用故障应急与负载平衡功能。第五,Web端和移动终端APP均通过WebAPI即Web应用编程接口连接采集数据库服务器和数据库缓存服务器,且WebAPI作为分离式的后台程序,其与IIS管理器(即互联网信息服务管理器)连接时采用与Web端和APP端口不同的内部IP,且Web端、移动终端APP和WebAPI的内部IP之间是并行关系可以相互访问。

附图说明

图1是本发明的结构示意图。

图2是本发明解析缓存服务器的结构示意图。

图3是本发明图2中主服务器R3的Redis集群的原理图。

图4是本发明图2中主服务器R2的Redis集群的原理图。

图5是本发明图2中主服务器R1的Redis集群的原理图。

图6是本发明数据包缓存地址生成之后的流程图。

具体实施方式

下面结合具体实施例,进一步阐述本发明。应理解,这些实施例仅用于说明本发明而不用于限制本发明的范围。此外应理解,在阅读了本发明讲授的内容之后,本领域技术人员可以对本发明作各种改动或修改,这些等价形式同样落于本申请所附权利要求书所限定的范围。

本发明的实施方式:

参见图1~图6,智能农机管理平台的数据集群管理方法,其特征在于,包括以下步骤:

S01:采集程序服务器接收到智能农机发送的数据包,采集服务器接受到数据包之后会由缓存地址生成器生成一个缓存地址,并由采集服务器以该缓存地址标记该数据包,并写入对应的缓存服务器中,所述解析缓存服务器为集群架构,集群架构中包括至少两台主虚拟服务器,每台主虚拟服务器包括至少一台从虚拟服务器,每台主虚拟服务器与其对应的从虚拟服务器之间通过交换机信息交互;所述集群架构中只要有一台主虚拟服务器正常运作,该解析缓存程序服务器正常运作;

S02:采集程序服务器将数据包通过缓存生成器生成的地址存入解析缓存服务器之后,解析缓存服务器通过非关系型的数据库存储并加载时间标记数据形成信息队列;解析程序服务器按照信息队列定时读取非关系型的数据库里面的数据,解析数据包并将该解析出的数据中的各个参数值与报警SQL数据库中所设定的参数阈值范围比较,如果解析出的数据在参数阈值范围内,则进入下一步骤;若解析出的数据在参数阈值范围之外,则管理平台启动报警模块,通过短信、Email、Web端、移动终端APP等信息推送的方式将报警信息推送给智能农机的操作者或第三方机构之后再进入下一步骤;

S03:解析缓存服务器将解析出的全部数据存入采集数据库SQL,并从采集数据库SQL中调取高频访问的信息,将该信息存入数据库缓存服务器中;所述数据库缓存服务器为集群架构,集群架构中包括至少两台主虚拟服务器,每台主虚拟服务器包括至少一台从虚拟服务器,每台主虚拟服务器与其对应的从虚拟服务器之间通过交换机信息交互;所述集群架构中只要有一台主虚拟服务器正常运作,该数据库缓存程序服务器正常运作;

S04:所述WebAPI采用与Web端和移动终端APP分离式的后台程序架构,WebAPI、Web端和移动终端APP分别具有独立的内部IP,Web端和移动终端APP均通过WebAPI访问采集数据库SQL或解析缓存服务器;

S05:根据Web端对访问采集数据库SQL的访问量、访问时间、访问次数制成访问量统计表,设置一个用以记录更新情况以及更新开始点的游标index,统计单次统计数据步长Step,并根据游标index查询访问量统计表中的访问数据,定时将访问量统计表中的访问数据与高并发数据库中的阈值范围比较,当访问量统计表中的访问数据数值均在阈值范围内时,判断Web端和移动终端APP访问采集数据库不是高并发事件,则Web端和移动终端APP从采集数据库中读取数据;当访问量统计表中的访问数据与高并发数据库中的阈值比较,当访问量统计表中的访问数据数值不在阈值范围内时,判断Web端和移动终端APP访问采集数据库是高并发事件,由数据库缓存服务器调取不在阈值范围内的访问数据,将其存储在数据库缓存服务器中,当Web端和移动终端APP访问的是不在阈值范围内的访问数据时自数据库缓存服务器读取数据。

进一步地,所述步骤S05中,所述数据库缓存服务器调取不在阈值范围内的访问数据,将其存储在数据库缓存服务器中时,数据库缓存服务器中自带第一定时器,第一定时器的作用是定时更新数据库缓存服务器,使数据库缓存服务器中调取的采集数据库SQL中的数据是最新解析出的实时数据。

进一步地,所述步骤S05中,当Web端和移动终端APP的访问量由超过高并发数据库中的阈值范围下降到处于高并发数据库中的阈值范围内时,由第二定时器定时对比访问量统计表与高并发数据库中的阈值范围,当低于阈值时,重新判断Web端和移动终端APP访问采集数据库不是高并发事件。

进一步地,所述步骤S05中,访问量统计表在制作时,各个参数的数值统计和统计时间相互分离,使之互不影响。

进一步地,所述步骤S05中,访问量统计表中还包括访问数据类型,当访问数据类型中图片比重高于设定值时,增设至少一台虚拟图片服务器,通过图片访问与页面访问分离,减小高并发页面访问请求时服务器系统的压力,保证系统不会由于图片加载问题崩溃。在采集数据库SQL和图片服务器上,可以进行不同的配置优化,例如apache在配置ContentType的时候可以尽量少支持,尽可能少的LoadModule,保证更高的系统消耗和执行效率。

进一步地,所述解析缓存服务器和数据库缓存服务器的集群服务器架构中的主虚拟服务器和从虚拟服务器之间采用Paxos协议连接,Paxos协议通过对该主虚拟服务器的所有从虚拟服务器进行分布式选举,找到一个与该主虚拟服务器最匹配的从虚拟服务器来代替主虚拟服务器。这样可以保证系统的可持续工作,且能够保证代替该主虚拟服务器的从虚拟服务器与主虚拟服务器的一致性,减小从虚拟服务器与主虚拟服务器之间的小段时间的写服务中断。

进一步地,所述步骤S02中的解析程序服务器完成一个数据包的解析之后,会给予解析缓存服务器反馈以消除解析缓存服务器集群内的主虚拟服务器和从虚拟服务器对该数据包的存档。

进一步地,所述解析缓存服务器和数据库缓存服务器的集群服务器架构中的主虚拟服务器和从虚拟服务器的个数按照物理层上服务器的数量而定,优选地,每台物理层服务器上均设置集群服务器上的一个主虚拟服务器或从虚拟服务器。

智能农机管理平台的数据集群管理系统,包括采集程序服务器、解析程序服务器、采集数据库SQL、Web应用编程接口、Web端、移动终端APP,其特征在于,还包括解析缓存服务器、SQL报警数据库和数据库缓存服务器,所述采集程序服务器与解析缓存服务器协议连接,所述解析缓存服务器与解析程序服务器协议连接,所述解析程序服务器与采集数据库SQL协议连接,所述解析程序服务器还与数据库缓存服务器协议连接,所述数据库缓存服务器和采集数据库SQL均与Web应用编程接口连接,所述Web应用编程接口分别与Web端和移动终端APP协议通讯连接。

进一步地,还包括用于定时更新数据库缓存服务器的第一定时器。

进一步地,还包括用于比较高并发数据库和访问量统计表的第二定时器。

进一步地,所述解析缓存服务器和数据库缓存服务器均为集群架构,集群架构中包括至少两台主虚拟服务器,每台主虚拟服务器包括至少一台从虚拟服务器,每台主虚拟服务器与其对应的从虚拟服务器之间通过交换机连接。

当前第1页1 2 3 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1