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

"Please Wait" - Under Load

Hi All,

Ok I realize that the title is a bit cryptic so let me explain.

I have an C# web application that generates a few pages on the fly. Basically the ASPX file is empty and I generate everything using Response.Write()

I am now doing stress tests on my server and ak experiencing a problem.

When the server is under stress and I load a page in the app ... the page opens up but except for the title bar everything is just a blank white page ( it's busy loading) ... as this is not very appealing and the user might think that the app has hung I would like to put a "please wait" on the page while the main stuff is loading ... the main data loads from oracle and then writes to the page.

I have tried adding a 'Please wait" to the ASPX page to let it display before the page is regenerated, I have also added a Response.Write("Please Wait");Response.End(); to the Page_Load ... so it shoows it while the real data loads ...

in both cases there is no joy. The page still stays white for a few seconds and once it's done it just displays my data (I'm guessing that my "Please wait" flashes just before my data is displayed) ...

Can anybody help here

Txs
Peter
0
Pete2003
Asked:
Pete2003
  • 4
  • 3
1 Solution
 
KelmenCommented:
At the approriate event (eg, PageLoad), after you render the text "Please wait"...., use Response.Flush to force this text pass to browser.
0
 
AvonWyssCommented:
Kelmen's suggestion might work (or might not, depending on whether the browser will already display the message before the page has been fully loaded), and you'll always have the "please wait" message staying on top of the message after the results have been returned.

My suggestion would be to generate two requests: one to a page with only a "Please Wait" message, which inclused a refresh-metatag in the head: <META HTTP-EQUIV=Refresh CONTENT="0; URL=UrlOfPage">

This should make thre browser load the given URL after the page, while still displaying the "please wait" message until the page has loaded.
0
 
Pete2003Author Commented:
AvonWyss: I hav tried your approach and it does help when the Oracle stuff is loading but it also introduces another wait period ...

as I'm stressing both the oracle and the IIS server, I get a blank page when I load my 'loader page' , then the 'please wait ' appears on my loader page then the real page loads ... granted that the wait period for the 'load page' is much shorter then the 'real page' however there is still a wait period for the 'load page' and there is the extra delay of when the 'load page' loads my 'real page' ... since it's an extra trip to an already busy IIS server ...

Txs
Peter
0
Cloud Class® Course: Microsoft Azure 2017

Azure has a changed a lot since it was originally introduce by adding new services and features. Do you know everything you need to about Azure? This course will teach you about the Azure App Service, monitoring and application insights, DevOps, and Team Services.

 
AvonWyssCommented:
The delay should be quite short, if you pay attention not do do things in the load page (escpecially be aware of things that might be done in the global.asax file for each request). The extra trip is not very expensive, since the HTTP connects will stay open after the please-wait-request.
0
 
Pete2003Author Commented:
Ok here is my load page ... "reportLoad.html"

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<html>
<head>
<title></title>
<META HTTP-EQUIV=Refresh CONTENT="0; URL=reportMain.aspx">

<meta name="GENERATOR" content="Microsoft Visual Studio .NET 7.1">
<meta name=ProgId content=VisualStudio.HTML>
<meta name=Originator content="Microsoft Visual Studio .NET 7.1">
</head>
<body>
Please Wait ...


</body>
</html>

Is that as 'streamline' as I will get ?
0
 
AvonWyssCommented:
Assuming that the IIS server does not have a script mapping on HTML pages, so that this page is serves as static content, I think that this is about the best you can get...
0
 
Pete2003Author Commented:
Ok txs ...
0
 
AvonWyssCommented:
Thanks for the points!

Note that the refresh-URL can also be an url on another server if you put in a fully-qualified url (http://...), so that you could have a second server as "back-end" if you really get into performance troubles. But I doubt that the effort and costs of a second server could be worth the little decrease in serving time.
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

Cloud Class® Course: CompTIA Cloud+

The CompTIA Cloud+ Basic training course will teach you about cloud concepts and models, data storage, networking, and network infrastructure.

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