ASP.NET peformance on a WAN
I have built a portal site for a customer. On their local network, the front
page loads within 2 seconds. It is a heavy page containing tabstrip,
multipage controls, as well as a web service being called by an IE web
service behavior (which updates a live stock ticker every 20 seconds).
Customers accessing the site over the company's wide area network are
experiencing extremely slow load times on the fron page. Bandwidth is not an
issue, but I think latency is.
I have done the following to try and speed things up:
1. Implement a patch from Microsoft, which is supposed to speed up
performance on Windows 2000 clients (see knowledge base..sorry can't
remember article number)
2. Built and installed a compression DLL which runs as an HTTP module and
compresses the pages before sending them. In testing, it seems to have
improved the speed quite a bit, but not enough!
Does anyone have any ideas on how I can further speed up the application?
Where I can, I have broken the page into user controls and am fragment
caching them. But the meat of the front page is contained within the
tabstrip/multipage stuff...and I can't cache that part since I have two
ChartFX.NET graphs showing on one multi-page....and caching the page causes
havoc with the display of dynamic charting.
It seems that there is a huge amount of small packet transfer when loading
controls like the tabstrip and multi-page. Given latency on a WAN, each
small packet gets latency time added to it, effectively causing a huge
slowdown of the page load, while hundreds of packets are re-assembled.
Whereas the page loads locally (LAN) in 2 seconds, it is taking up to 100
(!) seconds to load across a 2MB link.....
Has anyone experienced this problem? Any ideas or suggestions would be
Top DevX Stories
Easy Web Services with SQL Server 2005 HTTP Endpoints
JavaOne 2005: Java Platform Roadmap Focuses on Ease of Development, Sun Focuses on the "Free" in F.O.S.S.
Wed Yourself to UML with the Power of Associations
Microsoft to Add AJAX Capabilities to ASP.NET
IBM's Cloudscape Versus MySQL