事务处理技术在城域点播系统中的研究与实现_第1页
事务处理技术在城域点播系统中的研究与实现_第2页
事务处理技术在城域点播系统中的研究与实现_第3页
事务处理技术在城域点播系统中的研究与实现_第4页
事务处理技术在城域点播系统中的研究与实现_第5页
已阅读5页,还剩2页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、事件处置惩罚技能在城域点播体系中的研究与实现摘要事件处置惩罚是维护数据库应用体系中数据同等性的紧张方法。本文阐发了几种在漫衍式体系中实现事件处置惩罚的常用要领。结合城域点播体系,利用AD事件处置惩罚技能提出了维护数据同等性的有用方案。关键词事件处置惩罚;VD;AD数字电视城域点播体系是可覆盖全城的扩展的漫衍式VD体系,为用户提供便利快捷、不变流通的高画质VD办事。该体系接纳多层漫衍式体系架构,背景数据库搭建在SQLServer2000之上,SQLServer2000是可缩放、高性能的干系型数据库办理体系,提供强盛的事件处置惩罚成效,对事件规复重要接纳基于事件日记机制来包管数据的完备性。由于体系

2、面向更详细的要求和应用,SQLServer2000提供的隐性事件操纵还不克不及完全满意体系的必要,并且还会造成应用步伐性能落落。因此,本文讨论了如安在该体系中实现更全面、更美满的显式事件操纵,从而实现数据的同等性和完备性,包管整个体系的宁静、有用的运行。事件是一种可以或许把数据库的修改作为团体提交给数据库的机制,从而包管数据库的同等性。事件作为单个逻辑事情单位实行的一系列操纵。必需具备四个属性:即原子性(Aty)、同等性(nsisteny)、断绝性(Islability)和长期性(Durability),称为AID属性。在DBLibrary应用步伐和TSQL足本中可以利用BeginTransa

3、tin,itTransatin等语句形貌事件,SQLServer2000可以按显式、主动提交或隐性形式启动事件,用IT或RLLBAK竣事事件。SQLserver应用步伐重要利用Transat-SQL语句或数据库API函数通过指定事件启动和竣事的时间来操纵事件。常用的数据库API有DB、LEDB和AD,差异的数据库拜候方法的服从和拜候方法计谋有差异,如AD不支持隐性事件,LEDB没有专门用来设置隐性事件形式的要领。2.1多层布局体系先容多层布局体系由于其宁静性、易扩展、易于实现漫衍式的数据处置惩罚方法等上风使其应用越来越普及。多层体系中典范的是三层布局体系(如图1),客户端卖力体系与用户的交互,

4、企业逻辑,数据拜候规矩,正当性校验等放在应用办事器层,客户步伐通过IAppServer接口与应用办事器通讯,通讯的协议可以是TP/IP,D,TS或RBAT。应用办事器通过数据集控件拜候数据库办事器。图1三层体系布局2.2多层布局中显式事件操纵几种要领这种处置惩罚方法重要利用客户端的TlientDataSet组件,在其andText属性中界说事件,通过IAppServer接口将界说的SQL语句传给应用步伐办事器中的数据集组件,数据集组件通过BDE拜候长途数据库办事器,并把含有事件处置惩罚的SQL语句传给数据库办事器,如许实现事件的操纵。在正常环境下,体系可有用的操纵事件,但假设客户端在开始一个事

5、件由于任何缘故原由停顿了客户端和数据库体系的通讯,由于此时数据表处于锁定状态,只有提交或回滚才气解锁,这一定影响到体系的正常运行。在数据库办事器背景,利用T-SQL语句界说存储历程或触发器来实现事件的操纵.当应用办事器通过调用组件的方法实行相应存储历程时,数据库将主动完成数据的修改,从而实现事件的操纵。但由于存储历程和数据集控件绑定,这将影响疏松耦合体系的维护和成效的扩展,并且为满意体系差异的成效需求,数据库办事器将界说更多的存储历程或触发器来实现体系成效,这对数据库办事器的移植和维护带来一定的困难。在中央层实现事件,由长途提交数据包给中央层由中央层来举行企业逻辑断定和事件处置惩罚,客户端只卖

6、力提交数据包,不举行企业逻辑断定,数据包提交后纵然网络停顿中央层也可继承举行企业逻辑断定和事件处置惩罚,由于中央层处置惩罚时间短,不会影响别的用户。并且,背景数据库自己并不实行太多的操纵,这将进步整个体系的实行服从。下面详细讨论如安在城域点播体系应用办事器中实现事件处置惩罚。3.1体系重要布局该体系软件开拓环境选用Delphi7.0+SQLServer2000,接纳/S三层布局形式,客户端和应用办事器之间接纳RBA协议,实如今差异开拓语言环境和异构体系之间数据交互,包管了整个体系运行的不变性、高效性和宁静性。软件体系详细分成以下部门(如图2):1)应用办事器端:呼唤办事中央allenter,是

7、整个体系操纵的中央,重要实现用户点播业务,启动点播办事器,与VD点播办事器、运营办理中央保持通讯,复兴客户的种种信息查询要求等等。在内部实现上,重要由23个动态毗连库DLL构成,此中ustanager.dll动态库重要实现对用户信息办理,底层数据库模块VDDateBase.dll重要卖力与数据库的毗连和数据的处置惩罚和实行。2)数据库办事器端:SQLserver2000;重要存储体系数据、节目数据、用户数据等。3)客户端:用户接入办事器ESNP/SServer、视频办事器群VDServers、用户办理模块Useranageent、运营办理模块SysRunanageent、体系办理模块Syste

8、anageent、节目办理模块ediaanageent、体系监控模块Systenitr等。体系布局图如下:图2城域点播体系布局图客户端和办事器端利用RBA协议举行通讯,当客户端发出哀求时,allenter通过调用内部相应动态毗连库DLL接口卖力相应客户端哀求,DLL中相应函数将需处置惩罚的数据信息写入TlientDataSet,然后allenter调用底层数据库操纵模块VdDataBase模块,实行参数TlientDataSet中的信息,实现数据库相应操纵。3.2事件操纵在体系中的实现图3VdDataBase类图VdDataBase类封装了体系对数据库操纵的成员变量(Fnnetd)和函数:1)

9、成员变量(Fnnetd):Tnnetd类封装数据库毗连组件,毗连方法(如图4)所示:图4数据库毗连组件TADnnetin类封装了AD毗连工具,通过设置nnetinstring属性毗连数据库办事器,要领BeginTrans,itTrans,RllbakTrans用来操纵事件,IslatinLevel属性用来设置事件断绝级别,断绝级别值有九个(此处设置为ilIslated),TADDataSet是AD数据集部件,TDatasetPrvider属于长途数据模块,提供了客户端拜候应用步伐的接口,它将发送给客户端应用步伐的数据信息打包,同时把客户端对数据举行的更新在数据库办事器上的实现。2)成员函数:T

10、VdDataBase类的成员函数封装了对数据库操纵的实现。此中事件操纵函数为:VdDataBase_Begintrans、VdDataBase_itTrans和VdDataBase_RllbakTrans:它们通过调用ADnnetin组件的事件处置惩罚要领的相应函数处置惩罚事件和得到事件嵌套级别。别的必要做的一项紧张事情是断定事件实行状态,借助于非常处置惩罚编程语句,当吸收非常时回滚事件,不然提交事件。下面以用户办理模块中的添加用户要领为例说明步伐的实现:数据库中与用户相干的表有:ustInftbl记载点播用户根本信息,ustBundledPhneNu记载用户绑定的 信息,ustAunttbl

11、记载用户的帐务信息,ustVdPaytbl记载用户点播用度。当客户端体系办理模块实行添加用户操纵时,办事器端调用相应动态库ustanager.dll的AddNe函数,将开户乐成的用户信息姓名、住址、绑定 号码、暗码等等添加到数据库体系中。AddNe函数详细实当代码为:funtinTusteranager_Inner.uster_AddNe(ValusterInf:TusterInfRerd):HResuvarVallientDataSet:TlientDataSet;BeginTry/天生数据库操纵工具,并毗连数据库VdDataBase:=TVdDataBase.reate;VallientD

12、ataSet:=TlientDataSet.reate(nil);VdDataBase_BeginTrans;/显式启动一个事件Try/参加信息到ustInftbl表中VallientDataSet.andText:=insertintustInftblvalues(ValusterInf.usterID,.)/断定数据库操纵是否乐成IfVdDataBase.exeSql(VallientDataSet)=0thenBegin/加信息到ustAunttblAddNeInfIntustAuntTbl(ValusterInf)/加信息到ustVdPaytblAddNeIDIntVdPayTbl(V

13、austerInf);/参加信息到ustBundledPhneNuAddBundledInf(ValusterInf);/全部实行乐成VdDataBase.itTrans;End;exeptne:Exeptindbegin/假设此中一个操纵失败VdDataBase.rllbakTrans;end;end;finally/开释工具VallientDataSet.Free;VdDataBase.destry;end;End;函数操纵开始时,开启事件,马上反面的全部操纵置于一个事件之中,假设事件内任何一个操纵在实行历程中出现错误,整个事件将回滚,事件回到最初状态。当事件内全部对数据库的修改和操纵都乐成时,整个事件才提交,从而包管事件AID属性。以上对事件处置惩罚技能在漫衍式体系中实现的几种方案举行了阐发和比力,并结合城域点播体系侧重阐

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论