google-app-engine - 如何获取当前任务状态 - Google Cloud Task + App Engine (NodeJS)
问题描述
我创建了一个 App Engine 服务来对视频文件和图像进行转码。视频文件可能很大,因此需要更长的时间来处理。Cloud Tasks 看起来很合适,但我的前端客户需要在执行期间监控任务。
例如,如果用户上传了一个视频文件,我想让客户了解他们的上传进度。我真的看不到文档中的任何地方显示如何从主动执行的任务(或我可以将这些更新发送到的 API?)请求此信息。我当前的实现使用 web 套接字来传递这些信息,但是,如果许多客户端开始上传视频,这似乎无法扩展。我的想法是将任务状态存储在 NoSQL 数据库中,并在上传视频文件时将数据库任务 ID 返回给客户端。然后,我将轮询数据库以获取更新。
这是正确的还是有更好的方法?
解决方案
该方法来自不同的角度,但我的建议是移动不太可能的董事会部分。
如果您已经开发了一个 nodeJS 应用程序来执行您的视频操作,请使用通知系统或 Service Worker 之类的工具来完成它们。 https://www.youtube.com/watch?v=HlYFW2zaYQM
同时,您可以使用 PubSub 并制作有关通知/事件的完整铃声:
“摄取任何规模的事件”
数据摄取是分析和机器学习的基础,无论您是构建流、批处理还是统一管道。Cloud Pub/Sub 为您的事件数据在处理、存储和分析过程中提供了一个简单而可靠的暂存位置。
推荐阅读
- php - 节点 js,签署 utf 8 行并在 post 请求中发送
- docker-compose - 是否有其他人在 azure 管道中使用 host.docker.internal 时遇到问题
- typescript - 打字稿子类:在超类中引用派生类?
- r - GGally::ggparcoord() + geom_text() 不工作:打印数值而不是文本
- amazon-web-services - 为什么 AWS EFS 资源没有出现在 AWS Config 资源中,但它们在失败时却出现在 AWS Config 规则下?
- node.js - 无法在猫鼬查找方法中更新变量值
- r - 箱线图标记异常值使用数据行名返回错误
- python - 我如何将换行符放入列表中?
- javascript - 如何用类中的多态性替换 if/else?
- python - 如何用按顺序开始的自然数填充nan列?