本文本来是写到Word文档里的个人总结,后来想想从06年接触博客园至今,基本每天都要上来学习一下的,却从来没写过什么东东,就贴一篇。

新项目马上要开始,本文先从技术角度对上一MES项目简单总结一下。

1、程序

主要程序列表:MES产品框架、客制化生产系统、客制化查询系统、测试设备(2种)集成程序、数据采集设备(2种)集成程序、报表数据统计Job框架、报表系统、异常报警信息查询系统、SAP接口、其它程序

1.1、MES产品框架:使用WCF进行通信,使用NHibernate 2.2进行持久化,使用AppDomain动态加载/卸载程序集dll并缓存的方式及以Key-Value的属性方式提供客制化处理方案;

1.2、测试设备集成程序:处理测试设备输出的数据(主要格式:txt、Excel、Access);

1.3、数据采集设备集成程序:Socket通信、结合PLC进行串口通信等;

1.4、报表数据统计Job框架:Quartz,动态加载Job dll;

1.5、报表系统:SQL Server自带的报表系统;

如图:

应用程序架构图示

2、数据库

使用的数据库产品是Microsoft SQL Server 2008 R2英文版

系统数据库主要设计为:生产数据库(Production Database)、历史数据库(History Database)、报表数据库(Report Database)、集成平台数据库(Integration Database)、异常报警信息数据库(Exception Alarm Database)、SAP接口数据库;

2.1、生产数据库(Production Database)

1)生产数据库正常情况每周增长量为15G(Data File + Log File + Index File),保存6~12个月内数据;每天Log备份,每周增量全备份(全备之后Log File会截断) ;

2)生产数据库主要给生产系统和产线生产数据查询系统使用;

3)生产数据库中的业务数据定期做归档,主要有2种方式:Purge和Archive,Purge是数据可逆方案,主要对象是计算机:删除原始数据前按业务单元把数据以Insert Sql的形式保存到txt文件中,需要恢复时执行相应Insert Sql;Archive是数据不可逆方案,主要对象是人:按业务单元把数据以Key-Value的形式保存到txt或xml文件中;

2.2、历史数据库(History Database)

历史数据库数据由生产数据库数据同步过来,3种方案同时使用:SQL Server的发布/订阅复制(Replication)方案、SQL Server Job方案、SSIS(SQL Server Integration Service)方案;3种方案同时使用的原因:发布/订阅的复制方案会因为各种原因中断,微软支持人员给出的答案:有些原因在方案重启后可以从中断点继续复制,有些原因必须重新做复制,从头复制(问题就在这里:1是复制需要一定的时间,会影响生产;2是有些数据在生产数据库已经被Purge掉了,无法找到原始数据),所以历史数据库就被拆分成几个小数据库:基础数据或变动比较小的数据采用SQL Server的发布/订阅复制方案,问题发生时就算重新做复制也会比较快恢复;一些逻辑性强的采用SQL Server Job的方式进行复制,可以设置起始点及回退;SSIS不太了解,属于学习和尝试阶段;

2.3、报表数据库(Report Database)

基于报表逻辑的复杂性以及客户对效率要求(所有常规报表在30秒内),通过Job将报表数据从历史数据库中统计出来保存到报表数据库来实现。

其它数据不做介绍了。

如图:

数据库架构图示

3、服务器

根据以上程序及数据库设计,规划以下服务器,实际实施时有合并使用。

MES产品框架应用程序服务器(Framework Application Server)、客制化系统应用程序服务器(Custom Application Server)、集成平台应用程序服务器(Integration Application Server)、缓存服务器(Cache Server)、报表查询服务器(Report Query Server)、生产数据库服务器(Production Database Server)、历史数据库服务器(History Database Server)、报表数据库服务器(Report Database Server)、文件服务器(File Server)

如图:

服务器架构图示

Application Server一共2台,在服务器群集(Cluster)基础上结合缓存服务器(Cache Server,主要是架设了NCache,保存Session和Viewstate)建立网络负载平衡(NLB,Network Load Balancing),主要运行程序:MES产品框架、客制化生产系统、客制化查询系统;

Integration Server主要运行程序:测试设备(2种)集成程序服务器端、数据采集设备(2种)集成程序服务器端;

4、主要问题

技术上主要的问题在于数据库的同步方面,各种方案都有优点和缺点,搞得很疲惫,不知道是SQL Server太弱还是我们的设计方案有问题(使用SQL Server主要是项目开始之前,客户方已经购买了SQL Server,不愿意再换Oracle)。

mes java_MES项目简单总结(技术篇)相关推荐

  1. github上创建java项目简单操作

    github上创建java项目简单操作 参考L: github上创建java项目简单操作 - CSDN博客 http://blog.csdn.net/qq_29392425/article/detai ...

  2. 从vue项目简单了解什么是SSR

    从vue项目简单了解什么是SSR SSR 从0到1开始 初始化项目 server.js SSR vue是单页应用,创建的项目不利于SEO爬虫,因为SEO爬虫是爬网页的源代码,而vue创建的项目是通过j ...

  3. 10招搞定MES系统软件项目

    在MES系统软件项目管理过程中,有时候会出现项目进展不顺利的情况,有时候项目则会直接垮掉.真正精明的MES系统软件管理人员必须要有能力对项目进行预判,并及时加强管理及采取必要的措施,同时还要积累经验, ...

  4. MES系统项目风险管理解决方案

    软件项目风险管理是保证软件工程项目顺利实施的重要环节,针对企业特点,阐述了在软件研发中产生风险的原因,讨论了软件项目管理风险管理控过程.以某具体软件项目的开发和实施为背景,将主成分分析和相关性分析等方 ...

  5. idea 从svn导入多个项目_IDEA导入项目简单教程

    该教程用于IDEA初学者导入eclipse项目,或者导入其他已经写好的Java源程序的简单教程. 我们用IDEA打开一个已经写好的项目源文件时,如果没有配置好,就会出现:JDK配置失误报错.程序无法启 ...

  6. 3D姿态估计——ThreeDPose项目简单易用的模型解析

    前言 之前写过tensorflow官方的posenet模型解析,用起来比较简单,但是缺点是只有2D关键点,本着易用性的原则,当然要再来个简单易用的3D姿态估计.偶然看见了ThreeDPose的项目,感 ...

  7. ASP.NET Core 项目简单实现身份验证及鉴权

    环境 VS 2017 ASP.NET Core 2.2 目标 以相对简单优雅的方式实现用户身份验证和鉴权,解决以下两个问题: 无状态的身份验证服务,使用请求头附加访问令牌,几乎适用于手机.网页.桌面应 ...

  8. Django小项目简单BBS论坛

    开发一个简单的BBS论坛 项目需求: 1 整体参考"抽屉新热榜" + "虎嗅网" 2 实现不同论坛版块 3 帖子列表展示 4 帖子评论数.点赞数展示 5 在线用 ...

  9. 说一下dubbo项目简单的搭建过程_dubbo学习(1)--简单的入门搭建实例

    1 简介 dubbo是一个分布式服务框架,由阿里巴巴的工程师开发,致力于提供高性能和透明化的RPC远程服务调用.可惜的是该项目在2012年之后就没有再更新了,之后由当当基于dubbo开发了dubbox ...

最新文章

  1. 用QQ提问的技巧,用了之后可以提高效率,呵呵。
  2. python学习软件-python软件学习从入门到精通
  3. Fiddler抓包工具详解(四)(断点设置+弱网测试)
  4. VS2017生成一个简单的DLL文件 和 LIB文件——C语言
  5. 我为什么在这里写博客
  6. 能量项链(NOIP-2006 提高组)
  7. python-gevent模块实现socket大并发
  8. python能做什么程序-学了 Python,能用来做什么?实际应用场景有哪些??
  9. The 9 Deep Learning Papers You Need To Know About (Understanding CNNs Part 3)
  10. 解决Mac谷歌浏览器问题
  11. css+html投票系统,网上在线投票系统的设计与实现.doc
  12. android 集成 firebase 推送
  13. Halcon错误 #2021: System clock has been set back.
  14. linux修改只读文件指令,linux修改文件权限
  15. java使用freemarker模版下载成Excel文件
  16. Servlet入门到入坟 一站式基础及进阶——SpringMVC没它都不行 你确定不来看看——囊括初学基础以及进阶
  17. 网络安全——Burpsuite
  18. 判断字符串是否是对称字符串
  19. (毕业设计资料)基于单片机GPS轨迹定位和里程统计系统
  20. AG9311Algoltek安格科技TypeC转HDMI PD3.0方案设计资料

热门文章

  1. 主流nosql数据库对比
  2. 奋斗吧,程序员——第五十三章 万里赴戎机,关山度若飞
  3. 工作纪实_17-正则表达式收藏
  4. 联发科MT5592数字电视DTV芯片处理器参数介绍
  5. 演绎另类黑客马拉松,机智云第二届中国智能硬件36小时开发大赛再现极速开发...
  6. 手写JavaScript常见5种设计模式
  7. Java减肥计划(使用if结构)
  8. ubuntu中安装搜狗拼音输入法
  9. Javaweb化妆品网上购物系统
  10. 树莓派(一) 控制LED灯和声音传感器(python)