Using a message queue can help to suspend heavy processes and execute them later so you won't bother your visitors with long waiting times. There are a few solutions for queuing like Gearman, ActiveMQ and Zend Server Job Queue. For www.nd.nl (a Dutch newspaper) we wanted a simple and free queue mechanism that integrates with Zend Framework for handling a number of jobs. We found MemcacheQ.
He talks a bit about what MemcacheQ is ("damn simple, very fast, great concurrency") and about the fact you can use existing memcache technology to interact with it. He points out the Zend_Queue_Adapter_Memcacheq component of the Zend Framework and shows an example of how to use it in a simple app to store a simple process. There's also a script that would run in a cron job (or something similar) and pull out these processes and execute them.