This is the most scalable, fastest, and recoverable S3 client in existence as far as I know.
Control the number of concurrent NIO workers. Recover from lost connections by saving your progress locally.
This was built to work with S3 buckets containing millions of objects in situations where connectivity may be an issue.
See Wiki.