Delphi中MIDAS是什么(MIDAS之一)

[入库:2005年8月18日] [更新:2007年3月24日]

本文简介:选择自 shuaihj 的 blog

   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方法来把前台变动的数据写回到后台数据库中.

本文关键:Delphi中MIDAS是什么(MIDAS之一)
  相关方案
Google
 

本站最佳浏览方式为 分辨率 1024x768 IE 6.0(或更高版本的 IE浏览器)

go top