基于SAAS的智慧农业管理平台方案

合集下载
相关主题
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

云端农业SAAS系统初步建设方案

2016年9月

目录

一、概述

“云端农业SAAS系统”立足现代农业,融入国际领先的“物联网、移动互联网、云计算”技术,借助个人电脑、智能手机,实现对农业生产现场气象、土壤、水源环境的实时监测,并对大棚、温室的灌溉、通风、降温、增温等农业设施实现远程自动化控制。结合视频直播、智能预警等强大功能,系统可帮助广大农业工作者随时随地掌握农作物生长状况及环境变化趋势,为用户提供一套高效便捷、功能强大的农业监控解决方案。

二、系统架构设计

2.1 系统总体设计

平台的建设是基于高前瞻性、高稳定性、高性能、数据整合共享、高技术应用为核心的综合集成架构。总体架构的设计应用从以下几个方面进行综合集成:

1.应用集群、分布式部署

将平台作为整个系统入口,采用服务集群的方式进行部署,一是解决用户并发量,二是将信息平台基础核心功能进行性能分发,以保证其运行正常,而且在信息中心平台还涉及到可以将部分应用系统进行集成整合开发,从而进行统一部署,所以,信息中心平台应该将其分为核心功能服务集群和业务应用集群两部分。

2.SAAS服务架构

在平台建设中,建设方式是以云的模式进行建设,所以在系统设计时需要考虑多租户的应用,每个用户/企业都应该有自己独立的区域,有自己特有的数据,而且每个用户或企业的数据做到完全隔离。那么,从软件设计的角度来说,此种模式即为软件即服务(SAAS)的应用。

3.基于SOA(面向服务架构)的应用

SOA是一种面向服务的架构体系,也是实现SAAS的核心技术;在此基础上能够快速响应其他业务应用系统的功能集成和数据调用,将平台核心功能以接口的方式进行开放,在面向服务的技术应用同时,平台实现ESB (企业服务总线)来支撑SOA的架构应用,建设成为平台的服务总线。采用SOA面向服务的架构能够解决与于第三方的集成也能够保证平台化建设的要求。

4.基于J2EE的技术架构应用

J2EE的企业级应用开发架构是目前较为流行且稳定的技术架构,在企业级的应用中一直处于前列,因此此次基础技术架构将采用J2EE架构模式,为实现其平台的建设要求,在技术架构上将会采用多种技术合成的架构方式来实现。

5.基于Activiti的BPM应用

平台在更大程度上应该建立统一的BPM业务流程平台,而Activiti 是目前Java开源中的使用最多的流程引擎,它不仅可以实现工作流,而且能够支持业务流程;因此在平台流程引擎将选用Activiti作为BPM业务流程引擎,将直接实现系统与系统间的业务流程整合(即能实现跨系统

的业务集成,那么基于单个系统的流程则更易)。

总构架系图:

2.2 平台技术架构

✧系统采用业界主流的SOA架构系统框架,统一ESB服务,可以实现企业私有云,支持多公司不同软件部署和共享。

✧门户支持,能够更好的进行各种信息展现整合,提供个性化的展现形式

✧强化系统接口和数据库的处理支持系统集成能力、数据整合能力

平台系统用户体验层完全采用B/S架构体系,提供对AJAX、HTML/XHTML、flex、以及WML等技术标准的支持,从而使用户不但可以通过桌面终端,还可以通过其它方式访问平台系统提供的服务,大大增强整个系统的使用程度。同时,这样的架构体系让平台系统可以与第三方的现有的门户很好的集成在一起。

流程层可以更加贴近业务,迅速跟进业务变化。流程引擎将人工工作流和系统自动化流程融合在一起,利用单一引擎对两者加以执行,实现了真正意义上的端到端流程。一体化的设计环境也使得用户不必将业务分析人员或咨询方梳理出来的完整业务流程拆散成人工工作流和系统自动流程,然后再利用不同的引擎对二者分别执行。这样一来,端到端的流程从设计,到执行,到监控,再到优化,都是统一的,不会存在于业务人员和IT人员不同的设计工具中,不会带来流程模型同步的问题,真正做到对业务流程准确和统一的管理。

流程引擎支持XPDL、BPEL以及其他模型的导入和导出。规则引擎将平台内的业务规则进行模型化的设计、实现、和管理,同时又与流程引擎和系统集成平台紧密结合,根据实际业务要求,就可以实现启动流程和触发后端系统功能等操作。业务流程监控基于完整的端到端流程,因此可以准确定位问题和瓶颈所在,为业务分析人员提供准确的资料对现有业务流程进行分析和优化。如果将人工工作流与系统自动化流程分开处理和监控,就很难定位问题的根源,无法确定是最初的业务模型问题,还是在对流程进行IT实现时的拆散过程有问题。而且,将分开监控的数据提供给业务分析人员,对其分析也会造成一定的不便,因为拆散后的流程已经与最初业务人员设计的端到端流程不一致了,因此很难在原有模型上定位问题,从而无法对原有业务进行优化。在流程层内,提供对公司关键业务定义指标,并对其进行图形化的监控,使得用户可以准确掌握公司的业务运营情况。而且,平台的业务流程监控和审计等也与规则引擎和流程引擎紧密相连。当侦测到定义的业务事件后,就可以进行触发业务流程和发送消息等动作。对于经过优化的业务流程,平台提供审计的功能,使用户对业务的发展历程有个清晰的档案管理,供以后分析所用,因而帮助公司达到相关质量体系和内控法规的要求。

在应用集成层内,平台采用SOA架构与技术,可以方便地与第三方必须的IT架构融合为一体,而且性能上达到线性伸缩能力,同时在这一层内还提供丰富的用户认证和信息安全机制(支持SAML、WS-Security、X.509等安全协议,以及服务级和数据级的ACL)、负载均衡机制、以及高可用

性保障。平台采用无状态信息连接与含状态信息XML对象的技术,消除传统分布式体系架构中必须维护系统间连接状态的开销,因此在服务器数量增加的时候,整体性能不会出现衰减,恰恰相反,整体性能会呈现线性增长的趋势。

平台系统利用不同种类的连接器与后端系统进行集成,再利用不同的通信协议与后端系统进行通讯。目前主要支持的协议包括Socket、JMS、MSMQ、SSL(Secure Socket Layer)等。业务逻辑层用于向集成层提供公司资源,将公司内不同系统的功能开放出来,形成Web服务。如果现有功能无法满足业务需求,平台就需要提供基于普通Java语言的应用服务器WS-AppServer,让用户自由扩展现有系统功能,并自动完成与Web服务调用等相关的代码逻辑。平台需支持构建于现有主流技术体系的应用系统功能开放成Web服务,这些技术包括J2EE、.Net等。通过对ODBC和JDBC等技术的支持,平台系统还可以访问到个人的数据层,对数据进行相应的操作。

2.3 SAAS平台架构

SaaS是Software-as-a-Service(软件即服务)的简称,本云端农业系统都将按照SaaS的架构模式进行开发,从而解决多用户统一应用,统一软件管理和维护。

对于SaaS应用的可伸缩,最理想的情况:随着用户数的增大,系统架构无需调整,而仅需要增加/增强相应的硬件设备(应用服务器、数据库服务器)即可。SaaS服务的实现,从技术角度来说,主要是在部署、存储和开发架构上需要统一确定,在开发上应该完全基于SOA架构模式进行,而在存储则需要对每个应用进行数据库的独立架构设计(信息中心平台作

相关文档
最新文档