多层分布式系统

2024-05-04

多层分布式系统(精选八篇)

多层分布式系统 篇1

关键词:股票交易机制,撮合系统,连续竞价,撮合算法,数据库设计

0 引言

互联网的高速发展使得电子管理系统在各行各业都有了广泛且重要的应用。而在市场信息瞬息万变、交易需求不断扩大的股票市场, 具有速度快、成本低和突破场地限制等优势的电子化交易方式, 不仅能够极大地满足交易量的增长需求, 而且能将时间延迟带来的损失降到最低, 使人们及时掌握股票市场行情。

然而国内的交易系统由于需要面对几千万的股民, 交易需求巨大, 而且股市行情瞬息万变, 对交易系统的性能提出了很高的要求。同时中国的交易制度却是集中式管理, 所有的股民交易信息都直接在交易所的系统中处理。而如果撮合能力低, 时间延迟严重, 对投资者可能会带来极大的损失。为此, 撮合系统作为交易系统的关键子系统, 要求的撮合处理能力很强, 单位撮合处理能力指标要远高于国际上其他交易所的标准。为此撮合系统必须要求高性能、高效率以及高可扩展性。近几年国内学者对交易系统的优化也进行了不少的研究, 提出了很多最新技术。徐晟提出为克服传统磁盘数据库在I/O方面的瓶颈, 国内外针对内存数据库的研究已有很大进展。在证券、期货交易市场上, 内存撮合技术已被应用于实践。向仕建等提出了如何用J2EE架构来构架网上股票交易系统。充分利用J2EE的高可用性、安全性、可靠性和可伸缩性, 并且能保证与现有系统的集成性和与其他系统的互操作性满足网上交易的要求。赵佳、孙涌利用组件技术和基于构件的软件开发方法, 实现了一套分布式多层架构的模拟证券交易系统SSES。宋毅红采用三层结构模式对传统的C/S结构证券交易系统进行了优化升级, 并加入了中间件来完成向后台转发指令或向前台返回操作结果的功能。徐晟在分析现有负载均衡技术和负载调度算法的基础上, 根据统一市场下撮合交易系统的特点, 提出了采用服务器集群系统的负载均衡策略, 优化系统性能。

本文从真实市场出发, 根据交易流程和交易机制, 构建出一个基于多层分布式体系的股票交易撮合系统, 为以后深入研究如何提高系统性能以及构建完善的人工市场奠定基础。

1 撮合交易机制

股票信息交易系统由四部分构成:券商信息系统、交易撮合系统、结算公司结算系统以及行情分析和信息发布系统。其中交易撮合系统是由投资者的委托指令驱动的、进行竞价撮合的电子化、自动化交易系统。

撮合交易就是用户只需将股票买卖报价信息输入各自的终端, 撮合系统根据撮合机制对用户订单进行有顺序的排列之后按照指定的撮合原则对订单进行有效地撮合交易, 最大限度满足用户的订单交易需求, 使交易成功。接下来, 当系统将某买入报价和某卖出报价撮合成交后, 交易双方才会得知各自的对手方姓甚名谁, 最后是进行结算。计算机撮合成交是根据公开喊价的原理设计而成的一种自动化交易方式, 它具有准确、连续、速度快、容量大等优点。目前, 金融期货交易所大都采用计算机撮合成交方式。

现行的撮合方式包括集合竞价和连续竞价两者并存, 撮合原则为“价格优先, 时间优先”。目前的撮合系统都是按照这个机制进行设计和运行。

订单有市价委托和限价委托之分, 他们两者的撮合原则也不同。

2 系统体系架构

根据撮合交易系统需求分析, 可以将撮合交易系统分为几个子系统, 通过将这些子系统进行有序地组织与协作, 从而实现整个撮合系统的功能。为此, 可以根据撮合系统的流程和功能将系统划分为以下几个子系统:

(1) 用户管理:主要维护用户的个人、账户信息和委托等;还包括系统管理员对用户信息进行维护和管理。

(2) 委托 (订单) 管理:主要是对用户的委托进行管理和维护, 包括委托的修改、撤消和查询操作。

(3) 系统交易规则库:管理员对市场交易规则进行维护、修改、增加、删除等操作, 使系统符合市场运行机制, 在市场环境中正常运作。

(4) 自动撮合:是整个系统的核心, 当用户下单后, 根据规则系统中制定的规则以及设定的算法, 对客户订单进行撮合交易。

图1为系统的整个数据流图, 框内为系统内部的数据流程。

3 撮合系统设计

撮合系统运行的关键就是交易主进程, 它主要可以分为以下几个主要模块:

(1) 规则库模块:封装股票交易过程中的各类市场机制、规则, 例如时间限制、涨跌幅幅度、印花税税率等。在以后的系统修改、扩展中可以十分方便地进行维护、修改。

(2) 验证模块:对于用户信息、账户、以及用户下的委托是否符合系统要求进行验证, 若发生错误则反馈给用户。

(3) 消息处理模块:委托下单、查询、撤消、修改等消息的接收和发送, 以及处理结果的发送和行情广播。

(4) 数据库操作模块:定义对数据库的操作方法。

(5) 业务执行模块:提供各类操作的实现方法, 由于在撮合实现过程中, 以及在各类业务操作 (委托查询、委托修改、撤消等) 都会涉及到对数据库的查询、添加、删除、修改等操作, 所以, 设计了一个DAO层, 隔离上次业务操作对于具体的SQL语句和数据库的依赖。

(6) 数据存储管理模块:主要存储管理委托队列、查询消息队列、发送消息队列等。

(7) 撮合算法模块:提供委托撮合的核心算法的实现。

图2展示了撮合模块的设计, 正如图中所示, 系统设计中将撮合、查询和行情发布分开用以充分提高撮合进程的速度。各部分的详细功能和设计如下:

(1) 委托接收队列:维护接收到的即将撮合的委托信息的集合, 提供添加和提取委托消息的接口。

(2) 查询接收队列:维护接收到的待处理的查询消息的集合, 提供添加和提取查询消息的接口。

(3) 消息发送队列:存储股票行情信息、交易结果等, 提供添加和提取行情消息的接口。

(4) 委托信息:也就是用户的委托报价请求信息集合, 提供添加、提取和删除委托请求、验证委托是否符合要求的接口、采用了Hash Set作为数据组织方式;运行一个定时线程, 来定时遍历请求集合, 将过期的委托 (国内的委托有效期为1日, 若当日为成交第二日需重新下单) 撤销, 若报价请求为0则堵塞挂起该线程。

(5) 股票信息:维护股票的信息集合, 提供添加和提取股票信息的接口。采用Hash Set作为数据组织形式, 每只股票都包含买和卖的两个撮合委托队列。

(6) 撮合队列:存储维护还未被撮合或未完全撮合的委托信息, 提供添加、提取和删除委托的接口。采用Hash Set作为数据组织形式。

(7) 客户信息:维护客户的账户信息、委托信息, 提供了添加、提取和删除信息接口。采用Hash Set作为数据组织形式。

(8) 交易记录:维护交易记录信息, 提供了添加和提取信息接口。

(9) 交易消息发送线程:从交易队列中获得交易消息进行发送。

(10) 委托接收、修改、撤销线程:把这三种委托处理信息发送到委托队列中。

(11) 查询接收线程:接收用户的查询信息发送到查询队列中。

(12) 行情发布线程:从行情信息中获得行情进行发送。

(13) 撮合线程:运用撮合算法对委托接收队列和撮合队列中的委托进行撮合, 并及时更新股票信息、客户信息、委托信息和行情信息, 产生交易记录存储到交易记录中。

(14) 查询处理线程:从查询队列中获得委托查询信息, 然后对其调用相应的数据库操作, 获得查询结果之后添加到交易消息发送队列中进行发送。

4 连续竞价撮合算法

根据上述的撮合原则可以分析出撮合订单的详细步骤存在着下列四种情况。

新进的是买入市价委托:如果卖出队列中有市价委托, 则对它们进行撮合;而如果卖队列中的市价委托全部撮合后, 该买入委托还有可交易数量, 则和卖出队列中的限价委托撮合。如果卖出队列中没有市价委托, 则直接和卖出队列中的限价委托进行撮合。如果卖出队列为空, 则只是将该买入委托插入买入队列。

新进的是买入限价委托:如果卖出队列中有市价委托, 则先对它们进行撮合;如果市价委托全部撮合完毕后该买入委托还存在可交易数量且价格大于等于卖出队列中的卖一最低价格, 则继续跟限价委托撮合。如果卖出队列中只有限价委托且该买入委托的价格大于等于卖出队列中卖一的最低价格, 则对它们进行撮合, 否则只能将该买入委托按照撮合原则插入到买入队列。如果卖出队列为空, 则直接将该买入委托按照撮合原则插入到买入队列。

新进的是卖出市价委托:如果买入队列有市价委托, 则进行撮合;如果撮合后该卖出队列还有未成交量, 则和买入队列中限价委托撮合。如果买入队列中仅有限价委托, 则和限价委托撮合。如果买入队列为空, 则将该卖委托插入到卖出队列中。

新进的是卖出限价委托:如果买入队列中有市价委托, 则先对它们进行撮合;如果市价委托全部撮合完毕后该卖出委托还存在可交易数量且价格小于等于买入队列中的买一最高价格, 则继续跟限价委托撮合。如果买入队列中只有限价委托且该卖出委托的价格小于等于买入队列中买一的最高价格, 则进行撮合, 否则只能将该卖出委托按照撮合原则插入到卖出队列。如果买入队列为空, 则直接将该卖出委托按照撮合原则插入到卖出队列。

图3表示出了委托的处理顺序以及所有可能出现的情况。将各种委托的处理过程用流程图表示出来, 则如图4所示, 以买入限价委托为例进行展示。

5 撮合价格确定与数据库优化

首先, 若进入系统的是市价委托, 其价格系统设定为根据最新委托价确定, 限价委托则按照委托价格执行。然后进行委托算法进行撮合, 查找合适的撮合订单。

接着确定交易成交价。若A订单进入系统, 为其进行撮合, 首先查找到符合撮合条件的B订单。如果B订单比A订单先进入系统, 则成交价为B订单价格, 否则为A订单价格。如果两个订单同时进入系统, 则成交价为买订单和卖订单价格的平均价。

之后决定交易数量。为了实现整个复杂的撮合过程, 将这个过程中各类之间的关系用UML图进行展示, 类关系图如图5所示。

当一个新委托进入系统之后, orderaddReq的execute函数就会首先调用规则类Rule的controlprice函数和checkaccount函数对委托的报价是否在有效委托范围内和股民的账户进行核对, 如果信息正确则接着调用order DAO的addorder将委托插入撮合队列并加入数据库, 该委托就会进入系统的撮合模块进行撮合, 也就是corematch类, 如果买单则调用dealbuyorder函数, 卖单则调用dealsoldorder函数, 处理过程中需要调用order类的settag, setvol等函数对委托状态进行修改, 同时将成交记录通过调用tradingrecord类存储交易记录, 将交易记录通过tradingrecord DAO类的addtradingrecord函数insert数据库。

撮合系统中对数据库的查询操作是很重要的一环, 查询过程的性能对是否能够拥有高效的撮合效率有很大的影响力。为此对数据库进行查询优化必不可少。每个查询都会有许多可供选择的执行策略和操作算法, 查询优化就是选择一个高效执行的查询处理策略。查询的执行开销主要包括磁盘存取块数 (I/O代价) , 处理机时间 (CPU代价) , 查询的内存开销。其中I/O代价是最主要的。为此可以充分利用索引方法, 减少表扫描的I/O代价, 尽量避免表搜索的发生。例如可以在order表中对agentid或是stockid建立索引提高查询效率。

利用好索引可以极大地提高数据库的检索性能, 但是不能在经常修改变动的列中建立索引, 这只会增加系统搜索代价。而且由于股票撮合系统每秒钟都需要处理大量的数据, 因此为了提高系统效率, 可以尽量建立单索引提高查找效率。

6 结束语

多层建筑电气照明系统设计 篇2

课程设计说明书

题目: 多层建筑电气照明系统设计

名:

院(系):

专业班级:

号:

指导教师:

成绩:

时间: 2014 年 6月 9日至

2014 年 6 月 13 日 《电气照明技术》课程设计任务书

一、设计题目

某多层住宅楼建筑电气照明设计

二、设计资料

1.基本概况

本工程是一栋高六层的住宅楼建筑,其建筑类别为二类建筑.结构形式为剪力墙结构。设计内容为电气照明系统。

(1)建筑为7层住宅楼,地上6层,地下1层。(2)地下室层高2.19米,地上层高均2.9米。(3)室内外高差1.2米,建筑高度为18.60米。给定资料:欧洲风情住宅小区施工图。2.参考资料

(1)民用建筑电气设计规范及条文解释

(2)2009全国民用建筑工程设计技术措施 电气(3)建筑电气设计手册

(4)国家标准电气制图电气图形符号应用示例图册(5)有关产品样本

(6)建筑电气施工验收规范(7)供配电系统设计规范(8)低压配电系统设计规范

三、设计成果

1、计算书

内容包括:照度计算、负荷计算、线缆及保护管的选择、配电箱的选择。

2、图纸

(1)设计说明、图例、图纸目录

(2)各层照明平面图(1:100)和各层插座平面图(1:100)(3)供电干线平面图(1:100)(4)供电干线系统图(1:100)(5)照明配电箱系统图

3、课程设计说明书

四、设计步骤

1. 熟悉资料、设计规范。对已给资料进行整理。根据建筑物的特点,确定供电等级:根据建筑平面图,拟定各户配电箱具体位置;根据外线情况确定进户总箱位置;并在平面图上绘出。

2. 绘制照明平面图(包括楼梯间设照明)

根据建筑平面图针对不同的使用功能,按照电气照明设计规范进行照度设计.以满足使用对照度及功能要求.(1)根据房间的用途确定灯具的种类、型号及安装高度。(2)查出各房间的照度标准,进行照度计算。(3)根据计算结果绘出照明平面布置图。(4)绘出线缆(单线图)。

3.根据房间的用途确定插座的种类、型号及安装高度

(5)绘出插座平面布置图。(6)绘出线缆(单线图)。4.绘出各层及总的供电系统图。5.负荷计算

(1)计算各支线负荷,选择支线线缆(型号、规格)及敷设方式并标注在平面图上,选择支线开关(型号、规格)并标注在系统图上。

(2)计算每个房间的负荷,选择每个房间的线缆(型号、规格)及敷设方式并标注在平面图上,选择开关(型号、规格)并标注在系统图上。

(3)计算每层的负荷,选择线缆(型号、规格)及敷设方式并标注在平面图上,选择开关(型号、规格)并标注在系统图上。

(4)计算整幢楼的负荷,选择进户线缆(型号、规格)及敷设方式并标注在供电干线平面图上,选择总开关(型号、规格)并标注在系统图上。6.整理图纸并写出设计说明、图例及图纸目录。

(1)说明书

内容包括:建筑用途、设计依据、负荷等级及电源进户方式、配线、配电箱及等电位联结。(2)图例

内容包括:符号、名称、规格型号、容量、安装高度、方式及场所。

(3)图纸目录

内容包括:图别、名称、8.整理计算书

内容包括:照度计算、负荷计算、线缆、开关 及配电箱的选择。9.设计注意

安全、可靠、经济实用、美观。

设计前应先学习有关的规范,严格按照规范设计。

选择导线截面时,留有余地。

保护电器选择要注意满足前后级间的选择性配合。

图纸尺寸及采用图形和文字符号应符合现行标准。

五、时间、进程及教学安排

设计时间:1周(5天)2014.6.9-6.13 1.熟悉规范、查资料——————1天 2.照度计算——————————0.5天 3.标准层照明平面图——————0.5天 4.标准层插座平面图——————0.5天 5.照明系统图—————————1天 6.设计说明、图例、图纸目录——0.5天 7.计算书整理 —————————0.5天 8.答辩—————————1天

六、指导教师:曹祥红 指导学生班级: 建筑电气与智能化11-1班

注意:本课题个人独立完成,相互之间杜绝抄袭,不能雷同。

郑州轻工业学院电气信息工程学院建筑电气与智能化系

二O一四年六月

摘 要

本设计是对某住宅楼电气照明进行全面设计,保证建筑物里的照明质量、用电经济和安全优质。必须符合《民用建筑电气设计的相关规范和标准》和《照明设计相关规范》。设计内容包括确定建筑的灯具以及光源选择,进行照度计算,各个楼层供电线路中的短路电流的计算,供配电系统的主接线方式、导线电缆的选择及校验。设计过程中需要绘图的部使用天正电气绘图,最后将整个设计过程整理、总结设计文档报告。

关键词:电气照明、照度计算、供配电系统、天正电气。摘 要...................................................................1 1.工程概况............................................................1 2.照明供配电系统.......................................................1

2.1 照明线路电压与负荷等级的划分......................................1 2.1.1 照明线路电压...................................................1 2.1.2负荷等级的划分.................................................1 2.2 照明负荷供电方式与照明配电系统........................................2

2.2.1照明负荷的供电方式..............................................2 2.2.2照明配电系统...................................................2

3.照明负荷计算及导线的选择...........................................2

3.1居住场所照明设计.....................................................2

3.1.1 电光源及灯具的选择.............................................2 3.1.2 确定布灯方案和照度计算..........................................2 照明负荷计算及导线选择.............................................4

4.1回路的划分..........................................................4 4.2插座的选择..........................................................5 4.3照明负荷计算........................................................5

总 结..................................................................8

1.工程概况

本工程是鹤壁市欧洲风情住宅小区13号住宅楼,建筑层数为7层,地上6层,地下1层,其建筑类别及耐火等级为主体二类二级建筑.总建筑面积为3770.83m2(其中商业建筑面积为:304.17m2,地下室建筑面积为208.16m2)建筑占地面积为716.17m2。建筑总高度为18.60米。地下室高2.19米,地上层高2.9米。室内外高差1.2米。结构形式为剪力墙结构。

本设计内容为电气照明系统设计,内容包括:室内照明、插座以及供配电系统。本工程室内配电部分以及具体灯具待装修后确定。

2.照明供配电系统

2.1 照明线路电压与负荷等级的划分

2.1.1 照明线路电压

供电电压必须符合标准的网络电压等级和光源的电压等级。我国的配电网络电压,在低压范围内的标准等级为500V、380V、220V、127V、110V、36V、24V、12V等。而一般照明用的白炽灯电压等级主要有220V、110V、36V、24V、12V等。

从安全方面考虑,照明的电源电压一般按下列原则选择。1)在正常环境中,一般照明光源的电源电压应采用220V。

2)在有触电危险的场所,例如地面潮湿或周围有许多易触及金属结构的房间,当灯的安装高度距离地面小于2.4m时,无防止触及措施的固定式或移动式照明的供电电压不宜超过36V。

3)由专用蓄电池供电的照明电压,可根据容量的大小和使用要求,分别采用220V、24V或12V等。

本工程为一般住宅楼,电由近处变电所引来,电压选用为220V。正常情况下,室内照明电压偏移为-5%,应急照明电压偏移不超过10%。

2.1.2负荷等级的划分

本工程为二类建筑,用电多为二级、三级负荷,照明负荷分级如下: 二级负荷:商铺照明、公共场所照明,应急照明。三级负荷:普通的室内照明及插座。2.2 照明负荷供电方式与照明配电系统

2.2.1照明负荷的供电方式

(1)二级负荷电源

当电力变压器或线路发生故障时不致中断供电,或中断后能迅速恢复。二级负荷的高压电源可以是一个电源,但应做到变压器和线路均有备份。

(2)三级负荷(一般)负荷电源

对照明无特殊要求者可由单电源供电,动力和照明负荷功率较大时应分开供电,功率较小时可合并供电。建筑物内有变电所时,照明与动力由低压屏以放射式供电;没有变电所的建筑物,动力和照明应在进户线处分开。

2.2.2照明配电系统

常用的配电方式有四种:放射式、树干式、混合式、链式。在实际应用中,各类建筑的配电方式是以上四种基本方式的综合应用。

在典型的住宅照明配电系统中,以每一楼梯间作为一个单元,进户线引楼的总配电箱,再由干线引至每一单元配电箱,各单元配电箱采用树干式(或放射式)向各层用户的分配电箱馈电。为了便于管理,住宅楼的总配电箱和单元配电箱一般装在楼梯公共过道的墙面上。分配电箱装设电度表,以便用户单独计算电费。

3.照明负荷计算及导线的选择

3.1居住场所照明设计

3.1.1 电光源及灯具的选择

走廊、楼道、管道井、卫生间采用带防尘罩的吸顶式荧光灯YH40RN,客厅由于会客、美观等要求选择荧光花吊灯、壁灯,每个灯40W(带镇流器损耗),其余全部采用YG2-2普通双管荧光灯。

3.1.2 确定布灯方案和照度计算

(1)选择计算系数

根据《建筑照明设计标准 GB50034-2013》,卧室平均照度为Eav=75lx,厨房Eav=100lx,客厅Eav=100lx,餐厅Eav=150lx,卫生间Eav=100lx,书房Eav=300lx。查资料取最低照度系数Z=1.3,换算成最低照度: 卧室 厨房 客厅 餐厅

Emin=Eav/Z=57.7lx Emin=Eav/Z=76.9lx Emin=Eav/Z=76.9lx Emin=Eav/Z=115.4lx Emin=Eav/Z=76.9lx 卫生间

洗手间

Emin=Eav/Z=76.9lx 书房 Emin=Eav/Z=230.8lx(2)计算高度

带蓄电池的应急照明灯距顶0.2m安装,疏散指示灯距地0.3m安装。该住宅楼层高2.9m,设吊管长度为0.3m,工作面高度为0.75m,则计算高度

卧室、餐厅、厨房、书房卫生间h=2.9-0.3-0.75=1.85m(3)计算面积 阳台(北):A=5.12m² 阳台(南):A=7.15m²,主卧:A=20.69m² 次卧:A=9.52m² 卫生间:A=3.13m² 洗手间:A=3.13m² 厨房:A=6.12m² 餐厅:A=8.4m² 客厅:A=33.9m² 书房:A=8.68m²

(4)照度计算(单位容量法)查相关建筑电气设计手册,得各房间的照明单位安装功率p0为:

卧室:p0=5.4w/错误!未找到引用源。2 卫生间:p0=8.3W/m² 洗手间:p0=8.3W/m²

厨房:p0=6.2W/m²错误!未找到引用源。餐厅:p0=12.5W/m² 客厅:p0=6.4w/m² 书房:p0=20W/m²(5)灯具数量

以B7户型为例

次卧:9.52×5.4÷40=1.2, 取一盏 卫生间:3.13×5.4÷40=0.65, 取一盏 洗手间:3.13×8.3÷40=0.65,取一盏 书房:8.68×20÷40÷4=1.1,取一盏 主卧:20.69×5.4÷40÷3=1.38,取一盏 客厅:33.9×6.4÷40÷(3+2)=1.1,取一盏 餐厅:7.28×12.5÷40÷2=1.13,取一盏 厨房:6.12×6.2÷40=0.95,取一盏 阳台1:5.12×4.2÷40=0.52,取一盏 阳台2:7.15×4.2÷40=0.75,取一盏 其他户型基本类似,再次不再赘述 七层七盏40W双端荧光灯 商铺

商铺1:89.45×19÷40÷2=21.2,取20盏 商铺2:58.98×19÷40÷2=14,取15盏 商铺3:28.6×12÷40÷2=4.3,取4盏 商铺4:45.6×19÷40÷2=10.8,取9盏 商铺5:45.6×19÷40÷2=10.8,取9盏

地下一层储藏室:根据规范其平均照度值要达到100Lx,单位面积安装功率7.2 w/错误!未找到引用源。,计算方法与上面户型计算方法一致。

地下室走廊灯每两米布置一盏,尽头灯具与墙距离一米,在走廊灯具中间设置带蓄电池的应急照明,在地下室出口处,设置安全出口指示牌。照明负荷计算及导线选择

4.1回路的划分

根据《住宅建筑电气设计规范》配电箱的供电回路应按下列规定配置: 1 每套住宅应设置不少于一个照明回路;2 装有空调的住宅应设置不少于一个空调插座回路;3 厨房应设置不少于一个电源插座回路;4 装有电热水器等设备的卫生间,应设置不少于一个电源插座回路;5 除厨房、卫生间外,其他功能房应设置至少一个电源、插座回路,每一回路插座数量不宜超过10个(组)。

所以每户将照明划分为一个回路,厨房插座一个回路,卫生间插座一个回路,空调插座每个插座设一个回路

4.2插座的选择

根据《住宅建筑电气设计规范JGJ242-2011》,洗衣机、分体式空调、电热水器及厨房的电源插座宜选用带开关控制的电源插座,未封闭阳台及洗衣机应选用防护等级为IP54型电源插座。住宅建筑所有电源插座底边距地1.8m及以下时,应选用带安全门的产品。对于装有淋浴或浴盆的卫生间,电热水器电源插座底边距地不宜低于2.3m,4.3照明负荷计算

在初步设计时,为计算用电量和规划用电方案,需估算照明负荷。估算公式为

PjPdA

式中

Pd是单位建筑面积负荷(W/m2)

A是被照建筑面积(m2)

WL1支路:共360W,损耗系数α=0.2;需用系数Kx=1;按将功率因数提高到0.9计算。则有

灯具设备容量:PW e1Pa(1)360(10.2)432计算负荷:Pj1KxPW e11432432计算电流:Ij1Pj1/(Upcos)432/(2200.9)2.18A

同理,WL2支路:共540W,损耗系数α=0.2;需用系数Kx=1;按将功率因数提高到0.9计算。则有

灯具设备容量:PW e2Pa(1)540(10.2)648计算负荷:Pj2KxPW e21648648计算电流:Ij2Pj2/(Upcos)648/(2200.9)3.27A WL3支路:插座4只。每只按100W计算,则有

W 设备容量:Pe3Pa4100400计算负荷:Pj3KxPW e31400400计算电流:Ij3Pj3/(Upcos)400/(2200.9)2.02A 同理:WL4支路:插座6只。每只按100W计算,则有

W 设备容量:Pe4Pa6100600计算负荷:Pj4KxPW e41600600计算电流:Ij4Pj4/(Upcos)600/(2200.9)3.03A WL5支路:空调插座4只。每只按300W计算,则有 设备容量:PW e5Pa43001200计算负荷:Pj5KxPW e5112001200计算电流:Ij5Pj5/(Upcos)1200/(2200.9)6.06A WL6支路:同支路3 WL7支路:插座5只。

W 设备容量:Pe7Pa5100500计算负荷:Pj7KxPW e71500500计算电流:Ij7Pj7/(Upcos)500/(2200.9)2.53A WL8支路:插座3只。

设备容量:PW e8Pa3100300计算负荷:Pj8KxPW e81300300计算电流:Ij8Pj8/(Upcos)300/(2200.9)1.52A

4.4 选择照明线路的导线和开关

1)支路导线的选择:采用3根单芯铜线穿硬塑料管。由于线路不长,故可按允许温升条件选择导线截面,一般也能满足机械强度和允许电压损失要求。计算电流按最大I=6.06A为依据,查《民用建筑电气设计手册》,选用3跟截面2.5mm²的BV型聚氯乙烯绝缘电线,在35⁰C时,In=20A>6.06A,满足要求。

2)配电箱进线的选择:采用BV型聚氯乙烯绝缘铜线穿PVC管暗敷。据负荷计算,计算电流Ij=22.63A,查《民用建筑电气设计手册》,选用5根截面6mm2的BV型聚氯乙烯绝缘电线,在35⁰C时,In=30A>22.63A,满足要求.3)开关的选择:查有关设计手册或产品目录,可选用TIB1-63/3PC25型,In=25A的自动开关。

总 结

课程设计是检验和锻炼学生实践能力的一项教学环节,在本次设计中我运用课本上所得知识以及对参考资料的学习,严格执行设计规范,在老师的耐心指导下完成了该设计,让我对所学知识有了更深刻的了解,对一个系统工程有了完整细致的了解和掌握。同时我认识到自己的不足,看问题不全面,在今后的学习中我会加倍努力,学好专业知识,并锻炼自己的动手能力,另外进行实践。

参考文献

[1]电气照明技术课程设计指导书 [2]电气照明技术课程设计任务书

[3]住宅建筑电气设计规范(JGJ242-2011)[4]欧洲风情住宅小区施工图

多层分布式系统 篇3

一、软件架构模式产生的背景

模式是指软件工程专家将软件开发过程中积累的能提高软件开发质量的规范化的方法, 即设计模式和框架。设计模式有利于对框架结构的理解, 有效实用的框架则往往使用了较多的设计模式, 所以只有先掌握设计模式, 才能对以后分析各种软件系统提供先机。

根据软件架构设计中处理问题的不同层面来讲, 架构模式分为了三种模式:架构模式、设计模式和代码模式。架构模式主要讲的是软件系统里的基本组织结构或纲要。其负责提供已经规定了的子系统, 并规划了责任和接下来要做的任务, 是三种模式中的最高层次策略。设计模式则是中等层次的结构策略, 是用于为细化软件系统的子系统。特点为规模较小, 且架构模式能够拆分成不同的模式使用。代码模式是指有规定的特征来完成软件的编程技巧, 代码模式的好坏只能对一些底层细节产生影响, 往往不会影响到组件或子系统的结构和框架等。

软件系统在不断的深入开发, 各种科学技术也在不断地创新, 规模越大, 软件的需求就越复杂, 涉及的知识点也就越多, 所以近年来软件工程专家逐渐将软件开发工作的重心从早期按个人意愿编写代码到按软件工程的理论生产大型应用系统上来。要想开发大型的、复杂的软件系统必不可少的就是提高软件开发技术能力。

二、软件架构模式的作用

软件开发过程中重要的一项工作就是系统构建, 在开发过程中, 开发人员可以利用模式和模式语言给出一条构建系统架构的框架这一途径。模式是支撑起整个架构的重要构件, 两者密不可分且息息相关。模式的本身就是从系统架构上衍生而来的, 两者有相同点也有不同点。它们都是处理一些抽象的概念之间的关系这是相同点。不同点则包括:模式与领域无关, 是单纯的解决抽象概念问题的, 而系统架构则是和领域息息相关, 给我们处理实际问题的。

三、多层分布式软件系统架构设计

软件系统架构是指软件系统的各种组成因素之间相互作用的抽象关系。系统分析、系统设计、需求获取、编码研发等阶段都是软件开发过程所需要经历的。如果将系统架构做好, 不仅可以提供可靠的平台供系统使用, 还可以加大软件的复用, 降低成本。

3.1 建立系统架构的步骤

软件设计将软件的全部开发过程可为架构需求、软件架构设计、软件文档化、检查复审、软件制作和实际操作6 个过程, 分别如下:

架构需求:是指将用户群体对系统各方面的需求进行采纳整理的过程。

软件架构设计:即选定一个合适的软件体系架构风格 (如B/S、N层、C/S等) 作为模型, 然后将通过重复反馈的过程来实现提取有效构件, 并与不同构件之前形成产生新的软件架构。

软件文档化:是指制作出提供用户观看的说明书。

检查复审:是指在开发过程中及时发现设计中的错误并修改。

软件制作:即开发人员对已经开发出来的系统构件进行合成、组装和测试。

实际操作:即随着用户需求的变化而变化, 根据用户新的需求进行相应的调整, 满足其所需要的要求。

上面的6 点就是架构设计里开发人员常用的步骤, 架构设计在不停的发展, 使用步骤也日渐走向成熟, 即使调整了体系结构, 基本步骤也能随之而发生相应的改变。

例如某学校需要建立信息管理系统, 方便学校进行数字化管理。学校认为信息管理系统需要建立数十个信息资源库、必须包含学校学生的档案和人事等多个环节部门、开通网上交纳学费、涵盖学校的普通教学管理以及业务等。首先选用B/S架构风格为模型建立软件架构及软件系统。建立校园共享资源库, 方便学校教学管理和学生生活学习。数据库需要加入电子文档、视频和多媒体课件等;建立业务收费系统, 方便学生网上交纳学费;建立数据同步操作系统, 针对学生、教职工的档案信息同步服务等和学生离校系统;还需要建立监控系统, 方便监测系统组件与维护等。其次设计好软件基本架构以及需要建设的子系统后, 将设计文档化, 与其他开发人员探讨交流, 发现其中不足与错误的地方并及时改正。然后利用软件开始制作系统并合成组装子系统。最后经过不停地测试与改正, 弥补之前的不足, 加入学校新的要求并完善系统的完整性和可靠性。

3.2 系统架构中的常用模式

系统架构里面常用的模式有层次化架构设计、嵌入式架构设计、企业集成架构设计等。

层次化架构设计模式:分层设计能够迅速的调整系统结构框架, 是几种模式中经常使用的设计方案。在该模式中MVC模式是分层设计模式中最为流行的。该模式通过将应用的做法重新整合进行再加工控制器控制器、模型、视图三块, 增加了系统的灵活性和可操作性;嵌入式架构设计:该模式拥有各种良好的性能指标, 是目前业界主流的嵌入式操作系统的专用, 其中有:ECOS、EPOC、Win CE等等;企业集成架构设计模式:该模式主要是企业间在使用, 其特点是迅速的通信和集各种服务为一体, 方便且便捷。

四、软件架构和模式的发展前景

4.1 软件架构方面

软件架构将来除了会越来越抽象、系统组件的构件会更加复杂外, 架构的未来发展可以分为以下两点:首先, 实现软件的灵活性和可拓展性是软件系统架构中企业需求的首选。软件开发组需要认真的设计架构, 并以其为核心, 生产出符合市场需求的不同的产品, 从而不被迅速发展的主流市场所淘汰。其次, 开发人员对架构样式的研究有利于新的架构的产生, 也有利于就得架构的完善。开发人员可以利用已有的标准架构中选择使用一个, 然后通过迭代的方法进行不同的实验, 很可能因为新的系统软件的出现从而出现新的架构, 并得到广泛的推广, 就像纳斯的基本算法一样。上面的两个预测, 如果在将来的软件发展中得以成为现实, 那么对软件架构的研究就不再仅仅只是一个热门的研究行业了。

4.2 模式方面

就我国目前的情况来看, 软件模式的研究还尚处于发展阶段, 对模式的研究也大多处于对模式和模式系统的简单层面上。未来的研究热点终究还是会落到模式的产生上来。模式的产生即模式的生成能力, 是一种模式语言, 也是模式语言的要素和规则。软件系统的复杂性和多样性使得模式难以迅速发展, 故拥有强大的模式产生能力是将来工作中的重中之重。

五、结束语

作为一个研究的领域, 软件架构是一个值得研究的课题。由于其产生的时间不久思想较新, 还不是很成熟。想要得到稳定的发展, 就需要深入研究相关的技术和思想, 毕竟实践才是检验真理的唯一标准。

参考文献

[1]尚荣艳, 彭长青, 方瑞明等.电机设计与仿真平台的软件安全设计[J].计算机应用与软件, 2012, 29 (7) :278-281.

[2]阮军, 杨春金.基于模式的多层分布式软件系统架构的设计[J].计算机工程, 2006, 14:57-59.

[3]杨秀杰, 段立娜.基于模式设计软件架构的研究[J].科技信息 (科学教研) , 2007, 32:75.

基于COM的分布式多层体系结构 篇4

一、两层C/S体系结构

20世纪90年代初, 出现了客户机/服务器 (C/S) 结构, 这种结构得到了广泛的运用, 而且相当成功。它的实质就是将数据存取和应用程序分离开来, 由数据服务器执行数据操作, 客户机来执行应用程序。用户在客户端通过网络同服务器打交道, 客户端包括用户界面和企业逻辑, 网络上传送的数据主要是客户端向服务器发出的请求以及服务器发送给客户端的响应结果和出错信息。这种C/S结构可以显著地减少局域网内的数据传输量、降低对数据控制的难度, 提供了多用户开发特性, 保障了用户投资。两层C/S应用软件的模型如图1所示。

两层C/S结构的缺点从以下几个方面体现出来:

1、网络连接与数据传送:

客户端与服务器直接进行连接, 要求连接持续可靠延时小, 并且许多数据由服务器发送回客户端进行分析处理, 数据流量大, 网络建设投入高;

2、系统要求:

数据仓库应用中的计算、操作和数据过滤通常很复杂也很耗时, 两层C/S结构中计算通常在客户端或数据库服务器上完成, 因此要求硬件投入高;

3、系统维护:

由于数据访问代码都在客户机上, 则每个客户机程序在每次增加新的数据源时都需要更新。更常见的是, 对应用代码的修改需要更新客户端, 使客户机上客户应用和计算逻辑的维护出现极大的问题;

4、系统可伸缩性:

在两层C/S结构中只能通过升级硬件的方法来提高系统处理能力。这会大大增加硬件资金投入和产生大量的闲置设备。

二、COM组件

COM组件由以Win 32动态连接库 (DLL) 或可执行文件 (EXE) 形式发布的可执行代码所组成。遵循COM规范编写出来的组件将能够满足对组件架构的所有要求。COM组件可以给应用程序、操作系统以及其他组件提供服务;自定义的COM组件可以在运行时刻同其他组件连接起来构成某个应用程序;COM组件可以动态的插入或卸出应用。

三、基于COM的三层分布式C/S结构

为了适应分布式系统的发展, 出现了三层体系结构, 它对应用程序的开发人员来说是作为一种实际可选的结构出现的。三层结构中的层被定义为以下服务:

1、用户表示层:

主要提供与用户友好的交互和相应的表示逻辑;

2、商业服务层:

通过提供事务处理和业务控制逻辑, 从而完成相应的业务处理;

3、数据管理与服务层:

提供应用系统所需的数据访问。

这些层 (尤其是商务服务层和数据服务层) 作为组件的形式出现。这些组件能把相应服务封装起来, 对需要它们的应用程序就像服务提供者一样。表现形式如图2所示。

基于组件的三层C/S结构的优点可以从以下儿方面体现出来:

1、网络连接与数据传送:

应用服务器与客户端可采用非持续性连接, 由于数据都在应用服务器上进行分析处理, 客户端只是起个显示结果的作用, 所传送数据量小, 对网络要求不高。

2、系统要求:

分析处理可以在专门的应用服务器上执行, 以便减轻数据库服务器的负荷;应用服务器能够平衡负载, 最大限度的利用资源和尽量减少服务器的负荷。

3、系统维护:

三层结构对客户端软件要求比较简单。在数据源或业务逻辑发生变化时, 只需对中间层组件进行适当的更新, 对客户端的变动很少或者无需变动, 大大减轻了维护费用。

4、系统可扩展性:

多层分布式系统 篇5

在现代信息技术飞速发展的背景下, 各类企业在应用服务、以及信息服务方面的需求呈现出了极为显著的发展趋势。常规意义上企业所采取的基于C/S结构的应用系统显然无法与这一发展趋势相适应。特别是对于电力以及煤炭企业而言, 在客户端数据以及数据处理任务不断增长的背景下, 服务器的性能会受到负载失衡因素的影响而大打折扣, 数据传输的大量性同时也会导致网络负载显著增加。为了妥善解决这一问题, 本文提出了一种建立在Jaguar CTS基础之上的企业多层分布式应用架构, 并对其展开了详细的分析与研究, 望引起重视。

1 基于Jaguar CTS的优势分析

Jaguar CTS是一种新型高性能基于组件的事务服务器装置。Jaguar CTS建立在常规C/S结构中间层事务服务器的基础之上, 通过发布基于组件的分布式应用程序的方式, 实现对企业相关业务、事务的高效处理, 同时兼顾可靠的管理与复用 (以上均通过功能模块的方式予以实现) 。对比常规意义上的事务服务器装置而言, Jaguar CTS下具备了多个方面的应用优势。具体而言, 可以概括为以下几个方面:

(1) Jaguar CTS能够对面向多个用户同时提供服务的互联网网络应用程序在创建方面、以及管理方面的步骤加以合理的减缓, 最终直接在客户端、或者是数据库服务器当中, 完成对组件的执行工作;

(2) Jaguar CTS能够优秀的完成对客户端会话的管理、对会话全程的安全保障、以及对下一层数据库的连接优化。除上述功能的实现以外, Jaguar CTS还能够面向各类型的组件, 提供良好的管理以及通信环境作为支持 (当中所涉及到的组件包括COM/DCOM/Java Bean等多种类型在内) ;

(3) 建立在多用户终端的运行环境下, 可以通过服务单位完成对程序结构的应用。所涉及到的服务单位均是通过一定的方式封装于相应组件当中的。因此, 在Jaguar CTS支持下, 可以直接通过中间件服务器装置, 实现对组件的管理、客户端与数据库服务器双向性的通信支持;

(4) 在CTS管理核心下, 所支持的Jaguar表现出了极为突出的平台无关性、以及兼容性特征。对于任意计算机所支持开发的应用程序, Jaguar均支持其在企业级服务器上进行发布, 并没有对应用程序开发者的专业知识做出过多的限制。

2 基于Jaguar CTS的应用特点分析

Jaguar CTS除具备上述多个方面的优势以外, 还在实际应用的过程当中, 表现出了一定的特点。这些特点需要在搭建应用架构的过程当中, 予以特别关注。具体而言, 涉及到以下几个方面的内容:首先, Jaguar CTS所对应的执行引擎具有良好的可拓展特性, 同时可独立于平台之外运行;其次, Jaguar CTS相对于当前技术条件下各类先进性的组件均适应性良好, 能够依托于Active X、以及C++等组件, 实现整个应用程序的开发工作;再次, 在Jaguar CTS所构建的多层分布式应用体系当中, 各个层次之间的连接极为高速且可靠;再次, 在Jaguar CTS运行全程当中, 对整个互联网网络通信的安全性进行了可靠支持。当中所涉及到的主要安全性措施包括:基于SLL的加密授权、以及访问控制列表策略;最后, 通过对命名服务的引入, 使得组件能够在剔除服务器地址影响的基础之上, 直接使用逻辑名称进行后续工作。

3 基于Jaguar CTS的企业多层分布式应用架构分析

在基于Jaguar CTS所构建的整个企业多层分布式应用结构当中, 客户端可以借助于对浏览器的应用, 面向Jaguar CTS发送相应的指令与请求 (包括对数据库的操作、对*.html文档的下载、对应用程序的传递等) 。在Jaguar CTS接受操作请求之后, 会自动与终端客户建立一个全新的会话支持。此项操作步骤当中, Jaguar CTS与常规基于*.http连接方式最大的差异就在于:基于Jaguar CTS所构建的会话能够始终支持服务器端口与终端客户端端口保持良好的连接关系。并且, 在Jaguar CTS对所接受操作请求进行处理的过程当中, 主要还可分为以下两种情况进行对待:

(1) 对于操作请求为对一般性互联网网页的浏览、对网页的调用、或者是对相关组件使用方法的查找。在这样一种情况下, Jaguar CTS可以自动返回相关的互联网网络、或者是通过对组件的调用, 实现对此类操作请求的处理 (需要注意的一点是:在此种处理方法下, 客户端需要通过对组件的执行, 实现建立在分布式架构下的商业逻辑行为) ;

(2) 对于操作请求针对数据库操作。在这样一种情况下, Jaguar CTS的处理相对复杂。首先, 需要通过各种专用数据库接口, 支持待操作的数据库与这部分专业数据库进行连接。进而, Jaguar CTS需要按照所接受的请求内容, 对后台数据库当中所覆盖的关键数据信息进行读取, 并加以合理的处理。在处理及读取数据库的动作完成后, 可以通过*.html的方式, 将处理的结果反馈至终端用户。

上述两类处理方法能够较好的满足终端客户的相关操作要求。当客户停止数据处理操作后, Jaguar CTS可以自动切断与客户端所构建的对话支持。但需要注意的一点是:此环节中断开的仅仅是与此客户的会话, 客户端与Jaguar CTS之间的连接仍然处于正常运行状态, 以此为后续客户请求的发送与满足提供支持。

摘要:文章建立在Jaguar CTS的基础之上, 详细研究了一种全新的企业多层分布式应用架构, 首先对Jaguar CTS实际应用中的主要优势、以及使用特性进行了简要分析。进而提出了在Jaguar CTS支持下, 整个企业多层分布式应用架构的作业流程, 对于信息服务需求庞大、数据处理复杂的电力企业而言, 此种分布式应用架构有着良好的发展潜力, 值得进一步关注与应用。

关键词:Jaguar CTS,多层分布式,应用架构,组件

参考文献

[1]刘丹, 程晓, 侯德林等.一种基于RMI的分布式架构设计[J].计算机应用与软件, 2007, 24 (9) :206-208.

[2]熊辉.多层分布式架构的市场营销系统的构建原则[J].湖北电力, 2004, 28 (3) :47-48.

[3]许江.企业应用集成的开发与实现[J].重庆工商大学学报 (自然科学版) , 2006, 23 (1) :73-75, 80.

多层分布式系统 篇6

软件体系结构设计在软件开发历程中一直起着关键性的作用,不仅会影响到系统设计和开发的进度,也会直接影响到系统的后续发展潜力,甚至会决定系统的成败。当今的计算机应用系统通常是体系结构和技术的结合,它们所具有的一个共同点是其分布式本质。现在的应用软件开发正在经历一次巨变,开发人员在很大程度上开始致力于构建具有三层架构甚至更复杂结构的N层架构。这种系统能将网络中各处的众多的应用程序进行集成,大大提升应用程序的价值,软件投放市场的时间大大缩短、开发人员的编程效率明显提高,最为根本的是开发出质量上乘的软件,从而给企业带来可观的效益。.NET框架是创建、部署和运行Web服务及其他应用程序的一个环境,它包括三个主要部分:CLR(Common Language Runtime,公共语言运行库)、.NET框架类库和ASP.NET。

1 分布式系统的基本概念

作为分布式系统,它与集中式系统的区别并没有严格定义,分布式系统的定义主要依据该类系统的特征来描述,即分布式系统就是由多个相互连接的处理资源组成的计算机系统,这些资源可以合作执行一个共同的任务,最少依赖于集中的程序、数据和硬件等资源。分布式系统所具有的主要特征有:资源共享(Resource Sharing)、开放性(Openness)、并发性(Concurrency)、容错性(Fault To1eranee)和透明性(Transparency)等。这些特性与分布式系统的关系,表现在并非一个称为分布式的系统会自然地具备这些特性,而是这些特性是评价一个系统是否真正的就是分布式系统的依据,也是设计分布式系统追求的目标,不论系统软件还是应用软件的设计人员都应该认真研究并支持这些特性,否则设计的系统就不是一个真正的分布式系统。

2 分布式系统多层架构

二十世纪九十年代以来,随着个人计算机和工作站的普及以及网络通信技术的发展,计算资源和信息资源被分布在网络的各个节点上,这使得计算模式由原来的主机系统向客户机/服务器模式发展,分布计算逐渐成为计算技术的主流。分布计算技术和面向对象技术衔接而形成的分布式对象技术已经发展成为分布异构环境下建立应用系统的核心技术。与此相对应的出现了基于多层结构的分布式应用系统。

到目前为止,分布式系统经历了四代发展:第一代称为H/T模式,即主机/终端模式,是单层系统;第二代称为C/S模式,即客户机/服务器模式,多数是双层系统,也有三层系统;第三代称为B/S模式,即浏览器/服务器模式,多数是三层系统,也有双层系统;第四代是Web Service模式,是三层或多层系统,这是以组件和Web Services为中心的典型分布式系统模式。

在B/S体系结构之中,纳入组件模型和分布式组件模型,把中间层划分为许多服务程序,将每个服务程序都视为独立的层,这样就形成了N层体系结构和Web分布式计算的概念。如图一所示,典型的N层结构就是基于Web的应用程序,既继承了B/S模式的特色,同时又增加了分布式组件带来的好处:

(1)负载平衡能力

分布式Web计算将复杂的业务处理分割成相互之间可交互调用和通信的若干业务功能部件或对象,并可将其分配到多个网络互连的应用服务器中实现负荷分担。Web服务器需要使用业务对象的服务时,可以依据目前每一台应用程序服务器的负荷以及是否可以提供服务的情况来动态决定连接到那一台应用程序服务器中,并具备对分布对象管理和实施调度的功能。

(2)容错能力

当某台应用服务器发生故障或失效时,分布式系统会自动把该服务器正在处理的业务请求移交给另外一台工作正常的服务器。

(3)异构性

网络分布的业务处理对象可访问不同的后台数据库,适合多种异构数据库环境。

3 分布式集成解决方案——.NET平台

Microsoft.NET是Microsoft XML Web Services(它是未来的计算)平台。XML Web services允许应用程序通过Internet进行通讯和共享数据,并将各种服务集成在一起,而不管所采用的是哪种操作系统、设备或编程语言。根据应用软件的实际设计需求,利用.NET平台提供的创建这类多层分布式应用程序基础组件,可以设计出一个平台及设备无关的软件开发模型,下面是此系统的分层设计模型:

(1)Web层

为客户端提供对应用程序的访问,基本上这一层扮演的就是单纯的用户界面的角色,它调用下面所说的业务外观层的功能,自己并没有很多实际的处理逻辑。

(2)业务外观层

为Web层提供处理逻辑界面,用作隔离层,它将用户界面与各种业务功能的实现隔离开来。除了低级系统和支持功能之外,对数据库服务器的所有调用都是通过此程序集进行的。

(3)业务规则层

包含各种业务规则和逻辑的实现。

(4)数据访问层

为业务规则层提供数据服务。

除了上述四个逻辑层外,还可在解决方案中加入“通用”(Common)层内的共享函数。“通用”层包含用于在各层间传递信息的数据集,还可包含应用程序配置和跟踪类。层和实体之间的关系如图二所示。

4 结束语

当前,多层结构因其明显的优越性,已成为构建企业级应用的一个标准。分布式体系结构的演进是近二十年来影响计算机技术发展的最活跃的因素之一,而.NET平台结构是应对以Web应用为代表的分布式计算技术飞速发展的现状而推出的一个基于N层体系结构模型的分布式解决方案。因此,对.NET多层分布式应用的研究具有重要的理论意义和实用价值。

参考文献

[1]周宏艳.基于.Net Framework的N层分布式处理的研究及应用[D].贵州大学,2006.

[2][美]Christian Nagel著.夏桅,金雪根译..NET企业服务框架——应用.NET企业服务开发分布式业务解决方案[M].北京:电子工业出版社,2006.

多层分布式系统 篇7

对于许多应用来讲, 由于数据在多维空间中存在多样性, 因此要想从基本或低层次概念上发现强关联规则可能是较为困难的, 而在过高抽象层次的概念上所挖掘出的强关联规则或许表达了一些普通的常识。但是对一个用户来讲是常识性知识, 可能对于另外一个用户就是新奇的知识。因此数据挖掘希望应该能够提供在多个不同层次挖掘相应关联规则知识的能力, 并能够较为容易对不同抽象空间的内容进行浏览与选择。

以邮政报刊发行为例:

一个典型的报刊目录的层次结构, 如图1所示。在这个层次树中描写了邮政报刊的一种分类方法, 该层次树描述了从低层次概念到高层次概念的相互关系。在概念层次树中, 利用高层次概念替换低层次概念可以是数据的泛化。如概念层次树共分为四层, 分别为层次0, 1, 2, 3;层次自顶而下从零开始。树的根节点标记为all。层次1包括:杂志, 报纸;层次2包括:技术, 生活, 娱乐等分类。层次3则包括:计算机应用, 计算机工程, 女友, 家庭生活, 新周刊, 娱乐前线等杂志报纸。概念层次结构可以由熟悉报刊数据组织结构的用户在报刊目录表中定义。[1]

2 挖掘多层次关联规则的方法

首先就给予支持度和信任度的挖掘方法作进一步讨论。一般而言, 利用自上而下的策略从最高层次向低层次方向进行挖掘时, 对频繁项集出现次数进行累积以便发现每一个层次的频繁项集指导无法获得新频繁项集为止。也就是在获得所有层次概念1的频繁项集后, 再挖掘层次2的频繁项集, 如此下去。对于每一个概念层次 (挖掘) , 可以利用任何发现频繁项集的算法, 如:Apriori或者FP-tree, FP-growth算法。

多层次挖掘关联规则算法的阙值取值分析:

1) 对所有层次均使用统一的最小支持阙值, 即对 (所有) 不同层次频繁项集的挖掘均使用相同的最小支持阙值, 例如图2所示整个挖掘均使用最小支持阙值5% (从“技术”到“计算机应用”) ;“计算机工程”不是频繁的, 但是“计算机技术”和“计算机应用”却是频繁的。

利用统一最小支持阙值, 可以简化搜索过程。由于用户只需要设置一个最小支持阙值, 因此整个挖掘方法变得比较简单。基于一个祖先节点是其子节点的超集, 可以采用一个优化技术, 即可避免搜索其祖先节点包含不满足最小支持阙值的项集。

但是利用统一的最小支持阙值也存在一些问题。由于低层次项不可能比相应高层次项出现的次数更多。如果最小支持阙值设置过高, 那就可能忽略了一些低层次中有意义的关联关系。若阙值设置过小, 则可能产生过多的高层次无意义的关联关系。因此产生了第二种算法。

2) 在低层次里用减少的阙值 (又称为递减支持阙值) 。所谓递减支持阙值, 每一个抽象层次均有相应的最小支持阙值。抽象层次越低, 相应的最小支持阙值就越小。例如图3

所示, 层次1和层次2的支持度分别为5%和3%这样:“计算机工程”、“计算机技术”和“计算机应用”都是频繁的。[2]

利用递减阐值挖掘多层次关联知识, 可以选择若干搜索策略:

1) 层与层独立。这是一个完全宽度搜索。没有利用任何频繁项集的有关知识来帮助进行项集的修剪。无论该节点的父节点是否为频繁的, 均要对每一个节点进行检查。

2) 利用单项进行跨层次过滤。当且仅当相应父节点在 (i-1) 层次是频繁的, 方才检查在i层次的单项。也就是说, 根据一个更普遍的来确定检查一个更具体的。

3) 利用k-项集进行跨层次过滤。当且仅当相应的父k-项集 (i-1) 层次是频繁的。方才检查在i层次的k-项集。

层与层独立策略由于它过于宽松而导致其会要检查无数低层次概念的频繁项, 并会发现许多没有太大意义的关联知识。例如:如果“生活类”杂志很少被订阅, 那么在去讨论其子节点“家庭生活”和“女友”杂志之间是否存在关联就没有任何意义。但是如果“计算机技术”经常被订阅, 那么检查其子节点“计算机应用”与“计算机工程”之间是否存在关联就很有必要。[3]

利用k-项集进行跨层次过滤策略, 容许挖掘系统仅仅检查频繁k-项集的子节点。由于通常并没有许多k-项集 (特别是当k>2时) 在进行合并后仍是频繁项集, 但是利用这种策略可能会过滤掉一些有价值的模式。

利用单项进行跨层次过滤策略, 就是上述两个极端的综合。但是这种方法或许会遗漏掉有关低层次项之间的关联只是。这些项在使用递减支持阙值时是频繁项集;即使它们的祖先结点不是频繁的。例如:若根据相应测光那次的最小支持阙值, 在概念层次i中的“新周刊”是频繁的, 但是根据i-1层次的最小支持阙值, 它的父结点“娱乐”却不是频繁的。这样会遗漏掉诸如“家庭生活→新周刊”这样的频繁关联队则。

利用单项进行跨层次过滤策略的一个改进版本, 称为受控利用单项进行跨层次过滤策略。它的具体做法是:设置一个阙值称为“层次通过阙值” (level passage threshold) , 它将容许相对频繁的项“传送”到较低层次。换句话说, 这种方法容许对那些不满足最小支持阙值项的后代进行检查, 只要它们满足“层次通过阙值”。每一个概念层次均有自己相应的“层次通过阙值”。给定一个层次, 它的“层次通过阙值”取值, 通常在本层次最小支持阙值和下一层最小支持阙值之间值。用户或许会在高概念层次降低“层次通过阙值”以使相对频繁的后代能够得到检查;而在低概念层次降低“层次通过阙值”, 也将会使所有项的后代均能得到检查。在图4中, 设置层次1的“层次通过阙值”为8%, 将使层次2结点“计算机应用”和“计算机工程”得到检查, 并发现是频繁的;即使它们的父结点“计算机技术”是非频繁的。建立这一方法, 将使得用户能够更加灵活的控制在多概念层次上的数据挖掘以减少无效关联规则的搜索与产生。

到现在为止, 我们讨论的频繁项集挖掘所涉及的项集, 都是一个项集中的所有项均属于同一个概念层次, 从而发现诸如“计算机技术幼生活” (计算机技术和生活都属于层次2) 得关联规则。若要发现跨概念层次的关联规则, 如:“计算机技术→家庭生活” (其中两个项分属于层次2和层次3) , 这样规则也称为跨层次关联规则 (cross-level association rules) 。

如果要挖掘层次i和层次j (i

3 基于概念层次树的多层次关联规则算法

基本思路:

输入:交易数据库TDB, 概念层次树tree, 最小支持度Smin和最小可信度Cmin。

输出:符合最小支持度Smin和最小可信度Cmin的多层次关联规则。

步骤:

1) 对概念层次树的每个节点进行编码;

2) ptree:=tree;/*ptree中存放上一次挖掘中能组成频繁规则的节点, 即组成选验估计的节点/

3) do;

4) 抽样 (按TID) , 另存为DB';

5) 在概念层次树ptree’中计算频繁项集;

6) 根据频繁项集, 测试ptree中的节点是否能组成频繁规则, 能组成的加入ptree';

7) 对ptree叶子节点x, 如出现在ptree'中, 扩展x的子节点x1, x2, …, xn, 测试x1, x2, …, xn能否组成频繁规则。如xi可以, 加入ptree', 并扩展xi, 循环向下;

8) ptree’中的节点及根节点组成新的ptree;

9) while DB'

10) 对ptree'中的节点, 计算后选规则集c_rules;

11) 检查c_rules中的规则的支持度和可信度, 删除支持度和可信度小于给定值的规则, 得规则集rules;

12) 净化规则集rules;删除冗余规则, 删除误导规则和无效规则;

13) 输出rules;

4 基于语义划分的多层次关联规则冗余处理

关联规则挖掘会产生大量的规则, 有时候甚至多达数十万条, 要想从如此巨大的规则集合中结合语义信息搜索冗余规则无疑需要很大的运算量, 为能更快速准确地对规则进行冗余处理, 文中提出前缀树扫描方法来减少冗余处理过程的运算复杂度, 提高处理结果的准确度。

方法主要分为3部分:1) 按照规则前项对规则进行预处理, 用规则前项中的项为节点构建前缀树。这步完成后, 把所有规则都压缩到规则前缀树集合中。2) 结合语义本体遍历每棵前缀树, 从前缀树根节点到的其它节点的所有路径都有可能是一条规则的前项, 从根节点开始遍历前缀树的每个节点同时查找本体, 找出这个节点的关联节点, 组成项目列表, 如果该项目列表能构成规则前项, 则把它加入冗余规则候选集合中。这步完成后每条规则都被加入相应的冗余规则候选集合, 3) 扫描每个冗余规则候选集合, 进行相应的冗余处理。

4.1 构建前缀树

Create Pre Tree (ruleset) 输入:规则集合ruleset输出:包含所有规则的前缀树集合prefix Trees get all premise from ruleset;Set>sorted Pre=sort And Group (premise) ;for pre Set in sorted Pre get the first item ITEMroot=build Tree (IT EM) ;current=root;for premise in pre Set if pemise not equal current if curr ent.childs not contain premise current.childs=E{pr emise};End if current=premise End if End for prefix Trees=∪{root};End for

使用规则前项中的项为节点构造规则前缀树。首先, 对每条规则的前项进行排序预处理, 把第一个项目相同的规则放在一个集合中;对于每个集合, 用集合中每条规则前项都含有的相同第一个项目作为前缀树的根节点, 依次扫描集合中的每条规则前项, 构造前缀树, 使得前缀树从根节点到树中其它节点的路径都对应着规则前项。这步需要遍历规则集合中所有的规则, 完成后所有的规则都被包含在前缀树集合中。

4.2 结合语义本体遍历前缀树

输入:前缀树节点pfnode, 本体ontology, 关联类型rel Type, weight关联权值, premises存储的前缀树从根节点到其他节点的路径集合, 表示已经发现的所有规则前项输出:冗余规则候选集合candreds

结合语义本体遍历规则前缀树, 这步是冗余处理的核心。输入前缀树根节点root, 本体ontology, 关联类型rel Type, 关联权值weight, 采用深度优先方式遍历。从前缀树根节点开始, 记录从根节点到其它节点路径上的所有节点, 如果这些节点能够成一条规则前项, 则建立冗余候选集合。同时遍历本体, 返回与当前节点有指定关联类型rel Type且权值大于weight的关联节点, 如果关联节点能够与当前节点对应的路径上除当前节点的所有节点构成规则前项, 则把这条规则加入到相应的冗余候选集合, 递归地遍历当前节点的每个子节点。这个过程总的时间代价大约为O (n2) 。如此, 遍历完前缀树后, 所有的规则都被加入到相应的冗余候选集合中。

4.3 对冗余规则候选集合进行冗余处理

对每个冗余候选集合进行处理。冗余候选集合中每条规则的前项都是具有前面定义的某一类关系的项集, 这时只需要考察候选中每条规则的后项。如果某两个候选的后项也符合这类关系, 那么这条规则被认为是这类型的冗余规则, 进行相应的处理。

最后用某手机订阅服务数据集作为实验数据进行试验。实验表明, 使用本文提出的冗余处理方法能有效消除多层关联规则冗余, 使得挖掘出的规则更加符合实际情况, 在实际应用更加具有指导意义;同时通过处理冗余和不处理冗余挖掘时间耗费的对比, 表明文中提出的方法在时间耗费上也是可以接受的。

5 结论

数据仓库和数据挖掘技术是当今信息技术领域研究和应用的热点技术。本文从数据挖掘的概念和特点入手, 以邮政报刊发行数据库为例, 讨论了数据挖掘技术的有关概念、挖掘的过程和方法, 并详细论述了关联规则挖掘算法的思想和实现。

参考文献

[1]张维明, 等.数据仓库原理与应用[M].北京:电子工业出版社, 2002.

[2]彭木根.数据仓库技术与实现[M].北京:电子工业出版社, 2002.

多层分布式系统 篇8

1. PACS对于医疗业务的重要意义

影像检查科室作为医疗机构必不可少的、重要的辅助诊断科室,在患者的整个医疗过程中起着重要的作用。通过影像中所包涵的原始的、丰富的生理病理信息,辅助医技科室医生对患者的病情做出准确的判断,更以图文并茂的方式辅助临床医生为患者提供科学合理的冶疗方案[1]。各医疗机构都对其进行了巨额的投入,引进了如320排螺旋CT、PET-CT、钼靶、核磁共振、DR、DSA等大型硬件设备和PACS系统软件。这些软、硬件系统投入使用后,其影像的质量、存储、管理、诊断的准确性、科研教学、工作效率、成本控制等方面都有显著的跃升。而患者则得到了方便快捷的医疗服务,缓解了当下突出的医患矛盾。并且通过区域医疗服务平台,患者在一定区域内的检查结果被各医疗机构共享并认同,节约了患者的大量时间、精力、费用,医疗效益、社会知名度显著提升。对于当前激烈竞争的医疗市场环境下的生存发展提供了强大的助力。

2 医疗业务对于PACS系统的高可靠性需求

医疗机构作为全天候对公众进行服务的公共服务机构,医生、护士在体力、精神上所承受的压力非常大,而患者因为自身的病痛对医疗机构的期望值也很高,平稳流畅的医疗过程一旦出现较长时间的停顿,在目前医患关系紧张的大趋势下,很容易出现矛盾激化,造成不好的社会影响。

因此,医疗机构不断完善各类应用服务系统,如HIS、PACS、LIS、电子病历、RHIS、OA等,通过网络构建出一个面向临床的综合信息服务平台,希望通过信息化的手段强化医疗过程的平稳流畅。

PACS系统作为面向临床的综合信息服务平台的一部分,必须经得起7*24小时环境的考验。在确保高可靠性的前提下,进一步完善高可用性、灵活性、安全性等各各方面,切实减轻医生、护士的工作量,节约就诊时间,真正起到辅助医疗业务的作用。

3 高可靠性模式设置策略

如何使PACS系统流畅平稳的运行又有很好的安全性,即拥有高可靠性工作状态,一直以来厂商、医疗机构都做了很多尝试。我院原PACS系统由两台服务器、使用Microsoft群集技术组成故障转移群集,构成一个单层模式(见图1)。

所有检查影像均直接上传至该群集,医技、临床医生浏览影像也全部由该群集提供服务,于此同时影像的备份也由该群集负责完成。这种单层模式实现相对简单,但不足之处也相对突出:

1、所有影像设备均向服务器群集上传影像,对网络、服务器造成巨大的压力。

2、所有影像浏览均由服务器群集提供,对服务器性能、网络吞吐量有较大的影像。

3、存在安全方面的问题。虽然群集的可靠性较高,但存储设备却存在单点故障隐患。

因此,我院进行PACS系统升级改造时,对原PACS系统架构存在的不足之处进行了充分的考虑。将原系统架构由单层模式升级为多层模式、集中式改进为分布式、存储方式采用SAN存储,并通过服务器前置的方式,缓解网络负载压力,提高影像传输、浏览、诊断的效率,提升了PACS系统的整体安全性,合理的分配了软、硬件设备资源。(见图2)

第一层、前置层。采用一台高配置、海量硬盘、千兆网络接口的高性能服务器,前置于影像科室所在网段内。这点对于如320排螺旋CT、DSA、PET-CT等大型设备进行影像传输时,效果非常明显。同时,前置服务器与影像设备同处一个网段内,降低了故障排查难度,减少了停机维护时间。海量的硬盘,使得前置服务器拥有一定的存储能力,可存储短时间内的影像数据。诊断工作站在调取近期(三个月)内的影像数据时,直接从前置服务器上获取。超过一定时间,再从主服务器上获取,即提高了浏览速度又减轻了主服务器的负载压力。

第二层、核心层。影像上传至前置服务器后,通过与HIS进行数据交互,完成患者影像数据与个人信息的匹配。而后传输至主服务器,并由主服务器承载大部分的影像浏览请求。通过前置服务器的预处理,减轻了主服务器进行数据处理的压力,提高了系统的稳定性。而采用SAN存储方式,使得存储的扩展性、灵活性有了很大的提高[2],对于PACS系统这种拥有巨大数据量的系统非常有意义。通过SAN存储,可使在线影像数据保持在一个很大的时间段内。而SAN存储方式通常使用光纤通道,使得数据传输速率极高,保证了影像浏览的快捷高效。同时,核心层在软、硬件上采用冗余方式,通过软件设置,使两台服务器始终保持同一状态,彻底解决了单点故障隐患。

第三层、离线存储层。由于核心层采用了SAN存储,存储能力大大增强。但由于影像数据的过于巨大,一些时间较长的数据,仍然需要进行离线存储,以减轻对存储、数据库的压力。但是当需要调阅该部分影像数据时,往往又要求能够快速的查找、定位、导入等。通过比较,我们认为磁带库在性能、速度、安全性各方面都比较符合要求。特别是磁带介质其本身具有的特性,对于需要长期保存的数据来说是非常可靠的。同时随着蓝光光盘、固态硬盘这些新技术新产品的出现,也给了我们更多的选择。

4 讨论

通过对以上两种模式的对比,我们可以发现,多层次、分布式的架构在可靠性、可用性、安全性、合理利用软、硬件资源等方面相比单层模式有了显著的改善。各项业务得到了合理的分配,提高了系统的可用性;层次式的结构明确了各层需完成的工作,提高了系统的稳定性;不同地理位置的分布增强了灾难的可抗性,提高了系统的安全性。同时,整个多层次、分布式的架构进一步增强了PACS系统的可靠性,有力的保障了医疗业务平稳、流畅的运作。

当然,多层次、分布式的架构相对单层模式其配置复杂,组成架构的服务器、存储数量多,投入较大,对维护人员也提出了更高的要求,需要对整个架构有一个清晰的了解,对系统的运行状态做到心中有数。对于核心层的主服务器冗余架构、系统状态同步,要经常进行检测,以免因软件故障而造成数据的不一致。

5 结束语

PACS系统作为重要的辅助医疗业务开展的系统,就必须适应医疗业务7*24小时的高可靠性要求。通过合理的软、硬件配置,我们可以将故障隐患消除。而多层次、分布式的架构对于传输、浏览、存储、管理、备份以及控制故障方面有显著的提高,基本满足医疗业务7*24小时的高可靠性要求。于此同时,我们还可以采用UNIX/LINUX作为服务器系统,利用其综合性能[3]突出这一特点,使用固态硬盘作为存储介质,使用IP SAN构建灵活性更高、适用性更好的网络存储,并通过管理人员认真细致的维护,充分发挥该架构的优势,为医疗业务平稳流畅的运行提供强力的支持。

摘要:PACS作为大型综合、数字化医院的重要组成部分,其可靠性、安全性一直倍受关注。本文通过探讨如何加强PACS的高可靠性,通过采用层次式的服务器布局、软硬件上的冗余设置,使得PACS更加高效、快捷的为医疗业务提供强有利的支持。

关键词:PACS,多层次,分布式,高可靠性

参考文献

[1]张琼瑶.构建以患者为中心的大型综合性医院医学影像信息平台[J].中国数字医学,2008,4:56-59.

[2]严亚周,闫新娟.大型网络存储系统的研究与设计[J].福建电脑,2009,3:2324.

上一篇:移动互联网与思想政治下一篇:VOD点播系统设计