我正在开发一个通用日志记录对象,将用于我们所有将来的应用程序中。它会向MSMQ提交一个日志,然后将其异步发送到我们的服务器,该服务器将该消息记录到数据库。与WCF的异步通信
目前我正试图了解这将如何工作的体系结构。在客户端,一旦日志被提交给MSMQ,MSMQ会将日志提交给WCF发送给服务器(我假设将有另一个WCF端点接收消息)?基本上,我在问日志会经过的服务顺序是什么?我已经阅读了有关WCF的netMsmqBinding,这是我需要为了从MSMQ发送日志到WCF,然后我可以使用basicHttpBinding从WCF发送到服务器端的WCF?
喜欢的东西:
[客户端应用程序] - >日志 - > MSMQ - > WCF ----------> [服务器] WCF - > DB
我设置在客户端或服务器端的端点netMsmqBinding?我现在看到的方式是,我根本不需要服务器端的MSMQ。还是我离开?客户端如何知道服务器收到该消息,以便可以从客户端的MSMQ中删除该消息? – jnevelson 2011-03-23 16:40:35
@jonathan MSMQ服务是独立服务。从物理上讲,它可以在任何地方运行,与服务器,客户端在同一台PC上运行,也可以单独运行它必须有永久地址或主机名,就是这样。 MSMQ是单向通信,您无法检查该消息是从客户端传送的。实际上MSMQ是安全的消息传递,基础设施控制交付。 – Andrey 2011-03-23 16:43:02
@jonathan你在两边都设置了netMsmqBinding端点。 – Andrey 2011-03-23 16:44:24