The amount of processing that can happen during a time of a homepage request is limited. Processing is much shorter if external requests can be avoided e.g. by having a daemon extract data asynchronously.
Examples of asynchronous processing:
background replication between External Data System and AEPortal caching, driven by user profile information
splitting the homepage into several multi-pages, some of them are pre-loaded in the background
starting an asynchronous requester during first access and – driven by profile values – fill in the domain object cache.
Use a Java Messaging System to request and publish data within the application and between clones.