javascript - 对话流多个并行请求处理
问题描述
我正在为我的一个应用程序中的聊天机器人处理 Dialogflow 集成。训练有素的意图,将不同的版本发布到不同的环境。到目前为止,正如预期的那样工作出色。但是当我们开始生产时,我们通过 Node.js 收到了对 Dialogflow 的并行请求。此时,收到许多超时响应并且用户没有收到配置的消息。
在 Dialogflow 中配置 webhook,并使用 detectIntent 从节点 API 获取自定义数据。
使用 Node.js:14.17.6 Dialogflow ES dialogflow 库:@google-cloud/dialogflow":"^4.5.0
得到错误:
webhookStatus: {
details: [], code: 4, message: 'Webhook call failed. Error: DEADLINE_EXCEEDED, State: URL_TIMEOUT, Reason: TIMEOUT_WEB.' }
测试信息:如果我们遇到 10 个并行 DialogflowdetectIntent
请求,至少有 5-7 个响应会timeout_web
出现上述错误。
解决方案
推荐阅读
- node.js - 为什么这个节点 setInterval 运行缓慢?
- angular - 如何将json映射到Angular中的接口对象
- python - 从相机到物体计算的opencv距离减少了4“
- python - 我有一个 400 万行的 DataFrame 并尝试将一列值从字符串转换为 JSON 并遇到内存问题。如何改进我的代码?
- flutter - setState() 不会更新 TabBarView 选项卡中的构造函数值
- javascript - CSS/JS 冲突按优先顺序排列
- apache-spark - 从多租户 Kafka 主题处理 Apache Beam 中的乱序事件窗口
- html - 父 div 比孩子大一个小的白色边框,我不知道为什么
- ios - 函数 swift 后值变为空
- android - Kotlin-Android First App Unresolved Reference TextView with Button