百科.dev
全部条目在线工具AI 编程趋势榜开源项目技术资讯提交条目
登录
< 返回工具列表
C

connection_pool

> 编程语言
开源

针对 Ruby 的通用连接池

1.7K stars0 点赞2 次浏览
访问官网GitHub

工具介绍

针对 Ruby 的通用连接池

connection_pool ======================== Ruby 的通用连接池。MongoDB 具有自己的连接池。ActiveRecord 具有自己的连接池。这是一个通用的连接池,可以用于任何东西,例如 Redis、Dalli 和其他 Ruby 网络客户端。 使用方法 ============ 在 Ruby 应用程序中的线程或线程之间共享对象的连接池: ruby $memcached = ConnectionPool.new(size: 5, timeout: 5) { Dalli::Client.new } 然后在应用程序中使用该连接池: ruby $memcached.with do |conn| conn.get('some-count') end 如果连接池中的所有对象都在使用中,则 with 将阻塞,直到有一个可用。 如果在 :timeout 秒内没有可用的对象,则 with 将引发 ConnectionPool::TimeoutError(继承自 Timeout::Error)。

您还可以使用 ConnectionPool#then 来同时支持连接池和原生客户端。

包装器使用 method_missing 来检出连接,运行请求的方法,然后立即将连接重新放回池中。它的性能并不高,因此你需要尽快将性能敏感的代码移植到使用 with 中。

Issues· 0 开放

查看全部 Issues在 GitHub 打开

暂无开放 Issues,或尚未同步最近议题。

> 标签

Ruby

暂无评论,来聊聊你的看法吧

> 工具信息

发布日期2026年8月1日
最后更新2026年9月17日
分类编程语言
定价开源

> 相关工具

T
TypeScript
JavaScript 的超集,为前端与全栈提供静态类型
P
Python
通用编程语言,广泛用于 Web、数据与 AI
G
Go
Google 推出的简洁高效系统语言