title: Cross-server communication in load-balanced ASP.NET web application
body: <p>My ASP.NET application stores some expensive (to load) data in an application-accessible <code>static</code> field (using <code>System.Web.Caching.Cache</code> is inappropriate in this case).</p>
  
  <p>My application is also load-balanced across a couple of webservers with a central SQL Server on another machine.</p>
  
  <p>There are times when this cache will be invalidated. If the user submits some updated data on <code>Server01</code> then that application knows about it can will clear its local cache when it also submits the data to the database.</p>
  
  <p>However, how can <code>Server01</code> notify <code>Server02</code> of this change so <code>Server02</code>'s cache will be invalidated?</p>
  
  <p>I'm not aware of any built-in inter-server IPC in ASP.NET for web-farm communication, it seems that I would have to create a URI handler in the application (e.g. <code>http://mysite/InvalidateCache</code>) that would be called by the other server, but it seems a bit hackish. Is there a better way?</p>