First step: open a connection to an SQL database and make a query
[Ref3]
connection pool
Đọc [Ref2] trước bằng tiếng Việt, rồi đọc [Ref4], [Ref5] là bản tiếng Anh.
Một đối tượng sql.DB là một pool các kết nối tới cơ sở dữ liệu chứa các kết nối đang được sử dụng (in-use) và các kết nối idle.
Một kết nối được đánh dấu là đang sử dụng khi bạn dùng nó để thực hiện một tác vụ cơ sở dữ liệu, chẳng hạn như thực hiện một câu lệnh SQL...
Khi tác vụ đã hoàn thành, kết nối sẽ được đánh dấu là idle.
Khi bạn ra lệnh sql.DB thực hiện một tác vụ cơ sở dữ liệu, trước tiên nó sẽ kiểm tra trong pool đang có bất kỳ kết nối idle nào hay không. Nếu có, Go sẽ tái sử dụng nó và đánh dấu đang được sử dụng trong suốt tác vụ. Nếu không, Go sẽ tạo thêm kết nối để bạn sử dụng.
phương thức:
SetMaxOpenConns(): the maximum number of concurrently open connections (in-use + idle)
SetMaxIdleConns():
SetConnMaxLifetime()
các phương thức này có thể được dùng để cấu hình các hành vi của sql.DB và thay đổi hiệu năng của nó.
First step: open a connection to an SQL database and make a query
[Ref3]
connection pool
Một đối tượng sql.DB là một pool các kết nối tới cơ sở dữ liệu chứa các kết nối đang được sử dụng (in-use) và các kết nối idle.
Khi bạn ra lệnh sql.DB thực hiện một tác vụ cơ sở dữ liệu, trước tiên nó sẽ kiểm tra trong pool đang có bất kỳ kết nối idle nào hay không. Nếu có, Go sẽ tái sử dụng nó và đánh dấu đang được sử dụng trong suốt tác vụ. Nếu không, Go sẽ tạo thêm kết nối để bạn sử dụng.
phương thức:
các phương thức này có thể được dùng để cấu hình các hành vi của sql.DB và thay đổi hiệu năng của nó.
https://github.com/jmoiron/sqlx/issues/300
Referer: