Can you elaborate on why celery makes a world of difference?
In short, it simply makes your application respond faster (and scale better) while you still can keep track of all the work done.
I am quite familiar with gearman and beanstalkd, but Celery (as far as I understand it) is a python layer over these implementations. It allows you to write code agnostic of the broker, which helps for portability etc.
Think of things like monitoring, reporting, emailing, analytics, cleaning, archiving... the list goes on.
For all those things you need a job system. Celery is (to my knowledge) the most popular one.