RabbitMQ WCF 如何容忍服务失败?

How does RabbitMQ WCF tolerate service failures?

假设我有一个 WCF 服务,我 bind/expose 使用 RabbitMQ WCF interface/binding。如果我有客户端通过 RabbitMQ WCF 接口调用我的服务,那么假设服务出现故障会发生什么情况?

  1. RabbitMQ 是否只存储对该服务的请求,一旦该服务启动,它会将这些请求传递给该服务?
  2. 客户会收到 "service not found" 消息还是某种 "service is disconnected" 消息?
  3. WCF 连接是如何在 RabbitMQ 中实现的? RabbitMQ 是否在 WCF 服务请求所在的位置保留一个队列,如果服务出现故障,那么队列会一直增长,直到服务重新联机为止?

通过对 WCF API 的一些试验,客户端和服务器似乎并不紧密耦合。我试图在没有服务器出现的情况下启动客户端的多个实例并且没有错误。当我启动服务器时,它会看到来自客户端的消息并响应每个客户端。所以看起来客户端将消息发布到队列中,当服务器端唤醒时它从队列中获取消息。