[eluser]marcoss[/eluser]
A simple flow for the queue implementation could be:
1. User uploads original image to the server.
2. A DB record is created with image location, user_id and status = pending.
3. Every "x amount of time", you run a process (cron) to execute whatever is on the queue, don't process the whole queue, just the last "x amount of items", older first, of course.
4. Every time you process and item, update the status, and notify the user.
You can also have different "actions" (crop, rotate, thumbnail) on the same queue and run similar task together for better performance.