Concurrent Futures in Sheepdoge: How a few lines of code resulted in a 78% performance improvement
For the past couple of months, I’ve been working on Sheepdoge, a tool for managing your personal Unix machines with Ansible. It’s like boxen, but for Ansible.
One new sheepdoge feature I’m particularly excited about is the use of concurrent.futures
during sheepdoge install. concurrent.futures provides a high-level API for
executing code asynchronously, making adding thread/process based concurrency
trivial. It is a standard library python module as of 3.2, and is available on python 2.7 through the
futures backport.