As a data point, this is the underlying data storage mechanism we use for Consul (https://github.com/hashicorp/consul).

We also forked and improved some Go bindings to lmdb: https://github.com/armon/gomdb (which is the lib we use in Consul).

When building Consul, we were specifically looking for an in-process DB that supports MVCC. The reason is because while Consul is doing a snapshot, we wanted to be able to INSERT/UPDATE without affecting the integrity of the snapshot. LMDB fit this role nicely and the performance has been fantastic for our use case.

thats interesting! since Consul / Serf are written in Go.. have you considered using boltdb? https://github.com/boltdb/bolt it's an LMDB implementation in Go, really clean code.