我在使用RethinkDB打开连接时遇到问题。如果我的Sinatra后端应用程序方法发生错误,则不会关闭与Rethink的连接。因此,打开的连接数量会逐渐增加。
这导致打开的连接太多,导致错误:
Error: the RethinkDB database is not available
所以问题是双重的:首先要帮助我;如何关闭打开的Rethink连接? 其次,如何避免开放连接的建立?我应该为每次拨打后端打开一个连接,还是应该只在我的应用启动时打开与Rethink的连接?
Rethink看起来很有希望,但是我会非常感激一点帮助!
答案 0 :(得分:0)
您可以通过调用.close
返回的连接对象上的connect
来关闭连接。只要在完成后关闭这些连接,每次打电话到后端就可以打开一个连接。 (一般来说,RethinkDB可以同时支持大量开放连接,除非它在低资源系统上运行或者OS配置为限制打开连接的数量。)
答案 1 :(得分:0)
我认为现在没有办法在RethinkDB中做到这一点。我打开了一个GitHub问题:github.com/rethinkdb/rethinkdb/issues/4873。在此期间,一个选项是使用tcpkill
(或类似的东西)来终止连接。