IIS Server - Installing IIS 5.0 on Windows 2003 Server?

This is Interesting: Free IT Magazines  
Home > Archive > IIS Server > February 2004 > Installing IIS 5.0 on Windows 2003 Server?





You are viewing an archived Text-only version of the thread. To view this thread in it's original format and/or if you want to reply to this thread please [click here]

Author Installing IIS 5.0 on Windows 2003 Server?
=?Utf-8?B?TWFyaw==?=

2004-01-29, 2:35 pm

I have been experiencing significant perforamnce problems when moving an ASP application from NT/IIS 4.0 to Windows 2003 Server/IIS 6.0. The same pages accessing the same database load in 2 seconds under IIS 4/NT, and take 74 seconds when run on a new II
S 6/2003 box with 10 times faster CPU power.

I would like to know if I can, and if it would make any difference to:
1) Uninstall IIS 6.0 from WIndows 2003 server, Install IIS 5.0 on Windows 2003 Server and if things might be any better?

vs.

2) just go back to Windows 2000 Server with IIS 5.0 and install them on the new box

Any suggestions would be appreciated.
Ken Schaefer

2004-01-29, 4:34 pm

You can not install IIS5 on Windows 2003 Server.

Have you tried to work out *why* the application is performing so badly?

Cheers
Ken

"Mark" <anonymous@discussions.microsoft.com> wrote in message
news:116039A6-2EEB-40B4-837E-45D5FD4696CD@microsoft.com...
: I have been experiencing significant perforamnce problems when moving an
ASP application from NT/IIS 4.0 to Windows 2003 Server/IIS 6.0. The same
pages accessing the same database load in 2 seconds under IIS 4/NT, and take
74 seconds when run on a new IIS 6/2003 box with 10 times faster CPU power.
:
: I would like to know if I can, and if it would make any difference to:
: 1) Uninstall IIS 6.0 from WIndows 2003 server, Install IIS 5.0 on Windows
2003 Server and if things might be any better?
:
: vs.
:
: 2) just go back to Windows 2000 Server with IIS 5.0 and install them on
the new box
:
: Any suggestions would be appreciated.


Bernard

2004-01-29, 7:34 pm

and does switch IIS 6 to run in IIS5 isolation mode help ?

--
Regards,
Bernard Cheah
http://support.microsoft.com/
Please respond to newsgroups only ...



"Ken Schaefer" <kenREMOVE@THISadOpenStatic.com> ????
news:epzFpNv5DHA.2404@TK2MSFTNGP11.phx.gbl...
quote:

> You can not install IIS5 on Windows 2003 Server.
>
> Have you tried to work out *why* the application is performing so badly?
>
> Cheers
> Ken
>
> "Mark" <anonymous@discussions.microsoft.com> wrote in message
> news:116039A6-2EEB-40B4-837E-45D5FD4696CD@microsoft.com...
> : I have been experiencing significant perforamnce problems when moving an
> ASP application from NT/IIS 4.0 to Windows 2003 Server/IIS 6.0. The same
> pages accessing the same database load in 2 seconds under IIS 4/NT, and


take
quote:

> 74 seconds when run on a new IIS 6/2003 box with 10 times faster CPU


power.
quote:

> :
> : I would like to know if I can, and if it would make any difference to:
> : 1) Uninstall IIS 6.0 from WIndows 2003 server, Install IIS 5.0 on


Windows
quote:

> 2003 Server and if things might be any better?
> :
> : vs.
> :
> : 2) just go back to Windows 2000 Server with IIS 5.0 and install them on
> the new box
> :
> : Any suggestions would be appreciated.
>
>




David Wang [Msft]

2004-01-29, 11:34 pm

We are aware of a performance issue with IIS6 and scripts that were not
written to be performant (like ASP, PHP, Perl, etc).

It usually happens when you use a loop construct that is intensively
printing out something line-by-line. Basically, what's happening is that
the script is forcing IIS to directly write to the network every single line
in *individual* network packets instead of buffering them -- which ends up
wasting a huge amount of network bandwidth. A common cause of this is an
application looping through a database table and printing out hundreds of
rows of info.

Basically, the problems always been there within the script code; the
question is how the web server deals with it.

The following ASP will take a long time to complete, if ever, on IIS6. If
you sniff the network, you will see 100,000 packets with a single 'A' as the
data -- a 99.9% bandwidth waste.

<%
Response.Buffer = true

Response.Write ( "Start: " & Now & "<BR>" )

FOR i = 1 TO 100000
Response.Write( "A" )
Response.Flush()
NEXT

Response.Write ( "<BR>Stop: " & Now & "<BR>" )
%>


The interesting thing, of course, is that IIS6 is actually doing what you
told it to do -- literally -- instead of guessing what you are trying to do.
Prior IIS versions had buffering implemented at the Winsock layer, so it
wasn't actually doing what you were telling it to do...


--
//David
IIS
This posting is provided "AS IS" with no warranties, and confers no rights.
//
"Mark" <anonymous@discussions.microsoft.com> wrote in message
news:116039A6-2EEB-40B4-837E-45D5FD4696CD@microsoft.com...
I have been experiencing significant perforamnce problems when moving an ASP
application from NT/IIS 4.0 to Windows 2003 Server/IIS 6.0. The same pages
accessing the same database load in 2 seconds under IIS 4/NT, and take 74
seconds when run on a new IIS 6/2003 box with 10 times faster CPU power.

I would like to know if I can, and if it would make any difference to:
1) Uninstall IIS 6.0 from WIndows 2003 server, Install IIS 5.0 on Windows
2003 Server and if things might be any better?

vs.

2) just go back to Windows 2000 Server with IIS 5.0 and install them on the
new box

Any suggestions would be appreciated.


Jeff Cochran

2004-01-30, 12:35 am

To follow up on Bernard's suggestion, does IIS 5 Isolation Mode make a
difference here? (I assume not if it's at the Winsock layer).

And franklly, this is a reason *not* to upgrade to IIS6/Server 2003
unless you're ready to convert to ASP.NET. Though I assume you could
recode to loop and build the page as a string, then print that in it's
entirety.

In other words, modifying the OP's code to more like this:

<%
Response.Buffer = true

Response.Write ( "Start: " & Now & "<BR>" )

strOutput = ""
FOR i = 1 TO 100000
strOutput = strOutput + "A"
NEXT

Response.Write strOutput

Response.Write ( "<BR>Stop: " & Now & "<BR>" )
%>

And I for one have a lot of code that loops through record sets and
prints the rows individually...

Jeff


On Fri, 30 Jan 2004 05:04:08 -0800, "David Wang [Msft]"
<someone@online.microsoft.com> wrote:
quote:

>We are aware of a performance issue with IIS6 and scripts that were not
>written to be performant (like ASP, PHP, Perl, etc).
>
>It usually happens when you use a loop construct that is intensively
>printing out something line-by-line. Basically, what's happening is that
>the script is forcing IIS to directly write to the network every single line
>in *individual* network packets instead of buffering them -- which ends up
>wasting a huge amount of network bandwidth. A common cause of this is an
>application looping through a database table and printing out hundreds of
>rows of info.
>
>Basically, the problems always been there within the script code; the
>question is how the web server deals with it.
>
>The following ASP will take a long time to complete, if ever, on IIS6. If
>you sniff the network, you will see 100,000 packets with a single 'A' as the
>data -- a 99.9% bandwidth waste.
>
><%
>Response.Buffer = true
>
>Response.Write ( "Start: " & Now & "<BR>" )
>
>FOR i = 1 TO 100000
> Response.Write( "A" )
> Response.Flush()
>NEXT
>
>Response.Write ( "<BR>Stop: " & Now & "<BR>" )
>%>
>
>
>The interesting thing, of course, is that IIS6 is actually doing what you
>told it to do -- literally -- instead of guessing what you are trying to do.
>Prior IIS versions had buffering implemented at the Winsock layer, so it
>wasn't actually doing what you were telling it to do...



Tom Kaminski [MVP]

2004-01-30, 12:35 am

"David Wang [Msft]" <someone@online.microsoft.com> wrote in message
news:ufJTUGz5DHA.1968@TK2MSFTNGP11.phx.gbl...
quote:

> We are aware of a performance issue with IIS6 and scripts that were not
> written to be performant (like ASP, PHP, Perl, etc).
>
> It usually happens when you use a loop construct that is intensively
> printing out something line-by-line. Basically, what's happening is that
> the script is forcing IIS to directly write to the network every single


line
quote:

> in *individual* network packets instead of buffering them -- which ends up
> wasting a huge amount of network bandwidth. A common cause of this is an
> application looping through a database table and printing out hundreds of
> rows of info.
>
> Basically, the problems always been there within the script code; the
> question is how the web server deals with it.
>
> The following ASP will take a long time to complete, if ever, on IIS6. If
> you sniff the network, you will see 100,000 packets with a single 'A' as


the
quote:

> data -- a 99.9% bandwidth waste.
>
> <%
> Response.Buffer = true
>
> Response.Write ( "Start: " & Now & "<BR>" )
>
> FOR i = 1 TO 100000
> Response.Write( "A" )
> Response.Flush()
> NEXT
>
> Response.Write ( "<BR>Stop: " & Now & "<BR>" )
> %>
>
>
> The interesting thing, of course, is that IIS6 is actually doing what you
> told it to do -- literally -- instead of guessing what you are trying to


do.
quote:

> Prior IIS versions had buffering implemented at the Winsock layer, so it
> wasn't actually doing what you were telling it to do...



David - so the suggested "fix" then is to buffer the output?

--
Tom Kaminski IIS MVP
http://www.iistoolshed.com/ - tools, scripts, and utilities for running IIS
http://mvp.support.microsoft.com/
http://www.microsoft.com/windowsser...ty/centers/iis/



Ken Schaefer

2004-01-30, 12:35 am

Isn't Response.Buffering on by default though?

Cheers
Ken


"David Wang [Msft]" <someone@online.microsoft.com> wrote in message
news:ufJTUGz5DHA.1968@TK2MSFTNGP11.phx.gbl...
: We are aware of a performance issue with IIS6 and scripts that were not
: written to be performant (like ASP, PHP, Perl, etc).
:
: It usually happens when you use a loop construct that is intensively
: printing out something line-by-line. Basically, what's happening is that
: the script is forcing IIS to directly write to the network every single
line
: in *individual* network packets instead of buffering them -- which ends up
: wasting a huge amount of network bandwidth. A common cause of this is an
: application looping through a database table and printing out hundreds of
: rows of info.
:
: Basically, the problems always been there within the script code; the
: question is how the web server deals with it.
:
: The following ASP will take a long time to complete, if ever, on IIS6. If
: you sniff the network, you will see 100,000 packets with a single 'A' as
the
: data -- a 99.9% bandwidth waste.
:
: <%
: Response.Buffer = true
:
: Response.Write ( "Start: " & Now & "<BR>" )
:
: FOR i = 1 TO 100000
: Response.Write( "A" )
: Response.Flush()
: NEXT
:
: Response.Write ( "<BR>Stop: " & Now & "<BR>" )
: %>
:
:
: The interesting thing, of course, is that IIS6 is actually doing what you
: told it to do -- literally -- instead of guessing what you are trying to
do.
: Prior IIS versions had buffering implemented at the Winsock layer, so it
: wasn't actually doing what you were telling it to do...
:
:
: --
: //David
: IIS
: This posting is provided "AS IS" with no warranties, and confers no
rights.
: //
: "Mark" <anonymous@discussions.microsoft.com> wrote in message
: news:116039A6-2EEB-40B4-837E-45D5FD4696CD@microsoft.com...
: I have been experiencing significant perforamnce problems when moving an
ASP
: application from NT/IIS 4.0 to Windows 2003 Server/IIS 6.0. The same
pages
: accessing the same database load in 2 seconds under IIS 4/NT, and take 74
: seconds when run on a new IIS 6/2003 box with 10 times faster CPU power.
:
: I would like to know if I can, and if it would make any difference to:
: 1) Uninstall IIS 6.0 from WIndows 2003 server, Install IIS 5.0 on Windows
: 2003 Server and if things might be any better?
:
: vs.
:
: 2) just go back to Windows 2000 Server with IIS 5.0 and install them on
the
: new box
:
: Any suggestions would be appreciated.
:
:


=?Utf-8?B?TWFyaw==?=

2004-02-02, 12:34 am

Why is there a buffering setting even available in IIS 6.0?

From what you are saying it sounds like IIS 6.0 has no control over what is going on with buffering, and it does not matter whether you set buffering to true or false. Is that the case or did I miss something?


----- David Wang [Msft] wrote: -----

We are aware of a performance issue with IIS6 and scripts that were not
written to be performant (like ASP, PHP, Perl, etc).

It usually happens when you use a loop construct that is intensively
printing out something line-by-line. Basically, what's happening is that
the script is forcing IIS to directly write to the network every single line
in *individual* network packets instead of buffering them -- which ends up
wasting a huge amount of network bandwidth. A common cause of this is an
application looping through a database table and printing out hundreds of
rows of info.

Basically, the problems always been there within the script code; the
question is how the web server deals with it.

The following ASP will take a long time to complete, if ever, on IIS6. If
you sniff the network, you will see 100,000 packets with a single 'A' as the
data -- a 99.9% bandwidth waste.

<%
Response.Buffer = true

Response.Write ( "Start: " & Now & "<BR>" )

FOR i = 1 TO 100000
Response.Write( "A" )
Response.Flush()
NEXT

Response.Write ( "<BR>Stop: " & Now & "<BR>" )
%>


The interesting thing, of course, is that IIS6 is actually doing what you
told it to do -- literally -- instead of guessing what you are trying to do.
Prior IIS versions had buffering implemented at the Winsock layer, so it
wasn't actually doing what you were telling it to do...


--
//David
IIS
This posting is provided "AS IS" with no warranties, and confers no rights.
//
"Mark" <anonymous@discussions.microsoft.com> wrote in message
news:116039A6-2EEB-40B4-837E-45D5FD4696CD@microsoft.com...
I have been experiencing significant perforamnce problems when moving an ASP
application from NT/IIS 4.0 to Windows 2003 Server/IIS 6.0. The same pages
accessing the same database load in 2 seconds under IIS 4/NT, and take 74
seconds when run on a new IIS 6/2003 box with 10 times faster CPU power.

I would like to know if I can, and if it would make any difference to:
1) Uninstall IIS 6.0 from WIndows 2003 server, Install IIS 5.0 on Windows
2003 Server and if things might be any better?

vs.

2) just go back to Windows 2000 Server with IIS 5.0 and install them on the
new box

Any suggestions would be appreciated.



Sponsored Links






Free braindumps | Software forum | Database administration forum

Copyright 2003 - 2009 webservertalk.com