在Go web应用程序中使用全局变量存储DB句柄是一个好主意吗?

在Go web应用程序中使用全局变量存储DB句柄是一个好主意吗?,web,go,global-variables,Web,Go,Global Variables,官方指南称可以使用全局变量缓存模板: 首先,我们创建一个名为templates的全局变量,并对其进行初始化 使用解析文件 全局变量可以用来存储数据库句柄和存储库对象吗?还是必须为每个请求初始化它们 非常感谢是的,这很好,它在各地的官方围棋软件包中都有使用,现在如果你要从你的处理程序中修改这些对象,你必须使用互斥锁,这样你就不会遇到比赛。谢谢!但对于未关闭的连接,您会怎么做?使用本地句柄,在请求结束时总是很容易关闭它们。或者,对于数百万个请求,每天有一个打开的连接是正常的吗?数据库连接?是的,很

官方指南称可以使用全局变量缓存模板:

首先,我们创建一个名为templates的全局变量,并对其进行初始化 使用解析文件

全局变量可以用来存储数据库句柄和存储库对象吗?还是必须为每个请求初始化它们


非常感谢

是的,这很好,它在各地的官方围棋软件包中都有使用,现在如果你要从你的处理程序中修改这些对象,你必须使用互斥锁,这样你就不会遇到比赛。

谢谢!但对于未关闭的连接,您会怎么做?使用本地句柄,在请求结束时总是很容易关闭它们。或者,对于数百万个请求,每天有一个打开的连接是正常的吗?数据库连接?是的,很好。很酷,非常感谢。来自ASP.NET,在那里建立全局数据库连接是一个糟糕的想法。在Go中,这也很容易成为一个糟糕的想法。取决于详细信息。Go中的DB连接通常是池,因此全局连接并不可怕。不过,值得一读,看看如何尽可能远离全球化: