PC Review


Reply
Thread Tools Rate Thread

Huge HTML output perfomance

 
 
George
Guest
Posts: n/a
 
      28th Mar 2005
Hi,
I have a report which shows all records from database into the browser.
The final HTML comes out about 5 Meg.

It takes 1 minute 5 seconds for transfer to show up when i hit the page with IE

The trace info shows that output was done within 1 second and then i guess it took so much time (> 1 minute) for it to actually be transferred to IE. I am doing test on the same machine. IIS and IE are on the same machine and I believe the actual transfer of 5 Meg data is much faster.

So i suspect that all that time was spent on actually transferring data between ASP.NET engine and IIS IO threads.
Is there a way to speed up that?

Bellow is info from trace that shows the rendering took less than a second.
Trace info Message From First From Last
aspx.page End Render 0.802165 0.671952

Thanks
George.



 
Reply With Quote
 
 
 
 
Kevin Spencer
Guest
Posts: n/a
 
      28th Mar 2005
Regardless of whether the web server is on the same machine as the browser,
HTTP is transported over a TCP connection. The time spent was the time it
took to send 5 megs of data over a TCP connection as an HTTP response.

Basically, the problem is, your web page is too big.

--
HTH,

Kevin Spencer
Microsoft MVP
..Net Developer
What You Seek Is What You Get.

"George" <(E-Mail Removed)> wrote in message
news:%(E-Mail Removed)...
Hi,
I have a report which shows all records from database into the browser.
The final HTML comes out about 5 Meg.

It takes 1 minute 5 seconds for transfer to show up when i hit the page with
IE

The trace info shows that output was done within 1 second and then i guess
it took so much time (> 1 minute) for it to actually be transferred to IE. I
am doing test on the same machine. IIS and IE are on the same machine and I
believe the actual transfer of 5 Meg data is much faster.

So i suspect that all that time was spent on actually transferring data
between ASP.NET engine and IIS IO threads.
Is there a way to speed up that?

Bellow is info from trace that shows the rendering took less than a second.
Trace info Message From First From Last
aspx.page End Render 0.802165 0.671952

Thanks
George.




 
Reply With Quote
 
 
 
 
Marina
Guest
Posts: n/a
 
      28th Mar 2005
Not to mention that transferring the data takes quite a while, the browser also has to parse and process 5 megs worth of HTML and render it properly. That is not the same thing as the .aspx server side code rendering - that just creates the resulting HTML.

Given that, you should be very happy that it is taking only a minute for all this happen. I hope your clients all have very fast machines with excellent internet connections.
"George" <(E-Mail Removed)> wrote in message news:%(E-Mail Removed)...
Hi,
I have a report which shows all records from database into the browser.
The final HTML comes out about 5 Meg.

It takes 1 minute 5 seconds for transfer to show up when i hit the page with IE

The trace info shows that output was done within 1 second and then i guess it took so much time (> 1 minute) for it to actually be transferred to IE. I am doing test on the same machine. IIS and IE are on the same machine and I believe the actual transfer of 5 Meg data is much faster.

So i suspect that all that time was spent on actually transferring data between ASP.NET engine and IIS IO threads.
Is there a way to speed up that?

Bellow is info from trace that shows the rendering took less than a second.
Trace info Message From First From Last
aspx.page End Render 0.802165 0.671952

Thanks
George.



 
Reply With Quote
 
George
Guest
Posts: n/a
 
      28th Mar 2005
Allow me to disagree.
I can copy that file (generated HTML) over our corporate network to a file server within 1-2 seconds. And it really does travels across the LAN (100 Mbs per sec).

When IIS server on the same machine as IE the data transfers over TCP connection but i can assure you that actual speed is much faster than 100 Mb per sec.

So my point is that there is no way that transfer of 5Meg took more than a second over a local TCP connection.

George.



"Kevin Spencer" <(E-Mail Removed)> wrote in message news:(E-Mail Removed)...
Regardless of whether the web server is on the same machine as the browser,
HTTP is transported over a TCP connection. The time spent was the time it
took to send 5 megs of data over a TCP connection as an HTTP response.

Basically, the problem is, your web page is too big.

--
HTH,

Kevin Spencer
Microsoft MVP
.Net Developer
What You Seek Is What You Get.

"George" <(E-Mail Removed)> wrote in message
news:%(E-Mail Removed)...
Hi,
I have a report which shows all records from database into the browser.
The final HTML comes out about 5 Meg.

It takes 1 minute 5 seconds for transfer to show up when i hit the page with
IE

The trace info shows that output was done within 1 second and then i guess
it took so much time (> 1 minute) for it to actually be transferred to IE. I
am doing test on the same machine. IIS and IE are on the same machine and I
believe the actual transfer of 5 Meg data is much faster.

So i suspect that all that time was spent on actually transferring data
between ASP.NET engine and IIS IO threads.
Is there a way to speed up that?

Bellow is info from trace that shows the rendering took less than a second.
Trace info Message From First From Last
aspx.page End Render 0.802165 0.671952

Thanks
George.




 
Reply With Quote
 
Steve C. Orr [MVP, MCSD]
Guest
Posts: n/a
 
      28th Mar 2005
What you are seeing is that it takes a long time to transfer 5MB over a network connection.
It takes almost no time when everything is on the local machine, because no network cables are involved.
As soon as you try and cram all that data through a little cable, things hit a bottleneck.
Transferring over the Internet (versus a local LAN) will slow things down even more.
It's a fact of life, and there's not much you can do about it.
There are workarounds though, such as using paging. If you only display one page of the report at a time then you don't need to transfer nearly as much for each page request.

--
I hope this helps,
Steve C. Orr, MCSD, MVP
http://SteveOrr.net


"George" <(E-Mail Removed)> wrote in message news:%(E-Mail Removed)...
Hi,
I have a report which shows all records from database into the browser.
The final HTML comes out about 5 Meg.

It takes 1 minute 5 seconds for transfer to show up when i hit the page with IE

The trace info shows that output was done within 1 second and then i guess it took so much time (> 1 minute) for it to actually be transferred to IE. I am doing test on the same machine. IIS and IE are on the same machine and I believe the actual transfer of 5 Meg data is much faster.

So i suspect that all that time was spent on actually transferring data between ASP.NET engine and IIS IO threads.
Is there a way to speed up that?

Bellow is info from trace that shows the rendering took less than a second.
Trace info Message From First From Last
aspx.page End Render 0.802165 0.671952

Thanks
George.



 
Reply With Quote
 
darrel
Guest
Posts: n/a
 
      28th Mar 2005

So my point is that there is no way that transfer of 5Meg took more than a
second over a local TCP connection.

a 5mb file is a GIGANTIC (I mean mega-super-hyper-gigantic!) file for most
any web browser to render quickly. It's not the transfer time that's the
hold-up...it's likely the browser render time.

even 1mb files are pushing it.

Is this data in a table? One option it so break out the data into multiple
tables, so once one table is downloaded, the browser can start rendering
that while it goes onto the next...so it at least as the impression of
rendering faster.

-Darrel


 
Reply With Quote
 
George
Guest
Posts: n/a
 
      28th Mar 2005
Thanks
You are right. I actually save file on disk and tried to open it with IE form local disk. It took almost 40 seconds to render it.

George.

"Marina" <(E-Mail Removed)> wrote in message news:%(E-Mail Removed)...
Not to mention that transferring the data takes quite a while, the browser also has to parse and process 5 megs worth of HTML and render it properly. That is not the same thing as the .aspx server side code rendering - that just creates the resulting HTML.

Given that, you should be very happy that it is taking only a minute for all this happen. I hope your clients all have very fast machines with excellent internet connections.

 
Reply With Quote
 
George
Guest
Posts: n/a
 
      28th Mar 2005
Thanks
You are correct. I save HTML file on a disk and opened with IE. It took almost 40 seconds to do it.

Thanks
George.

"darrel" <(E-Mail Removed)> wrote in message news:(E-Mail Removed)...

So my point is that there is no way that transfer of 5Meg took more than a
second over a local TCP connection.

a 5mb file is a GIGANTIC (I mean mega-super-hyper-gigantic!) file for most
any web browser to render quickly. It's not the transfer time that's the
hold-up...it's likely the browser render time.

even 1mb files are pushing it.

Is this data in a table? One option it so break out the data into multiple
tables, so once one table is downloaded, the browser can start rendering
that while it goes onto the next...so it at least as the impression of
rendering faster.

-Darrel


 
Reply With Quote
 
Kevin Spencer
Guest
Posts: n/a
 
      28th Mar 2005
You're certainly allowed to disagree. However, let me remind you that you're
comparing apples to oranges. Note the mention of the HTTP protocol in my
response. You are also not accounting for the web server layer.

--
HTH,

Kevin Spencer
Microsoft MVP
..Net Developer
What You Seek Is What You Get.

"George" <(E-Mail Removed)> wrote in message
news:(E-Mail Removed)...
Allow me to disagree.
I can copy that file (generated HTML) over our corporate network to a file
server within 1-2 seconds. And it really does travels across the LAN (100
Mbs per sec).

When IIS server on the same machine as IE the data transfers over TCP
connection but i can assure you that actual speed is much faster than 100 Mb
per sec.

So my point is that there is no way that transfer of 5Meg took more than a
second over a local TCP connection.

George.



"Kevin Spencer" <(E-Mail Removed)> wrote in message
news:(E-Mail Removed)...
Regardless of whether the web server is on the same machine as the
browser,
HTTP is transported over a TCP connection. The time spent was the time it
took to send 5 megs of data over a TCP connection as an HTTP response.

Basically, the problem is, your web page is too big.

--
HTH,

Kevin Spencer
Microsoft MVP
.Net Developer
What You Seek Is What You Get.

"George" <(E-Mail Removed)> wrote in message
news:%(E-Mail Removed)...
Hi,
I have a report which shows all records from database into the browser.
The final HTML comes out about 5 Meg.

It takes 1 minute 5 seconds for transfer to show up when i hit the page
with
IE

The trace info shows that output was done within 1 second and then i guess
it took so much time (> 1 minute) for it to actually be transferred to IE.
I
am doing test on the same machine. IIS and IE are on the same machine and
I
believe the actual transfer of 5 Meg data is much faster.

So i suspect that all that time was spent on actually transferring data
between ASP.NET engine and IIS IO threads.
Is there a way to speed up that?

Bellow is info from trace that shows the rendering took less than a
second.
Trace info Message From First From Last
aspx.page End Render 0.802165 0.671952

Thanks
George.





 
Reply With Quote
 
darrel
Guest
Posts: n/a
 
      28th Mar 2005
> You are right. I actually save file on disk and tried to open it with IE
form local disk. It took almost 40 seconds to render it.

Also, make sure whatever control is being used to 'hold' the markup for the
data that you don't have that set to preserve it's view state...if you do,
that can easily double the size of the page's source code.

-Darrel


 
Reply With Quote
 
 
 
Reply

Thread Tools
Rate This Thread
Rate This Thread:

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

BB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are Off


Similar Threads
Thread Thread Starter Forum Replies Last Post
huge huge excel file... why? =?Utf-8?B?Sm9zaA==?= Microsoft Excel Misc 12 9th Feb 2006 10:55 PM
Perfomance problem when not connected =?Utf-8?B?UG90YXRvZQ==?= Windows XP Help 0 9th Jun 2004 07:51 PM
Perfomance Logs and Alerts James Windows XP Performance 0 16th Dec 2003 12:38 AM
How-To: Remote Perfomance Monitor on XP in aWorkgroups?? Rami Windows XP Performance 0 21st Oct 2003 05:31 AM
WIN XP Home - Slow Startup/Perfomance Brock Cole Windows XP Performance 1 4th Aug 2003 06:43 PM


Features
 

Advertising
 

Newsgroups
 


All times are GMT +1. The time now is 06:05 AM.