go 练手写了个小项目 mysql 代理连接池

2022-11-03 18:54:37 +08:00
 yuancoder
go 练手写了个小项目,mysql 代理连接池, 大家帮忙看看点点 star

https://github.com/lyuangg/umyproxy
1487 次点击
所在节点    Go 编程语言
6 条回复
bthulu
2022-11-04 09:14:33 +08:00
是类似 mysql 企业版的那种连接池吗?
heybuddy
2022-11-04 09:24:56 +08:00
这个可以用在生产环境吗?我想学习学习怎么实现这个连接池
yuancoder
2022-11-04 10:01:34 +08:00
@bthulu 企业版的没用过,这个是代理 client 端的连接。


@heybuddy 不建议在生成环境下用,学习的话可以看看源码,代码也不复杂。
xx6412223
2022-11-04 12:32:53 +08:00
golang 的 sql package 本来有 cache connection 的
另外,是不是应该加一个 select 1 的心跳功能,
yuancoder
2022-11-04 15:06:36 +08:00
@xx6412223 连接的时候会设置 keepalive ,而且还有一个空闲时间,所以我觉得心跳就没有必要加了。
lesismal
2022-11-04 16:42:43 +08:00
@xx6412223 心跳用 db.Ping()就行了。但 Ping 也只是单个连接,如果要每个连接 7 层 keepalive 可能还是要自己封装下。
@yuancoder conn 的 keepalive 只是 4 层的,不过也还好,数据库都内网,比较稳定,够用了

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/892443

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX