• Status: Solved
  • Priority: Medium
  • Security: Public
  • Views: 560
  • Last Modified:

Application on asp classic pages performance is slow after moving it to windows server 2003

Hi

We recently migrated from windows server 2000 IIS5 to windows server 2003 IIS6. We have an application developed on asp classic, that used to run well in windows server 2000, slowed down to 18 more seconds now on windows 2003. I'm having a lot of complaints and need to have the performance that I used to have with server 2000.

thanks iin advanced
0
jirivera51
Asked:
jirivera51
  • 3
  • 3
  • 3
  • +1
1 Solution
 
squillmanCommented:
There are tons of reasons that this could happen.  Can you give us some more information about your environment?

1) Was your migration to different server hardware or was it an upgrade to W2k3 / IIS6?  If it is to new hardware is the hardware comparable to the 2000 server?  What are the hardware specs of the new box?
2) What other web apps do you have running on the 2003 box?
3) What does your app do?  Does it interact with other network services (databases, directories, etc)?
4) IIS 5 had application isolation levels and IIS6 now uses application pools.  What was the isolation level in IIS5 for your app?  Was it running in a shared space with other apps?  Is it now running in its own app pool in IIS6 or is it in the default app pool?
0
 
jirivera51Author Commented:
We actually migrated to a different server and kept the old one for development. both of them are running now on server 2003 Std. Edition and are having the same problem with this asp application, so I dont think is a hardware issue.  Any how, the new server is a dell power edge 1950 quad core with 4 Gb of memory and the old one is an HP NetServer  pentium III 854 Mhz 1Gb of memory.

we have other .net apps running on this server but they are light apps not to heavy. they all run in the same default pool. the asp aplication in this matter is also a light app. it interacts with SQL database executing some stored procedures. all this stored procedures run very well, in miliseconds.

dont remember the isolation level in II5 since we already reformat that server but I sure it was the default one and it was running with the same aplications as now on the 2003 server.

hope this info is helpful for helping me with this issue. let me know if you need anything else.

thanks a lot

0
 
rdivilbissCommented:
Put your classic ASP application in its own application pool.
0
Introducing Cloud Class® training courses

Tech changes fast. You can learn faster. That’s why we’re bringing professional training courses to Experts Exchange. With a subscription, you can access all the Cloud Class® courses to expand your education, prep for certifications, and get top-notch instructions.

 
tim794Commented:
I'm having the same issue.  IIS v6.0 machine is many times faster than the IIS v5.1 machine but a key asp form loads in 5 seconds in IIS v5.1 and takes 1:42 in IIS v6.  I tried running it in its own pool but that doesn't help.
0
 
jirivera51Author Commented:
Thanks but I tried it and it did not work. the same result when the aplication is on another pool.
0
 
rdivilbissCommented:
Bother.... :(

Did you change drivers?
0
 
rdivilbissCommented:
From Q_22913541.html

I determined the problem. In the IIS config for application configuration Response Buffer was not enabled. I enabled it and the page are now flying. Found help in the following links.

http://msdn2.microsoft.com/en-us/library/ms526001.aspx

http://support.microsoft.com/default.aspx?scid=kb;en-us;840875  (at the bottom)
0
 
tim794Commented:
The Response Buffer was enabled so that isn't it either.   There are 2 loops in the code that repeatedly open and close recordsets.  An SQL Trace shows the Quries are fast on both servers but the duration of the Audit Logout Event is much longer on the slow one.   Not much is going on in the loops except building a string so I'm guessing the recordset open is where the difference is but I don't know why.
	rsBuilding.Open sqlStr, SourceConn
 
	iBldCount = rsBuilding.RecordCount
 
	if not rsBuilding.EOF then		'site has buildings
		
		SelectText = SelectText & "new Array(new Array(""   "", 0, new Array(new Array(""   "", 0))),"
		
		while not rsBuilding.EOF
			'Open Floor Recordset
			if Application("db_platform") <> "ORACLE" THEN
				sqlArray = "SELECT Building_ID, Floor_ID" & _
						" FROM ""Floors"" WHERE " & _
						"Building_ID = '" & rsBuilding("Building_ID") & "' ORDER BY Building_ID, Floor_ID"
			else
							sqlArray = "SELECT Building_ID, Floor_ID" & _
						" FROM FLOORS WHERE " & _
						"Building_ID = '" & rsBuilding("Building_ID") & "' ORDER BY Building_ID, Floor_ID"
			end if
 
			rsFloor.Open sqlArray, SourceConn	
 
		  
			if not rsFloor.EOF then  'This building has floors
		  
				if iBldCount > 1 and iRecCount=1 then
 
					SelectText = SelectText & "new Array(""" & Trim(rsBuilding("Building_ID")) & _
								""", """ & Trim(rsBuilding("Building_ID")) & """, new Array(new Array(""   "", 0)," & vbcrlf
 
				else
 
					SelectText = SelectText & "new Array(""" & Trim(rsBuilding("Building_ID")) & _
								""", """ & Trim(rsBuilding("Building_ID")) & """, new Array(new Array(""   "", 0)," & vbcrlf
 
				end if
				
				while not rsFloor.EOF
					SelectText = SelectText & " new Array(""" & Trim(rsFloor("Floor_ID")) & """, """ & Trim(rsFloor("Floor_ID")) & """)," & vbcrlf	
				  
					rsFloor.MoveNext	
				wend
				SelectText=left(SelectText,(len(SelectText) - 3))
				SelectText=SelectText & "))," & vbcrlf
			else  'This building has no floors
				SelectText = SelectText & "new Array(""" & Trim(rsBuilding("Building_ID")) & _
					         """, """ & Trim(rsBuilding("Building_ID")) & """, new Array(new Array(""   "", 0)))," & vbcrlf
			end if
			rsFloor.Close
			rsBuilding.MoveNext	  
		wend
		SelectText=left(SelectText,(len(SelectText) - 3))
		SelectText=SelectText & "),"
	else	'no buildings for this site
	   SelectText = SelectText & "new Array(new Array(""   "", 0, new Array(new Array(""   "", 0)))),"
	end if
 
	iRecCount = iRecCount + 1
 
	rsBuilding.Close

Open in new window

0
 
jirivera51Author Commented:
nop the buffer.response was set to true that did not work either. what else can I try?
0
 
tim794Commented:
For my similar issue, I was able to narrow it down to it being a major difference in the time it took to open a recordset even though the queries were actually faster on IIS v6 when tested in Query analyzer.
 However, I never solved the problem and had to work around it.  I'm still interested if anyone solves this because I'm sure I will run into it again.
0
Question has a verified solution.

Are you are experiencing a similar issue? Get a personalized answer when you ask a related question.

Have a better answer? Share it in a comment.

Join & Write a Comment

Featured Post

Free Tool: IP Lookup

Get more info about an IP address or domain name, such as organization, abuse contacts and geolocation.

One of a set of tools we are providing to everyone as a way of saying thank you for being a part of the community.

  • 3
  • 3
  • 3
  • +1
Tackle projects and never again get stuck behind a technical roadblock.
Join Now