150 likes | 245 Views
新监控系统设计. 新监控系统设计. 目的及工作流程 关键点设计 测试 结论. 目的及流程. 监控系统总线上的“错误”,自动呈现/报告到错误界面. MQ总线数据. Rule Engine. Cache system. 输出部分. 采集. 分析处理. 转存显示. Timeout check. 新监控系统设计. 目的及工作流程 关键点设计 测试 结论. 关键点 —— 规则引擎. 作用 分析MQ数据 存放到相应cache部分 问题 预测后续指令?or 分析匹配之前指令? 效率?需否手写代码?. 关键点 —— 规则引擎.
E N D
新监控系统设计 • 目的及工作流程 • 关键点设计 • 测试 • 结论
目的及流程 • 监控系统总线上的“错误”,自动呈现/报告到错误界面 MQ总线数据 Rule Engine Cache system 输出部分 采集 分析处理 转存显示 Timeout check
新监控系统设计 • 目的及工作流程 • 关键点设计 • 测试 • 结论
关键点 —— 规则引擎 • 作用 • 分析MQ数据 • 存放到相应cache部分 • 问题 • 预测后续指令?or 分析匹配之前指令? • 效率?需否手写代码?
关键点 —— 规则引擎 • drools (JBoss Rules) • http://www.jboss.org/drools/documentation • Drools是Jboss公司旗下一款开源的规则引擎,它完整的实现了Rete算法;提供了强大的EclipsePlugin开发支持;通过使用其中的DSL(DomainSpecificLanguage),可以实现用自然语言方式来描述业务规则,使得业务分析人员也可以看懂业务规则代码。最新版本Drools5提供了基于WEB的BRMS——Guvnor,Guvnor提供了规则管理的知识库,通过它可以实现规则的版本控制,及规则的在线修改与编译,使得开发人员和系统管理人员可以在线管理业务规则。 • 速度快,支持高并发,内存占用小,文档较丰富
关键点 —— 缓存系统 • 储存已接收到并处理过的数据包的信息 • 项目信息 • id • timestamp • step • (next?)
关键点 —— 缓存系统 • 可能的流程(个人思路) • 数据来到,得到id,RE算出步骤编号 • hash(id),检查本地是否已有数据,比较流程号及时间戳,更新hashtable。做到最后一步无错则删除该记录 • 问题 • 接不到下一数据的timeout如何处理?设置全局timeout遍历哈希表?
关键点 —— 缓存系统 • OSCache • OSCache是个一个广泛采用的高性能的J2EE缓存框架,OSCache能用于任何Java应用程序的普通的缓存解决方案。 • 缓存任何对象,你可以不受限制的缓存部分jsp页面或HTTP请求,任何java对象都可以缓存。 • 拥有全面的API--OSCache API给你全面的程序来控制所有的OSCache特性。 • 永久缓存--缓存能随意的写入硬盘,因此允许昂贵的创建(expensive-to-create)数据来保持缓存,甚至能让应用重启。 • 支持集群--集群缓存数据能被单个的进行参数配置,不需要修改代码。 • 缓存记录的过期--你可以有最大限度的控制缓存对象的过期,包括可插入式的刷新策略(如果默认性能不需要时) • http://www.opensymphony.com/oscache
关键点 —— 缓存系统 • JBoss Cache (updated to infinispan) • Infinispan is an extremely scalable, highly available key/value NoSQL datastore and distributed data grid platform - 100% open source, and written in Java. The purpose of Infinispan is to expose a data structure that is highly concurrent, designed ground-up to make the most of modern multi-processor/multi-core architectures while at the same time providing distributed cache capabilities. • At its core Infinispan exposes a Cache interface which extends java.util.Map. It is also optionally is backed by a peer-to-peer network architecture to distribute state efficiently around a data grid. • https://www.jboss.org/infinispan
关键点 —— 输出 • cache系统中把出问题的步骤pop至特定数据库 • 整合现有的异常处理系统 • web显示?js刷新数据?
新监控系统设计 • 目的及工作流程 • 关键点设计 • 测试 • 结论
测试 • 1. 规则引擎的处理速度 • 规则数目 • 处理速度 • 资源占用 • 源/目标数据格式(predefined) • 2. 规则引擎整合cache系统 • 接口 • 格式转换?
测试 • 3. cache系统的选择 • 手写?os/jboss? • 并发性能(2000pps?) • 资源占用(内存CPU) • 容错率 • 4. 输出系统设计
结论 • 从初步设计分析,该监控系统可以达到监视大量属于交易的目的。 • 具体程序有待分步骤测试