如何在RethinkDB中执行查询后打印服务器执行时间和查询时间?

时间:2015-04-06 14:31:37

标签: rethinkdb reql

在执行Javascipt中的查询完成后,有没有简单的方法可以打印服务器时间往返时间?我在webadmin中看过这个,但在API中找不到。对于Query的基准测试目的,我们应该考虑哪一个?

2 个答案:

答案 0 :(得分:2)

增加Jorge关于测量往返时间的答案: 您可以从查询配置文件中获取服务器时间。这也是数据资源管理器(Web UI)使用的内容。

必须通过将{profile: true} optarg传递到run来启用性能分析。 因此,您会在profile字段中获得包含个人资料的对象,并在结果的value字段中显示查询结果。

例如在JavaScript中:

r.expr("test query").run(conn, {profile: true}, function(err, result) {
   var serverTime = result.profile[0]['duration(ms)'];
   console.log(serverTime);
 });

答案 1 :(得分:1)

对于往返时间,您可以使用.time.timeEnd方法来使用控制台。

示例:

console.time('query');
r.table('table_name')
 .filter({ name: 'jorge' })
 .run(conn)
 .then(function (cursor) {
   console.timeEnd('query');
 });

您可以在MDN中找到这些方法的文档:

https://developer.mozilla.org/en-US/docs/Web/API/Console/time

https://developer.mozilla.org/en-US/docs/Web/API/Console/timeEnd