Why would multiple SessionStateStoreProviders be instantiated?
<p>I'm working on a Redis <code>SessionStateStoreProvider</code> that <a href="https://github.com/TheCloudlessSky/Harbour.RedisSessionStateStore" rel="nofollow">can be found here</a>. In my <code>web.config</code>, I add the following in the <code>system.web</code> element.</p>

<pre><code>&lt;sessionState mode="Custom" customProvider="RedisSessionStateProvider"&gt;
  &lt;providers&gt;
    &lt;clear /&gt;
    &lt;add name="RedisSessionStateProvider" 
         type="Harbour.RedisSessionStateStore.RedisSessionStateStoreProvider" /&gt;
  &lt;/providers&gt;
&lt;/sessionState&gt;
</code></pre>

<p>However, when I start the application (an MVC3 application using the built in VS Web Server), <strong>two</strong> instances of the <code>RedisSessionStateProvider</code> are created. This can be verified by setting a break point on the constructor. I've tried cleaning the solution and rebuilding but it didn't fix it. When the application is closed down, both providers <em>are</em> disposed.</p>

<p>Something interesting to note is that the breakpoint icons are as follows:</p>

<p><img src="http://i.stack.imgur.com/FELpk.png" alt="breakpoints"></p>

<p>I can't seem to <a href="http://msdn.microsoft.com/en-us/library/5557y8b4.aspx" rel="nofollow">find any documentation</a> on the second icon.</p>

<p>Interestingly enough, when I switch to IIS Express, two instances are created. However, when I refresh the page after it's loaded, a <strong><em>third</em></strong> instances is created. What's even more weird is that after a few seconds it gets disposed!</p>

<p>I can't find any documentation supporting this behaviour. Does anyone have any info on this? Is this by design? Could this be because of multiple worker processes?</p>
