ImageVerifierCode 换一换
格式:DOCX , 页数:7 ,大小:32.37KB ,
资源ID:13741795      下载积分:5 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bingdoc.com/d-13741795.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(郑州大学远程教育电力市场技术支持系统主站体系方案的设计与实现.docx)为本站会员(b****1)主动上传,冰点文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰点文库(发送邮件至service@bingdoc.com或直接QQ联系客服),我们立即给予删除!

郑州大学远程教育电力市场技术支持系统主站体系方案的设计与实现.docx

1、郑州大学远程教育电力市场技术支持系统主站体系方案的设计与实现电力市场技术支持系统主站体系方案的设计与实现1、 引言电力市场技术支持系统是为支持电力市场运营而建立的一套自动化系统,包含多个子系统【1】。一般认为,它既要考虑实现电力的交易,又要考虑电力系统的安全运行。根据这些子系统的特点,可以把电力市场技术支持系统大致划分为基于Web的电力交易平台和主站侧内部应用平台两部分。随着电力市场的发展,电力市场技术支持系统也在不断进步,尤其是主站侧内部应用平台正经历着由二层客户/服务器模式向三层和多层模式的转变。二层客户/服务器模式通常以PC机作为客户机使用并运行客户端程序,另外一台服务器用于运行后台的数

2、据库系统,应用软件既实现人机交互又实现业务逻辑,部分业务逻辑以存储过程的形式在数据库服务器上运行。这种模式的特点是以数据库系统为中心,实现各节点的数据交换和共享,各节点间的数据通信由数据库提供的接口承担。这种系统架构相对简单,易于实现,适合简单的网络环境。随着信息技术的发展、实际应用环境中网络环境复杂程度的增加、客户端连接数的不断增加、安全性等问题变得日益突出,内部应用二层客户/服务器结构的不足和缺陷也逐渐暴露出来。为了克服二层客户/服务器模式的缺陷,出现了一种新的结构,即三层(N层)客户/服务器模型。三层客户/服务器结构构建了一种分割式的应用程序。系统对应用程序进行分割后,划分成不同的逻辑组

3、件,主要分为:用户界面层:提供信息浏览、服务请求、定位等,主要是实现用户界面,并保证用户界面的友好性和统一性。业务处理层:实现客户的全部业务逻辑。数据服务层:实现数据定义、存储、备份、检索等功能,主要由数据库系统实现。三层体系结构的实现相对复杂。为了满足实现三层体系结构这种需求,出现了各种不同的规范,例如DCOM,CORBA,J2EE等,以及与之相关的产品。这些技术和产品在很大程度上方便及简化了三层体系结构分布式系统的实现,但在每个节点需安装或部署相应的运行环境,从而增加了系统构建的复杂性以及开发和维护代价;同时,这些相关的产品尚在完善和发展之中,对于某些应用需要,还不能予以有效支持。考虑到这

4、些因素,本文提出一个基于SOCKET API的三层体系结构方案。2、 体系结构TCP/IP是网络普遍支持的通信协议,SOCKET API是与之相关的网络应用编程界面。网络通信应用程序通过SOCKET API与TCP/IP核心进行沟通。直接使用SOCKET API需了解和熟悉相关的复杂细节。本系统的设计目标就是实现一个基于SOCKET API的基本通信平台,为上层应用屏蔽操作系统和网络协议。整个体系结构由数据通信引擎服务和应用编程接口组成。基于本体系结构的三层应用系统体系结构如图1所示。数据通信引擎服务是图1系统体系结构运行在应用服务器上的中间层程序,提供网络连接、数据传输分发、进程管理、日志记

5、录等基础型服务,上层应用分应用服务和客户端程序两类,它们均通过应用编程接口与数据通信引擎服务发生联系。数据通信引擎服务和应用编程接口屏蔽了操作系统和网络协议等细节,支持同步过程调用和异步消息传输两种模式。同步过程调用时,客户端主动发出请求,数据通信引擎服务根据请求的类别,通知相应的应用服务接收、处理数据并等待处理结果的返回,然后将应用服务返回的处理结果返回给客户端。异步消息传输有两种类型:应用服务发布消息:数据通信引擎服务根据预先定义的参数把消息传输到相应的客户端或其他应用服务;客户端发送消息:数据通信引擎服务根据消息的类别把消息送到相应的应用服务并通知其接收。数据通信引擎服务调用SOCKET

6、 API完成端口绑定、监听等一系列网络通信功能,实现面向连接的数据通信,并负责分配和管理其他操作系统资源。这样,既保证了系统的稳定性和通信效率,又简化了上层应用的复杂性。相关参数一般以文件的形式静态配置,数据通信引擎服务启动时读入文件并完成环境初始化,对于某些参数可在运行状态动态设置。该体系结构以数据通信引擎服务为核心,实现了一个可靠的数据通道,保障应用数据的传输,以自身的复杂性换取了上层应用的简单实现、系统的简洁部署和方便管理。3、 关键技术3.1数据组织SOCKET有两种类型,即流式套接字(SOCK_STREAM)和数据报套接字(SOCK_DGRAM)。流式套接字提供了一个面向连接、可靠、

7、数据无错、无重复发送及按发送顺序接收数据的服务,数据被看作是字节流,无长度限制。本系统在流式套接字的基础上进行数据封装,根据上层应用的实际调用方式把数据封装成逻辑帧,即一帧数据由定长的逻辑帧头和不定长的数据体构成。逻辑帧头由16位帧识别字、帧长度、帧标识号、帧数据校验和等域组成。逻辑帧头的作用是保证帧数据被独立和完整地传输,即一帧在一个环节只传输1次和被响应1次,数据体可变长,以满足实际数据传输的需要。基于这种数据封装方式,上层应用间很容易实现分布式过程调用功能。调用请求者将请求数据封装成一个逻辑帧并发送请求,数据通信引擎服务根据帧标识号把请求帧分发到相应的应用服务,被调用的应用服务响应这一个

8、逻辑帧,处理后返回结果,请求者等待到结果数据帧,一次调用圆满结束。封装的细节由通信框架处理,若发生通信错误,请求者将收到包含错误信息的数据帧。为了保证通信框架一致性,统一定义了通用错误信息。为进一步方便和规范上层应用的内存使用,应用编程接口实现并提供一个公用的辅助内存管理类CBuffer。该类实现了一个以Byte为单位、可变长、连续的线性内存空间。使用这个类,上层应用可方便地向逻辑帧写入和读取可变长的应用数据。3.2多线程数据通信引擎服务和应用编程接口均采用多线程技术,以满足实时性要求,提高系统响应效率。单线程程序是指在程序运行期间由单个线程独占CPU的控制权,负责执行所有任务。在这种情况下,

9、程序在执行一些比较费时的任务时,就无法及时响应其他操作,造成阻塞。多线程程序是指在应用程序中使用多个线程把不同的执行任务分开执行。因此,采用多线程技术满足实时响应的需要,是数据通信引擎服务成功的关键。数据通信引擎服务包含3类线程:主线程响应用户界面;监听线程负责SOCKET端口监听;工作线程负责接收和处理客户端数据。数据通信引擎服务启动时,主线程自动创建。主线程读人参数文件,分配内存和资源,初始化运行环境,然后处于等待状态,等待用户操作命令和其他线程的信号。监听线程由主线程创建,用来创建本地套接字,绑定端口,开始监听。一旦监听到连接请求,便接收连接,创建工作线程。工作线程根据预定的逻辑,校验连

10、接的合法性,接收数据,当接收到完整的一帧数据后,识别帧数据,分发给相应的应用服务并触发信号,然后等待返回信号,读取返回数据并封装,最后通过套接字把数据发送回去。这样,工作线程完成了一个完整循环,在该循环中,工作线程还主动判断是否超时和发生错误。工作线程一旦创建便独立执行,因而不影响监听线程对客户端请求的响应,线程间可通过信号灯等方式传达必要的信息。3.3进程间通信一般操作系统的进程间通信(IPCinter-process communications)机制基本包括共享内存、信号灯操作、消息队列和信号处理等部分。其中,共享内存允许2个或多个进程共享一个给定的存储区,数据不需要来回复制,是最快的一

11、种进程间通信机制。为了实现安全通信,必须与信号灯等同步机制共同使用【2】。数据通信引擎服务正是应用了这种机制来处理与应用服务程序间的数据通信。数据通信引擎服务为每一个应用服务程序分配一套完整的进程间通信对象,包括共享内存、信号、互斥体等。工作线程负责把数据写人共享内存并锁定互斥体和触发信号,这样便开始了一次调用,应用服务响应信号处理数据,然后向共享内存写结果数据并清除原信号和触发另一个信号,工作线程响应这个信号读出结果数据,清除信号,解锁互斥体。一个工作线程的调用过程中,若有另一个工作线程尝试调用同一个应用服务程序,则会因互斥体被锁定而处于等待状态,这样便保证了进程通信的线程安全。工作线程一旦

12、被创建便锁定某些资源独立运行,在某些情况下可能死锁。为了避免这种可能的死锁造成系统阻塞,数据通信引擎服务的主线程在空闲时间片内定时检测处于工作状态的工作线程是否超时。正常情况下,工作线程超时能自己退出,因此,主线程通过判断是否超时,可识别工作线程是否因意外死锁,然后解除死锁,恢复系统正常运行。4、 实际应用PMOS2000电力市场技术支持系统由基于Web的电力交易平台和主站侧市场内部应用平台两个部分组成。主站侧市场内部应用平台包括实现不同功能的应用子系统(计划子系统、结算子系统、负荷预测子系统等)以及与其他系统的接口,实现计划编制、结算、考核等功能,为Web电力交易平台提供共享数据,是电力市场

13、技术支持系统的核心【3】。4.1系统的部署典型的三层结构模式包括客户端、应用服务器和数据库服务器。数据通信引擎服务作为中间层运行在应用服务器上,计划子系统、结算子系统、负荷预测子系统等以应用服务的方式部署在服务器上,并由数据通信引擎服务统一管理。不同的子系统可以部署在不同的应用服务器上,以便实现多台服务器分摊负载。一个子系统也可以是另一个子系统的客户端,这种级联方式增加了系统部署的灵活性。数据通信引擎服务的进程管理模块自动管理各子系统并记录客户端的连接、调用情况,系统维护管理简单方便。4.2上层协议和公共服务逻辑帧数据封装形式使得系统构建时能方便地定义上层应用协议。定义上层应用协议使应用服务和

14、客户端各自的实现不相互依赖,应用实现只需链接相应的编程接口。客户端根据定义好的上层应用协议封装操作和数据,然后调用编程接口的远程方法将请求发送到数据通信引擎服务,数据通信引擎服务根据定义识别请求,将调用转发到相应的应用服务,等待应用返回处理结果,最后将结果数据发送回客户端。系统构建中对各子系统统一划分编号范围,对所有的操作统一编号,统一定义中文描述,建立数据字典。系统以操作为原子单位,操作与系统数据相关联。统一定义操作使系统更具整体性,很容易实现与其他系统的接口。此外,通过定义新的操作,很容易实现系统功能扩展。由此构建的软件系统正朝一个可定义、可组态的方向发展。这种以操作及关联数据为基础的上层

15、应用协议很容易被管理和进行访问控制,权限管理子系统便是这样一个公共服务。通过这个服务,可灵活方便地实现不同操作权限的组合,权限校验形式统一,实现简单。4.3可扩展的目标电力市场运营正处于发展之中,电力市场技术支持系统只有在很好地满足各种需求时,才能得到很好的应用。应用需求的多变是当前电力市场技术支持系统建设过程中经常碰到的问题,其中某些需求甚至可能发生多次变化。当一个新的需求提出后,首先,根据数据字典确定这个需求是否已存在定义,若不存在,则定义新的协议,从而将可能的修改定位到尽可能小的范围;其次,根据协议修改对应的应用服务和客户端;最后,重新部署修改的应用。在修改过程中不影响系统其他模块的运行

16、,软件更新的难度降低,所需的时间减少。与其他系统的接口是电力市场技术支持系统中一个重要的模块。例如,结算模块可以通过远程调用召唤接口模块向电量计量系统请求计量数据,这样既满足了功能的要求,又维持了系统的软件结构和模块间的相互独立。系统接口模块以应用服务这种方式组织,使模块本身具备很强的可扩展性。5、 结语本文设计实现的三层体系结构框架以SOCKET API为基础,具有普遍的适应性,达到了作为系统基础通信框架的目标。它为上层应用提供了统一的数据通信方式和相关的管理功能,简化了上层应用的开发,提高了整个软件系统的可维护性和可扩展性。在实际应用中,它的稳定性和运行效率得到了很好的验证。参考文献【1】

17、赵遵廉,辛耀中,郭国川,等(Zhao Zunlian,Xin Yaozhong,Guo Guochuan,et al).电力市场运营系统(Electricity Market Operation System).北京:中国电力出版社(Beijing: Electric Power Press),2000;【2】喻志虎(Yu Zhihu).UNIX平台下C语言编程(C Program Under UNIX).北京:清华大学出版社(Beiiing: Tsinghua University Press),2001;【3】宋燕敏,曹荣章,华定中,等(Song Yanmin,Cao Rongzhang,Hua Dingzhong,et al).PMOS-2000发电市场技术支持系统综述(Introduction of PMOS-2000 Power Market Operation Systems),电力系统自动化(Automation of Electric power systems),2000,24(4):10-13。

copyright@ 2008-2023 冰点文库 网站版权所有

经营许可证编号:鄂ICP备19020893号-2