【发布时间】:2020-04-15 05:10:16
【问题描述】:
Go 中的 web 应用程序。假设它是一个博客。假设每天有 1000 个会话。
我应该创建一个全局数据库连接并让它一直处于活动状态吗?还是应该在每次需要查询数据库时打开和关闭它?一般规则是什么?
【问题讨论】:
-
golang.org/pkg/database/sql/#Open "返回的 DB 对于多个 goroutine 并发使用是安全的,并维护自己的空闲连接池。因此,Open 函数应该只调用一次。很少需要关闭数据库。"
-
您绝对应该不每次都打开和关闭。您是否有单个连接更多是一个应用问题。一些应用程序需要多个连接(即到不同的数据库,或使用不同的凭据)
标签: mysql database postgresql go web-applications