2012-01-11 39 views
0

在我的应用程序中,我为我正在使用的第三方应用程序提供了一组会话。RAILS - 资源池选项?

我打算建立一个表来存储我需要的10个左右的会话细节,然后围绕这个写一个池。根据需要消灭一个未使用的连接,然后在完成时将其放回池中。

我想知道是否有任何好的包装或宝石可以为我处理这些逻辑?这听起来应该很简单,但我相信它会比我想像的要复杂得多。

任何帮助或建议非常感谢。

添加更多颜色

我正在使用的第三方应用程序(OpenTok)提供了Web会议会话。一旦你打开一个会话,你就传递了一个会话密钥(本质上只是一个字符串密钥)。该键允许您无限期地连接和断开会话。

如果你想拥有多个会话,他们建议存储这些会话并在你想打开会话时重复使用它们。

我想创建10个左右的会话,将10个会话密钥存储在一个表中,然后将这些密钥包装在这些会话中。它们可以在启动时缓存到内存中,也可以每次从表中读取。

我只是好奇,是否有任何宝石处理这种资源池化概念。在Java中,我可能使用了诸如Apache Commons之类的东西来进行池化。

+0

那么,是什么问题?你问如何池数据库连接或什么? – 2012-01-11 05:15:13

+0

不,它不是数据库连接,我把它留给Rails连接池。正如我所提到的,这些是我正在使用的第三方应用程序的会话对象。 – 2012-01-11 05:19:08

+0

那么,这是关于'锁定'数据库行呢?我怀疑那是否有宝石:-) – 2012-01-11 05:28:50

回答

1

以防万一其他人决定研究这一点。实际上有很多选择可以做到这一点。

是一些例子:

https://github.com/guyboertje/client_pool https://github.com/jugend/common-pool

+0

另外: https://github.com/mperham/connection_pool https://github.com/bpardee/gene_pool – 2012-01-12 09:04:35