当ArangoDB需要从服务器中获取数据时,若在规定时间内没有收到响应,则会抛出“Read timed out”异常,此时需要重新设置读取超时时间或者优化查询以避免超时异常的发生。
以下是一些可能有用的代码示例:
1.重新设置读取超时时间
const database = new Database('http://localhost:8529', {timeout: 20000}); //设置超时时间为20秒
2.优化查询以避免超时异常的发生
const query = FOR doc IN collection FILTER doc.age > 20 LIMIT 10 RETURN doc
; //过滤年龄大于20岁的文档
const db = new Database('http://localhost:8529');
try { const cursor = await db.query(query, { batchSize: 100 }); const result = await cursor.all(); console.log(result); } catch (err) { console.error('查询失败', err); }
通过在查询中添加限制条件,可以降低查询时间并避免超时异常的发生。如果查询结果仍需要进一步的处理,可以考虑调整批量大小以确保流畅的读取和处理。