473,396 Members | 1,785 Online
Bytes | Software Development & Data Engineering Community
Post Job

Home Posts Topics Members FAQ

Join Bytes to post your question to a community of 473,396 software developers and data experts.

Ecommerce Server Requires Daily Reboot

I have an Ecommerce application that uses mostly ASP and a bit of ASP.NET.
Monitoring the servers memory via SNMP every 5 minutes would indicate that
there is a memory leak somewhere within the application. Of course, the
vendor says its a "Microsoft IIS" issue and tells us to reboot the server
each day or kill the worker process for IIS.

We're currently rebooting our server at 4 AM each night.

This is a really lame idea, in my opinion, because we always have at least
50 users on the site during the night and over 200 concurrently during the
day.

Does anyone know a good way to fix this problem?

We're using W2K Advanced and have 4GB of RAM and SQL 2000.

All service packs are up to date.

Mar 1 '06 #1
3 1524
I've worked with similar setups with even heavier
loads and they didn't need daily rebooting. So it's
not IIS per se. Check the event log. Are you using
session objects, com components? I always avoided
that session object in classic ASP like the plague.
How is the CPU load? Is IIS application protection set
to Medium pooled?

http://support.microsoft.com/default...b;en-us;811140
"dm1608" <dm****@spam.net> wrote in message
news:OA**************@TK2MSFTNGP14.phx.gbl...
I have an Ecommerce application that uses mostly ASP and a bit of ASP.NET.
Monitoring the servers memory via SNMP every 5 minutes would indicate that
there is a memory leak somewhere within the application. Of course, the
vendor says its a "Microsoft IIS" issue and tells us to reboot the server
each day or kill the worker process for IIS.

We're currently rebooting our server at 4 AM each night.

This is a really lame idea, in my opinion, because we always have at least
50 users on the site during the night and over 200 concurrently during the
day.

Does anyone know a good way to fix this problem?

We're using W2K Advanced and have 4GB of RAM and SQL 2000.

All service packs are up to date.

Mar 1 '06 #2
I'll check those options.

In my opinion, the application is just poorily designed.

In order for customer to access webpage login, they have to know the virtual
directory and 3-4 querystring parameters. This usually isn't a problem when
it is bookmarked from another site. Virtually impossible for someone to try
and remember.

One of the querystring is a customer id #. We can host multiple customer
web pages that are unique in style/theme on our server. The issue is,
each web page has to query SQL Server to pull out "Theme" information...
such as button path, image, HTML attributes for header, footer, body, etc.
When there is a high load on the server, SQL Server is really busy doing
reads for every page view. Very lame.

What we have experienced as well, with the memory leak issue, as memory
resources run out... some customes actually see other customers' "Theme"
even though they logged on with the correct querystring.

The vendors answer is to reboot or create a job to kill the workerprocess
each day or when its memory reaches a particular threshold.
"Raymond" <un*******@nothee.net> wrote in message
news:NmcNf.31498$%v4.26609@trnddc03...
I've worked with similar setups with even heavier
loads and they didn't need daily rebooting. So it's
not IIS per se. Check the event log. Are you using
session objects, com components? I always avoided
that session object in classic ASP like the plague.
How is the CPU load? Is IIS application protection set
to Medium pooled?

http://support.microsoft.com/default...b;en-us;811140
"dm1608" <dm****@spam.net> wrote in message
news:OA**************@TK2MSFTNGP14.phx.gbl...
I have an Ecommerce application that uses mostly ASP and a bit of
ASP.NET.
Monitoring the servers memory via SNMP every 5 minutes would indicate
that
there is a memory leak somewhere within the application. Of course, the
vendor says its a "Microsoft IIS" issue and tells us to reboot the server
each day or kill the worker process for IIS.

We're currently rebooting our server at 4 AM each night.

This is a really lame idea, in my opinion, because we always have at
least
50 users on the site during the night and over 200 concurrently during
the
day.

Does anyone know a good way to fix this problem?

We're using W2K Advanced and have 4GB of RAM and SQL 2000.

All service packs are up to date.


Mar 1 '06 #3
Sounds like you need a good ASP developer to go through
the code, correct logic and optimize. There are a whole
bunch of things that can be done to make ASP apps faster,
everything from reducing delimiter transitions, to custom
SQL data caching schemes, to IIS settings, etc, etc, etc.

Just a few of them:
1) Use the same exact conn string for each DB across
apps. This helps connection pooling. Usually the conn
string should be stored in an app variable and used as such in
all pages. It's both good coding practice and easier on the
servers.

2) Keep SQL connections short, dump recordsets
into multi-dimensional arrays using getrows() and use
those arrays to access the data. This is often much faster
both for SQL and the web server than iterating through
the recordset. And of course, use sprocs, they're both
faster and more secure than ad-hocs.

3) In 3.0/Win2k, multiple Response.Writes are faster
than string concating multiple times and using one
Response.Write.

4) Watch out for infinite loops! Once common mistake
is where the recordset is put through a while loop but
then nothing is added to movenext in the recordset.
This then causes a massive spike in CPU usage 'til
the script timesout .

5) Don't use sessions! Use cookies and some custom
functions instead. Then remove/disable sessions entirely.

6) Use the approprate locks, transactions, and cursors.
Try to avoid serializable! And watch out how you define
indexes, defaults, and constraints. Indexes, especially clustered ones
are sometimes murder on updates and inserts, especially if
there are a lot of non-sequential inserts and deletes.

7) If a particular set of data hardly ever changes, consider
removing DB access for that entirely and simply hard-coding
it in ASP. If it changes but not often, consider some type of
caching scheme, where all or most of the data is loaded off
a file cache on the web server. This one requires quite a bit
of coding and change in classic ASP.

8) In IIS, make sure output buffering is enabled. It's enabled by
default in 3.0. I also prefer the default application isolation,
ie Medium pooled. Don't log everything unless you have
to. And watch out for viral scans on the global.asa file. Exclude
the global.asa from the scan. If IIS loses track of that file during
the scan, it can automatically restart the app.

"dm1608" <dm****@spam.net> wrote in message
news:%2****************@TK2MSFTNGP15.phx.gbl...
I'll check those options.

In my opinion, the application is just poorily designed.

In order for customer to access webpage login, they have to know the virtual directory and 3-4 querystring parameters. This usually isn't a problem when it is bookmarked from another site. Virtually impossible for someone to try and remember.

One of the querystring is a customer id #. We can host multiple customer
web pages that are unique in style/theme on our server. The issue is,
each web page has to query SQL Server to pull out "Theme" information...
such as button path, image, HTML attributes for header, footer, body, etc.
When there is a high load on the server, SQL Server is really busy doing
reads for every page view. Very lame.

What we have experienced as well, with the memory leak issue, as memory
resources run out... some customes actually see other customers' "Theme"
even though they logged on with the correct querystring.

The vendors answer is to reboot or create a job to kill the workerprocess
each day or when its memory reaches a particular threshold.
"Raymond" <un*******@nothee.net> wrote in message
news:NmcNf.31498$%v4.26609@trnddc03...
I've worked with similar setups with even heavier
loads and they didn't need daily rebooting. So it's
not IIS per se. Check the event log. Are you using
session objects, com components? I always avoided
that session object in classic ASP like the plague.
How is the CPU load? Is IIS application protection set
to Medium pooled?

http://support.microsoft.com/default...b;en-us;811140
"dm1608" <dm****@spam.net> wrote in message
news:OA**************@TK2MSFTNGP14.phx.gbl...
I have an Ecommerce application that uses mostly ASP and a bit of
ASP.NET.
Monitoring the servers memory via SNMP every 5 minutes would indicate
that
there is a memory leak somewhere within the application. Of course, the vendor says its a "Microsoft IIS" issue and tells us to reboot the server each day or kill the worker process for IIS.

We're currently rebooting our server at 4 AM each night.

This is a really lame idea, in my opinion, because we always have at
least
50 users on the site during the night and over 200 concurrently during
the
day.

Does anyone know a good way to fix this problem?

We're using W2K Advanced and have 4GB of RAM and SQL 2000.

All service packs are up to date.



Mar 2 '06 #4

This thread has been closed and replies have been disabled. Please start a new discussion.

Similar topics

8
by: Ben Allen | last post by:
Is there a way (through a variable) to show the date of the last server reboot i.e. when PHP last started running? As I am trying to show the server uptime, which of course only works from the last...
2
by: Ken Lindner | last post by:
I have a need to become familiar with SQL Server 2000 for work. Needless to say I am new to SQL Server any version, but not IT in general. My employer has provided me with the SQL Server 2000...
19
by: Thue Tuxen Sørensen | last post by:
Hi everybody ! I´m maintaining a large intranet (approx 10000 concurrent users) running on one IIS box and one DB box with sqlserver 2000. Currently there is 2,5 GB Ram, 1 1400 mhz cpu and 2...
10
by: JL | last post by:
To All, I have a SQL2KSP3a database(<1GB) running on a 4x3GB physical CPU with 4GB of ram. It is Windows Server 2003 with hyper-threading turn on. There are ~420 .Net users/cxns (fat client, no...
2
by: innesm | last post by:
Hi, Although I havent been able to find any documentation to confirm it, it looks like any change to a windows local group's membership is only reflected in the group editing UI (and the...
11
by: Greg | last post by:
How can C# be used for a website ? Would the person viewing a site need to have the .NET framework installed ? What other technologies would need to be used ? Would a database server be needed...
5
by: war_wheelan | last post by:
I created the db with the attached script and I am able to access it until I reboot the server. I've tried enabling flag 1807 via the SQL server service and the startup parameters of the instance....
3
by: Steve | last post by:
Hi All I downloaded Sql server 2005 express SP2 and attempted to modify the Bootstrapper package files as I did with SP1 When i try to install SQL server as part of my VS 2005 deployment app I...
1
by: SmartbizAustralia | last post by:
Weird issue. Need to change the connection (dsn less connection of course) to sql server from access 2007 because they blew away the security model! But the database requires a reboot before...
0
by: ryjfgjl | last post by:
In our work, we often receive Excel tables with data in the same format. If we want to analyze these data, it can be difficult to analyze them because the data is spread across multiple Excel files...
0
by: emmanuelkatto | last post by:
Hi All, I am Emmanuel katto from Uganda. I want to ask what challenges you've faced while migrating a website to cloud. Please let me know. Thanks! Emmanuel
1
by: Sonnysonu | last post by:
This is the data of csv file 1 2 3 1 2 3 1 2 3 1 2 3 2 3 2 3 3 the lengths should be different i have to store the data by column-wise with in the specific length. suppose the i have to...
0
marktang
by: marktang | last post by:
ONU (Optical Network Unit) is one of the key components for providing high-speed Internet services. Its primary function is to act as an endpoint device located at the user's premises. However,...
0
by: Hystou | last post by:
Most computers default to English, but sometimes we require a different language, especially when relocating. Forgot to request a specific language before your computer shipped? No problem! You can...
0
Oralloy
by: Oralloy | last post by:
Hello folks, I am unable to find appropriate documentation on the type promotion of bit-fields when using the generalised comparison operator "<=>". The problem is that using the GNU compilers,...
0
jinu1996
by: jinu1996 | last post by:
In today's digital age, having a compelling online presence is paramount for businesses aiming to thrive in a competitive landscape. At the heart of this digital strategy lies an intricately woven...
0
by: Hystou | last post by:
Overview: Windows 11 and 10 have less user interface control over operating system update behaviour than previous versions of Windows. In Windows 11 and 10, there is no way to turn off the Windows...
0
agi2029
by: agi2029 | last post by:
Let's talk about the concept of autonomous AI software engineers and no-code agents. These AIs are designed to manage the entire lifecycle of a software development project—planning, coding, testing,...

By using Bytes.com and it's services, you agree to our Privacy Policy and Terms of Use.

To disable or enable advertisements and analytics tracking please visit the manage ads & tracking page.