关键字:.NET Enterprise Servers
消息队列技术使在不同时间运行的应用程序可以在临时离线的网络和系统上通讯。通过对COM的支持、对.NET Framework的支持、动态的基于目录服务(directory service)的结构和内置的集中系统管理,消息队列就集成到.NET Enterprise Server环境中了。
你可以在MSMQ的消息到达时或经过一定的时间间隔后,配置BizTalk Server对它们进行处理。队列中的消息一直保留在队列中,直到BizTalk对它们进行处理。这种配置就可以使应用程序在任何时候发送消息到BizTalk Server——即使是服务器不在线时。
更重要的是,你的SQL Server存储过程或触发器不需要等BizTalk来处理消息。当消息在队列中等候处理的时候,SQL Server也可以继续处理来自Commerce Server的更多的请求。而且,Commerce Server也可以继续处理来自多个客户的订单。这就使我们可以对用户的交互作出响应,而且可以在后台处理大量的实际订单。
供应商可能也需要用MSMQ和XML Web Services来接收订单。MSMQ消息可以通过XML Web services发送,这就使服务的调用者可以根据企业的计划和商业需求在消息列队等候处理时继续它的工作。
NDC设计了它自己的订单格式。虽然这种方法简化了它的内部系统,但它使与商业伙伴的通讯变得复杂了,因为每个公司都有独特的订单格式。NDC利用了BizTalk的功能,将数据从本地的内部商业格式转换成供应商的数据格式。BizTalk可以将任何XML文件转换成许多其它的文件格式。BizTalk Server可以通过多种方法发送和接收文件,包括电子邮件、FTP、HTTP、MSMQ和XML Web services。NDC配置BizTalk来从消息队列监控和读取它的内部订单消息。BizTalk将NDC的订单从内部格式转换成供应商可以理解的特殊的格式。BizTalk通过内部网络、穿越ISA Server将订单直接发送给供应商。
不同的供应商的系统可以有不同的转换需求。NDC配置BizTalk Server,运用适当的转换机制,将重新格式化的订单发送给每个供应商。有些NDC的供应商运行的是Microsoft的产品,而另外一些供应商运用的是其它公司的产品,这一事实并不是个问题,因为BizTalk Server可以将数据转换成XML、EDI或其它格式。例如,有个NDC的供应商运用的是一个非Microsoft的平台,在其它情况下,它就不能与一个Microsoft平台通讯。但现在,BizTalk Server对SOAP的支持和XML Web services就可以使NDC和这个供应商相互之间有效地通讯了。
实现安全的B2B交易
另一个NDC的供应商有这样一个Microsoft解决方案,它包括一个提供安全的ISA Server和一个接收订单的XML Web service,该订单放在了供应商系统的消息队列中。供应商的ISA Server允许一个由NDC签署的安全的订单进入网络,发送订单请求到XML Web service,然后进入消息队列。供应商的商业系统在那里对它进行适当的处理。
XML Web services可以为.NET Enterprise Servers或其它服务器之间的集成提供一个重要的集成点。一个Web service是一个程序层,它将它的接口公布给其它Internet应用程序。在本例中,供应商已经提供了一个XML Web service,使NDC可以给它发送一个订单。你可以把XML Web services看作是你的服务器提供的一个功能,这样其它程序就可以跨Internet调用那个功能。这些其它的程序都运用SOAP标准,因此它们可以在任何平台上运行,而且可以用任何编程语言编写。
位于供应商站点处的Web service处理请求,然后将订单发送到一个内部消息队列系统。供应商运用类似于NDC的处理过程来处理订单。然后供应商的服务器给NDC返回一个文件,表明供应商正在处理产品项目。这时候,NDC的BizTalk就将供应商的文件转换成NDC可以理解的格式。BizTalk包含商业逻辑,它将一个电子邮件消息直接发送到Exchange Server,让客户知道订单正在被处理中。BizTalk也将消息发送回Commerce Server,根据转换的文件做处理。Commerce Server记录供应商提供的交易和信息,然后以XML的格式发送SQL Server信息,表明订单状态应该变成“Being Processed”。
文章来源于领测软件测试网 https://www.ltesting.net/