BoltDB is an embedded key/value database for Go.
BoltDB is an embedded key/value database for Go.
Customer Reviews
Karolis R.
Advanced user of BoltDBSuper fast mmap implementation where operating system caches everything. Reduced dependencies and persistence storage. It also enables transactions and due to the fact that it's embedded - no connection pool.
Lack of scalability options, it can bring you up to speed very quickly and let you process a lot of stuff, but when you need to scale horizontally - you will have to look for other projects.
Check out caveats and limitations, don't use byte slices blindly, write those bytes to buffer before ending transaction. That's not very clear through the documentation, just keep that in mind.
Also, understand that it's not a silver bullet for everything, if you need to something that has schema and relations - bolt is not for you. If you are working on a web app that will be deployed to container and then automatically scaled - bolt is not for you. Design better interfaces in your application to easily change backends, that will help you later.
Service virtualization, capturing/virtualizing/synthesizing external APIs. BoltDB helped to make our tool Hoverfly truly autonomous with zero dependencies, very easy to deploy and achieve superb performance. Migrating from Redis to BoltDB increased requests per second from ~400 to ~850.