The Manager.createCert method has a lock around the ACME transaction so that multiple goroutines can safely call this method concurrently. This does not protect against multiple processes (possibly on different machines) doing this concurrently.
If transaction hooks were added, then a caller could provide a custom Cache which uses remote storage, allowing multiple servers to safely request certificate generation/renewal and share the certificates.
If this approach is acceptable, I can start work on a PR.
Comment From: seankhliao
I'd say out of scope for autocert.