繁体   English   中英

用rethinkDB打开更少的连接

[英]Opening less connections with rethinkDB

我的问题是; 使用rethindb时能否打开较少的连接? 现在,每次要插入或获取一些数据时,我都会打开一个新文件。 恐怕这不是正确的事情。 有什么方法可以只打开一个,而是使用它吗? 我正在使用nodejs。

是。 您可以在一个连接上运行多个查询。 这是推荐的处理方式。

最好的方法是使用连接池。 例如,对于nodejs,我们正在使用rethinkdb-pool

我没有研究过开源连接池以进行重新思考,但是我有一个使用重新思考的节点应用程序,它将具有有限的用户数量,因此我将一个连接保存为重新思考为全局变量,然后将其用于所有查询。

'use strict';
var r = require('rethinkdb);
var rethinkConnect = null;
r.connect(
    {
        'host': 'localhost',
        'port': '28015',
        'password': 'noneya',
    },
    function(err, conn) {
        if (err) {
            console.log(err);
        } else {
            rethinkConnect = conn;
        }
    }
);

现在,node.js服务器进行的所有查询都可以使用该连接。 请记住,此代码是异步的,因此您无法立即在r.connect()之后的下一行进行查询。 但是,您可以将入站socket.io事件的有效负载用作重新思考查询的参数。

我建议您使用rethinkdbdash ,这是“高级Node.js RethinkDB驱动程序”,其中包括连接池和其他一些高级功能。 它比rethinkdb-pool拥有更多的明星和贡献者。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM