Keep the number of domains serving resources to a minimum
When a website or online service hosts a web page’s components across several domains, the browser has to establish an HTTP connection with every single one. Once the HTML page has been retrieved, the browser calls the sources as it traverses the DOM (Document Object Model).
Some resources are essential for the page to work. If they are hosted on another domain which is slow, it may increase the page’s render time. You should therefore, when possible, group all resources on a single domain.
The only exception to this is for static resources (style sheets, images, etc.), which should be hosted on a separate domain to avoid sending one or multiple cookies for each browser GET HTTP request. This reduces response time and unnecessary bandwidth consumption.
Employ asynchronous processing when possible
When the interaction with the user results in long and heavy processing by the server, employ asynchronous processing when possible. The idea is to encourage the user to trigger the processing and then reconnect once it is complete e.g. by receiving an email with a link.
This method allows processing to be done in batches, often more efficient in terms of resources than on-the-fly synchronous processing. This frees up the presentation servers so that they can handle other users while the processing is handled asynchronously server-side.