Delphi中MIDAS是什么(MIDAS之一)

简介:    Delphi中MIDAS到底是什么呢?和他相关组件是什么呢?   MIDAS(Multitiered Distributed Application Services)多层分布式应用服务   Delphi所提出的Multi-Tier结构是把原来...

   Delphi中MIDAS到底是什么呢?和他相关组件是什么呢?   MIDAS(Multitiered Distributed Application Services)多层分布式应用服务
   Delphi所提出的Multi-Tier结构是把原来的Two-Tier前台应用程序内的dbExpress,ADO,BDE,SQL Link,DataMoule,拿到另外一台NT服务器(就是所谓的应用程序服务器),而前台程序只剩下一

   个可执行文件及MIDAS.DLL,而移到NT服务器上的DataMoule则变成一个COM程序(Remote DataModule).
   注:前台一定要把MIDAS.DLL发布到系统目录下.
   (1)前台程序会通过调用应用程序服务器提供的方法(接口)提出一个请求
      应用程序服务器会响应这个请求,传送一个相应的SQL命令到后台数据库,而后台数据库会把执行SQL命令产生的DataSet返回给应用程序服务器.
      注:Delphi提供了Type Library来帮助应用程序服务器定义COM方法(接口)
   (2)NT服务器上的COM程序是通过中间软件(dbExpress,ADO,BDE,SQL Link)传送SQL到后台数据库.
      当应用程序服务器要把读取到的DataSet传送给前台时,就必须利用DCOM的机制来进行.Delphi提供的TDataSetProvider组件就会把读取到的DataSet压缩并且分割成一段一段的数据包,通

      过DCOM或TCP/IP传给前台.
      注:Delphi提供了RemoteDataModule向导来帮你产生COM程序的结构.
         由于Delphi的程序具有传送DataSet的特殊机制,所以Delphi也实现了一个接口叫做IProvider(即TDataSetProvider),来帮助应用程序服务器上的COM程序发送DataSet数据.
   (3)前台程序与NT服务器上的COM程序是通过DCOM的机制互相沟通
      前台的应用程序是通过MIDAS.DLL和应用程序服务器相互沟通,前台的MIDAS.DLL会把接收到的应用程序服务器发过来的数据包再还原成DataSet,丢给前台程序中的TClientDataSet组件.
      注:前台程序必须提供相应的TClientData组件来和应用程序服务器上的每个IProvider(即TDataSetProvider)对应.用户修改前台数据时,修改的只是Cache(缓存)在前台的Dataset,最后 

       要通过TClientData.ApplyUpdate方法来把前台变动的数据写回到后台数据库中.

相关文章
|
3月前
|
移动开发 API 开发者
windows开发技术 mfc浅谈
windows开发技术 mfc浅谈
|
存储
TIA WinCC Professional入门经典(1)组态第一个WinCC项目
《TIA WinCC Professional 入门经典》一共30篇,如果我们的文章您每篇都转发的话,会在结束时获赠完整视频,欢迎关注,欢迎转发!
2520 0
|
JavaScript 前端开发
delphi中Webbrowser疑难问题集锦<转>
1.获得网页中变量值      htm中 var currID=123      程序中可以这么调用 id := Form1.WebBrowser1.OleObject.Document.script.
827 0
|
关系型数据库 BI 数据库
我常用的delphi 第三方控件
有网友问我常用的控件及功能。我先大概整理一下,以后会在文章里面碰到时再仔细介绍。       Devexpress VCL 这个基本上覆盖了系统界面及数据库展示的方方面面,是做桌面系统必备的一套控件,目前的版本是2011.2.3, 支持win32 及win64。
1186 0
|
SQL 数据库 数据安全/隐私保护
Delphi2010 DataSnap入门 (二)
我们来做个简单的数据库连接测试. 在上个学习的基础上,我们打开Server的ServerMethodUnit1模块,在设计界面放上三个控件: SQLConnection1: TSQLConnection;SQLDataSet1: TSQLDataSe...
1416 0
Delphi2010 DataSnap入门 (一)
DataSnap到了Delphi2010有了很大的变化,已经可以完全抛弃DCOM之类的东西了,在以前版本中建立一个DataSnap,需要使用DCOMConnection或者SockConnection来连接到服务器,而在Delphi2010中提供了一个新的连接组件:TDSProviderConnection,可以更方便地来连接服务器.
1098 0
|
BI 语音技术 数据库
090_《Delphi6控件实用程序设计100例》
《Delphi6控件实用程序设计100例》 Delphi 教程 系列书籍 (090) 《Delphi6控件实用程序设计100例》 网友(邦)整理 EMail: shuaihj@163.
1539 0