sql - 接收 conn 忙于不同的查询
问题描述
我有一个关于 golang 和执行查询的一般性问题。我使用 gin-gonic 作为我的 http 框架和 pgx 驱动程序来执行不同的查询。我遇到了一些查询返回的问题,conn busy
需要知道如何解决这个问题以供将来参考。请注意我使用的一些查询pgx.Conn
和其他查询,pgx.Pool
我还配置pgx.Pool
了最多 10 个连接池。
我的一个示例查询是
SELECT user_id,first_name,last_name,email,users.username,dob,country,is_verified, bio,"+
"profile_json, tier, casual_games, stream_time, profile_image,"+
"is_streaming, users.created_at FROM users INNER JOIN profiles ON profiles.username = users.username WHERE users.user_id = $1
解决方案
注意我的一些查询使用 pgx.Conn 和其他 pgx.Pool
https://pkg.go.dev/github.com/jackc/pgx#Conn
Conn 是一个 PostgreSQL 连接句柄。并发使用是不安全的。使用 ConnPool 管理从多个 goroutine 对多个数据库连接的访问。
由于使用了非线程安全的 Conn,您的代码似乎必须中断
推荐阅读
- javascript - 拒绝连接到 URL,因为它违反了 CSP
- java - Spring Batch 将数据从 writer 传递到下一个作业或步骤
- sftp - Azure 逻辑应用 SFTP-SSH 创建操作中的分块不起作用
- mongodb - Spring Boot mongo db连接池问题
- git - 仅克隆一个 gitlab 存储库时出错
- python - 如何将屏幕导入主屏幕?基维
- php - Ajax POST,检查 PHP $_GET 然后 $_POST
- r - sf:生成具有最大距离条件的随机点
- javascript - 在反应本机挂钩中更新嵌套数据状态
- python - ValueError: y 应该是一维数组,得到一个形状为 (9121, 14) 的数组