The \"classic\" approach to web development has been for some time a thin client and a thick server: the server generates HTML and spits it out for the browser to render only. B
The YUI Theater has a video that I think is highly relevant to your question - I strongly recommend watching it
High-performance JavaScript: Why Everything You've Been Taught Is Wrong
The title is a bit misleading, but he actually talks about the very issues you're facing.