title: Using SignalR with RabbitMQ
body: <p>I am writing an application where messages about data changes through an API are published over a RabbitMQ message bus. The messages are consumed by a SignalR hub and pushed to subscribed clients.</p>
  
  <p>Now I find messages in my Eventlog that start with:</p>
  
  <blockquote>
    <p>Exception: System.Threading.ThreadAbortException: Thread was being aborted.</p>
  </blockquote>
  
  <p>I found SO questions and answers like:
  <a href="https://stackoverflow.com/questions/7629986/why-am-i-getting-thread-was-being-aborted-in-asp-net">Why am i getting &quot;Thread was being aborted&quot; in asp.net?</a>
  and 
  <a href="https://stackoverflow.com/questions/37564/what-exactly-is-appdomain-recycling">What exactly is Appdomain recycling</a></p>
  
  <p>But that raises the question, if applications running in an AppDomain in the application pool is recycled upon inactivity, how can SignalR maintain a connection to subscribed clients?
  Why does it work for SignalR to run in an IIS app pool but not a RabbitMQ consumer?</p>