水调自动化系统高性能数据处理软件设计
合集下载
相关主题
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
1 设计思路
高可用性应用 1 . 1 高性能 、 数据 处 理 软 件 的 高 性 能 、 高可用性应用是在用 系统能够不中 户业务量增长或用 户 增 多 的 情 况 下 , 断业务并提高运行效率 , 因而要求具备伸缩性 、 高可 、 、 。 用性 负载均衡能力 失效转移能力和透明性 水调系统数据处理软件可采用负载均衡技术,
4] , 软件架构 [ 不但要满足自动计算业务需求 , 而 且需 满足其他软件模块的远程调用 。
水调 系 统数 据 处 理软 件 可 提 供 远 程调 用 服 务, 包括同步调用模式与异步调用模式 。 同步调用模式 在软件设计中实现 简 单 , 编写代码时可透明化远程 调用过程 ; 异步调用 模 式 在 系 统 中 需 使 用 消 息 中 间 件, 软 件 设 计 模 式 中 采 用 订 阅/发 布 模 式 , 模块与模 块之间是松耦合模式 , 可提升系统的集成性 。
0 引言
1] 水调自动化系统 [ 中历史数据的生成主要是由 数据处理软件依据固定算法形成 , 为水调系统报表 、
将单个重负载的运算分解到多台应用服务器上进行 并行处理 。 负载均衡技术能够均衡所有服务器与应 用之间的通信负载 , 根据实时响应时间进行判断 , 将 以实现真正的智 任务交由负载最轻 的 服 务 器 处 理 ,
谢 凯 ,赵转社 ,胡少英 ,陶珏辉 ,吴家祺
( ) 国网电力科学研究院/南京南瑞集团公司 ,江苏省南京市 2 1 0 0 0 3
摘要 :大型水调自动化系统的数据日益增多 , 导致数据处理软件计算性能下降 。 针对此问题 , 文中 从水调自动化系统历史数据应用出发 , 分析了数据处理软件的目标与功能 , 综合考虑了水调自动化 系统高性能 、 高可用性与面向服务的应用 , 提出了水调自动化系统高性能数据处理软件的设计思路 与方法 , 多层次 、 多方面地提升了数据处理软件的计算性能 。 关键词 :水库调度 ;自动化系统 ;数据处理软件 ;负载均衡 ;多线程
2 软件功能设计
水调系统数据处理软件主要由实时数据处理与 历史数据处理两大部分组成 。 实时数据处理部分实 时接收到遥测水情数据后自动计算对应的实时计算 数据 ; 历史数据处理部分从实时数据中提取的数据 , — 2 3 —
;修回日期 : 。 收稿日期 : 2 0 1 1 1 1 1 9 2 0 1 1 1 2 2 3 - - - -
水调 系 统 数 据 处 理 软 件 对 数 据 进 行 计 算 时 , 可 依据当前计算机多 核 多 线 程 的 特 性 , 将需要计算的 分配给多个线程进行计算 。 调度任务形成计算队列 , 在多处理器计算机 上 , 操作系统可同时执行多个线
3] 。 同时 , 程, 将极大提高计算机性能 [ 软件设计中可 线程以乱序执行代码流程 , 当多个 使用线程池技术 ,
( ) 2 0 1 2, 3 6 1
整编成小时 、 日、 旬、 月的特征数据 ( 整点值 、 平均值 、 。 数据处理软件功能如图 1 所示 。 最大值 、 最小值 )
应用层与服务层之 间 性 能 的 提 高 , 可依据当前服务 层服务器多核多线 程 的 特 性 , 并发计算任务和响应 远程调用 。 水调自动化系统数据处理软件在服务层高性能 5] 的应用可结合服务器端负载均衡算法 [ 实现 。 针对 水调系统的应用 , 目前优选的2种提高服务性能的 负载均衡算法如下 。 ) 轮叫调度算法 。 以轮叫的方式依次请求调度 1 不同的服务 器 , 即 每 次 调 度 执 行i= ( i+1)m o d n ( , 并 选 择 第i 台 服 i 为请求次数 , n 为 服 务 器 数 量) 务器 , 其优点是简洁 , 是一种无状态调度 。 ) 加权轮叫调度算法 。 按权值的高低和轮叫方 2 式分配请求到各服 务 器 , 权值高的服务器比权值低 的服务器处理更多 的 连 接 , 可以解决服务器之间性 。 能不一的问题 水调系统数据处理软件在应用层可依据计算任 合理使用多线程技术及线程池技术 , 务功能的不同 , 有效使用机器的系 统 资 源 , 快速大量地计算数据以 提升数据处理性能 。 在软件设计时合理使用多线程 软件设计模式 , 将计 算 任 务 队 列 提 交 给 并 发 的 线 程 处理 。 比较成熟的线 程 设 计 模 式 有 “ 每个消息一个 [ 6] ” ( ) , 线程 t 对应到数据处 h r e a d e s s a e 模式 e r -p -m g 理软件中即每个计算任务对应一个线程 。 利用线程 池技术 , 创建和销毁线程的开销几乎可忽略不计 , 加 快了执行的响应时间 。
线程同时运行时 , 这样的执行模式成为并发执行模 式 。 使用多线程技术可最大限度利用 C P U 资源 。 1 . 2 面向服务的分布式应用 水调 系 统数 据 处 理软 件 应 具 备 业 务服 务 功 能, 为系统统一提供数 据 整 编 计 算 功 能 , 保持系统数据 整编计算的一致性 , 防止因多个软件模块的不同算 法而造成数据差异 。 数据处理软件基于面向服务的
第3 6 卷 第 1 期 2 0 1 2年2月2 0日
V o l . 3 6 N o . 1 F e b . 2 0, 2 0 1 2
: / D O I 1 0. 3 9 6 9 3 8 9 3. 2 0 1 2. 0 1. 0 0 6Baidu Nhomakorabea. i s s n. 1 6 7 1 - j
水调自动化系统高性能数据处理软件设计
2] 。 能通信管理和最佳的服务性能 [
图形 、 高级应用 提 供 数 据 基 础 。 水 调 自 动 化 系 统 的 业务应用通过大量 历 史 数 据 引 用 , 减少了实时数据 的引用 , 降低了对数 据 库 系 统 和 网 络 系 统 资 源 的 消 耗, 从而提升了系统的稳定性与可靠性 。 数据处理软件在水调自动化系统中有着严格的 时序要求 。 正常情况下 , 水情测报数据 ( 水位 、 雨量 ) 在 2m 数据处理软件进行实时数据 、 i n 内进入系统 , 历史特征数据整编计算 , 待数据处理完成后 , 系统执 行相应的水务计算和高级应用计算 。 在大型电网水 调自动化系统或梯 级 流 域 水 调 自 动 化 系 统 中 , 由于 数据量巨大 , 数据处 理 软 件 需 要 在 短 时 间 内 完 成 整 编特征值的计算 。 因 此 , 提升水调自动化系统数据 处理速度是软件设计必须考虑的问题 。 数据处理软件作为水调自动化系统的一个部 分, 必须正确无误地 实 现 水 调 系 统 特 征 数 据 整 编 功 能的计算 , 在规定时间内高效可靠地完成业务计算 , 并具备智能化处理能力 , 合理使用系统计算资源 , 协 调各软件模块提供分布式远程调用数据处理服务 。