title: Windows Server 2012 IIS8 Performance over Server 2003 IIS6, Sporadic slowness with WebService
body: <p>We had a few .NET 1.1 projects hosted on IIS6 in Server 2003. I was tasked with porting these projects to .NET 4.0 and host them on new Server 2012 VM's. Ported the code and getting it to run on Server 2012 IIS8 was no problem, but I started seeing performance problems throughout the day and they would over time resolve themselves. I have the APP Pools set to recycle every 4 hours, so I can't see it being an unhealthy app pool.</p>
  
  <p>The config of the app pool is as follows;</p>
  
  <p>Managed Pipeline Mode: Classic Mode
  Start Mode: Always Running
  Enable 32-bit Applications: True
  Memory Limit: 0 (Unlimited)</p>
  
  <p>The OS config is as follows;</p>
  
  <p>Server 2012
  Dedicated web server, no other services running.
  4 virtual processors
  10gb Ram
  10gb Virtual NIC</p>
  
  <p>For the webservice itself, its a simple webservice that hits a database and it also calls another webservice hosted on the same web server. I have the hostname listed in the host file, so its not doing a DNS lookup. The database is pretty much sitting idle. To give you an idea on how often this service is utilized, we had about 40k web service calls yesterday.</p>
  
  <p>I wrote a program that tested the web service every 10 seconds for a 24 hour period. The results were kind of interesting. The times listed below are when the response times were slow and the "slow" was always consistent. The slow response times were about 6000ms, or 6 seconds. The time in between the times listed below were 200ms, or .2 seconds. </p>
  
  <p>8:18AM - 8:36AM – 18 minutes</p>
  
  <p>9:02AM - 9:10AM – 8 minutes</p>
  
  <p>9:36AM - 9:47AM – 11 minutes</p>
  
  <p>10:17AM - 10:26AM – 9 minutes</p>
  
  <p>10:41AM - 10:56AM – 14 minutes</p>
  
  <p>11:16AM - 11:22AM – 6 minutes</p>
  
  <p>11:48AM - 11:56AM – 8 minutes</p>
  
  <p>12:23PM - 12:31PM – 8 minutes</p>
  
  <p>12:53PM - 1:00PM – 7 minutes</p>
  
  <p>1:07PM - 1:19PM – 12 minutes </p>
  
  <p>1:41PM - 1:47PM – 6 minutes</p>
  
  <p>2:03PM - 2:52PM – 49 minutes</p>
  
  <p>3:15PM - 3:34PM – 19 minutes</p>
  
  <p>3:57PM - 4:02PM – 6 minutes</p>
  
  <p>4:20PM - 4:26PM – 6 minutes </p>
  
  <p>4:35PM - 4:56PM – 21 minutes</p>
  
  <p>5:17PM - 5:25PM – 8 minutes</p>
  
  <p>6:02PM - 6:16PM – 14 minutes</p>
  
  <p>6:49PM - 7:00PM – 11 minutes</p>
  
  <p>7:41PM - 7:55PM – 14 minutes </p>
  
  <p>8:36PM - 8:51PM – 16 minutes </p>
  
  <p>9:31PM - 9:45PM -  14 minutes</p>
  
  <p>10:26PM - 10:41PM – 15 minutes</p>
  
  <p>11:25PM - 11:41PM – 16 minutes</p>
  
  <p>12:28AM - 12:45AM – 17 minutes</p>
  
  <p>1:34AM - 1:53AM – 19 minutes</p>
  
  <p>2:42AM - 3:02AM – 20 minutes</p>
  
  <p>3:49AM - 4:08AM – 19 minutes</p>
  
  <p>5:01AM - 5:15AM – 14 minutes</p>
  
  <p>6:03AM - 6:22AM – 19 minutes</p>
  
  <p>7:12AM - 7:28AM – 16 minutes</p>
  
  <p>8:07AM - 8:18AM – 11 minutes</p>
  
  <p>I can't find the culprit of the slow downs. We did not have any performance problems hosting on iis6, so it can't be the database.</p>
  
  <p>Thoughts? </p>