python - RethinkDB:​​有多少连接?

标签 python tornado gevent rethinkdb

我从 python 中的 rethinkdb 开始,看看不同的方法:

  1. 线程阻塞方法
  2. 使用 Tornado 的非阻塞、基于回调的方法>
  3. 使用 gevent 的基于 Greenlet 的方法>

在第一种情况下,自然要做的是给每个线程一个connection对象。然而,在第二和第三种情况下,我不太明白。

对于 tornado 和 gevent,我应该如何以及何时创建连接?我应该带多少个?

最佳答案

如果您使用的是非阻塞库,则在 RethinkDB 2.0 中一个连接就足够了(在 2.0 之前,每个连接的并行度较低)。不过,每个连接的开销非常低。有些人每次查询都打开一个连接,即使这样也不会太慢,所以您应该做最简单的事情。

编辑:这个建议现在已经过时了。对于较新版本的 RethinkDB,强烈建议每个查询使用一个连接。每个线程一个连接仍然没问题。

关于python - RethinkDB:​​有多少连接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29723704/

相关文章:

Python 类型错误 : not enough arguments for format string

python - 返回负数的数字列表

python - 是否可以从具有相同名称的查询字符串中获取值?

python - 在 Gevent 中查找 JoinableQueue 的长度

python - 如何让多个 gevent 服务器永远服务?

python - 为什么我不必使用 range() 在 for 循环中定义变量,但我必须在 Python 的 while 循环中定义变量?

Python3 : Resize rectangular image to a different kind of rectangle, 保持比例并用黑色填充背景

python - 如何设置 WSGI 服务器以类似于 Apache 的方式运行?

javascript - ( Tornado )按下按钮时如何将参数传递给服务器?

Python - 如何捕获gevent套接字超时异常