Use greenlets to stop disconnections on long processing