我正在开始开发一个简单的WCF应用程序,该应用程序从Oracle 11g DB表中查询数据并将消息入队到Websphere MQ 5.3中。我不确定设计这个应用程序的最佳方式。
当表发生更改时,我应该使用Oracle触发器通知WCF,还是应该使用WCF不断轮询DB表的更改?
另外,如何让我的WCF与Websphere MQ 5.3通信?我已经做了足够的研究,看到较新版本的Websphere MQ 7.1提供了一个用于WCF的自定义通道,但我不知道如何让WCF与5.3一起工作。
有人告诉我,我们不使用Microsoft Biztalk或Oracle数据库更改通知(ODBN)。我是否应该建议我的主管将Websphere MQ升级到7.1,同时也使用Biztalk或ODBN?
我刚开始使用WCF、Oracle和Websphere MQ,不确定应该朝哪个方向发展。任何链接或资源,以帮助我弄清楚这一点,将不胜感激。
发布于 2012-06-06 04:14:57
MQ 5.3已不再受支持。因此,不建议使用不受支持的产品。正如您所发现的,WCF支持在MQV5.3中不可用。WCF支持从MQ v7.0.1开始可用。因此,您必须至少升级到MQv7.0.1。
MQ WCF提供了一个自定义通道,可以使用该通道在MQ上托管web服务,并且客户端可以使用该自定义通道调用这些web服务。
如果您打算使用MQ只是将消息放入队列中,而不是开发任何web服务,那么最好考虑MQ类或XMS类。MQ类为使用MQ队列/主题进行消息传递提供了topic,而XMS提供了类似.NET的.NET。
我在其他方面的2点看法:在发生更改时从Oracle DB接收通知比轮询更好。在Oracle中,您可以注册一个回调或侦听器,以便在表发生更改时调用。
https://stackoverflow.com/questions/10901493
复制