Mq 技术,最近刚开始找资料,有一些不清楚的。请大家知道的就说两句。问题:
01.有 Mq 是免费的吗?听说ibm的是收费的。02.MSMQ是windows的组件。用delphi开发程序可以使用MSMQ吗?
    可以使用的话需要怎样做?03.使用MQ技术必须使用独立的队列服务端吗?04.我想这样使用是否可行:我用delphi开发了一个程序,是做数据交换的。
   就是将数据库A中的数据通过程序转入到数据库B中,但是为了防止网络出现
   问题导致程序执行过程中 中断。想使用MQ技术,据说可以实现断点续传功能。
   如果可行:请给多些提示。不行的话。有什么其他方法可以代替。

解决方案 »

  1.   

    01.不知,只知MSMQ。
      02.可以,在Windows安装组件中,安装上MSMQ后,在D就可以导入该库文件,其实就是COM接口,导入的DLL好像是:MQOA.DLL,
      或者使用DLL函数接口,不过得自己写函数接口,你可以到MSDN查查:MQCreateQueue,MQCloseQueue函数,里面有详细例子,照着C里面的译过来。03. 不必,它跟着OS自带,类似OS提供的一个Service04. MSMQ就是为了作数据中传,类似一个中传功能(注意:服务一停[如重启]则里面的数据全部丢失),你说断点续传,可能是:它里面有recv函数,里面有个参数表示接收完成后是否删除不懂你说。
      

  2.   

    我的数据转换程序放在局域网中,windowsxp或2000系统的电脑上,数据库应该是linux上的oracle。据说好像要装server端和client端。windows 是server端吗? 那linux上可以安装、使用client端吗?
    我在windowXP系统中拿了个 萝卜花园和xp家庭版。试着安装msmq。没成功。请问是xp系统根本就不能装。
    还是必须使用完整的企业版安装光盘。谢谢。
      

  3.   

    我的是XP专业版,没装过家庭版,不清楚,我一直用XP,工作是用2003,应该不存在那问题。MSMQ不存在SERVER/CLIENT,装上MSMQ后,也就是说OS提供了一个COM接口,它可以访问LAN中的MSMQ服务,你可以将MSMQ就是一个TCP SERVER,只不过是自定了一套协议,具体如何访问LAN中的某台MQ队列消息,看看MSDN,一时也说不清(我也是偶尔成功试过,不能稳定,后来是写个简单的转发程序)。你的DB与MQ打交道,则是你的系统结构问题,MSMQ只是一个队列缓冲,跟那些无关。我不清楚了。
    MSMQ这东西,给我感觉还是不错的,速度很快,支持N多并发连接,量在一定的情况下。(要看机器配置,在我印象中,队列中超过20W条消息后,整个系统性能急速下降,注意点不要堆积消息)就这些了。