Internet Explorer 8 + Ajax + Large page = Slownessssssss
Written on June 3, 2009 by Allan Lykke Christensen
The past few weeks I’ve heard a lot of people raving about the improvements brought by Internet Explorer 8 compared to its predecessors. So, when a client was having problems performance problems working on a large page containing multiple forms, I suggested that they upgrade from Internet Explorer 6 to 8. Normally, I’d suggest upgrading to Safari (my personal favourite) or Firefox (fantastic for development), however the client prefers to stick with what is provided by Microsoft (fair enough!). Anyway, after upgrading to IE 8 the client started complaining big time even slower response times. To test the claim I upgraded IE7 to IE8 on my VMWare virtual machine running Windows XP. After the smooth installation of IE8 (and a restart) I launched the application and timed the performance. I was in shock! The action to be benchmarked was pretty simple. Open a modal dialogue box inside the webpage by the press of a button (Ajax), in the modal dialog text would be entered, a file would be attached and then saving the entered data and closing the modal dialogue box by pressing a save button (also Ajax). So the action is 100% Ajax. Below are my benchmarks:
| Action / Browser | Firefox 3 | Internext Explorer 8 |
|---|---|---|
| Opening the modal dialogue | 323ms | 3sec |
| Saving and closing the modal dialogue | 5sec | 15sec |
After careful examination I found that on Firefox, once the Ajax response was returned to the browser from the server the output was almost rendered immediately (between 100 and 300 ms), where on Internet Explorer, it took between 5-10 seconds to render the output. I believe this is because the page is large (borderline huge), and for some reason IE is not optimised to quickly find the place of insertion for the Ajax response.
I haven’t tried out IE8 on small pages, but so far I’m not impressed unfortunately. On a positive note, IE8 is by far more standard complaint than IE6.
If you enjoyed this post Subscribe to our feed