boltdb是否支持并发查询以读取和更新数据库?

时间:2015-06-05 08:25:44

标签: database go key-value-store boltdb

目前使用<script id="custom-reports-table" type="text/x-handlebars-template"> 存储存储桶中的各种条目。

如何在db?

中读取和更新Go语言例程和通道概念

1 个答案:

答案 0 :(得分:8)

一般来说,是的,你可以,只要你注意以下几点:

  • 所有访问都应该在自己的事务中完成。不应在goroutine之间共享事务(无论它们是只读还是读写)。

  • boltdb只能在给定的时间点容忍一个编写者。如果多个并发事务尝试同时写入,它们将被序列化。保证数据库的一致性,但它会对性能产生影响,因为写操作无法并行化。

  • 只读事务同时执行(并可能并行化)。

  • 同时在给定的goroutine中只打开一个事务,以避免死锁情况。