RethinkDB:​​连接多少?

sle*_*ica 3 python tornado gevent rethinkdb

我开始接触rethinkdbpython,并采取一看不同的方法:

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

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

随着龙卷风和gevent,我应该如何以及何时建立联系?我应该有多少人?

mlu*_*ucy 5

如果您使用的是非阻塞库,则RethinkDB 2.0中的一个连接就足够了(在2.0之前,每个连接并行性较少).但是,每个连接的开销非常低.有些人为每个查询打开一个连接,即使这不是太慢,所以你应该做任何最简单的事情.

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