繁体   English   中英

处理发布长期订阅任务的pubsub订户

Handling of pubsub subscribers for distributed longrunning tasks

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

我正在评估将pubsub用于长时间运行的任务(例如视频转码)的使用,其中特定的转码可能需要2到10分钟的时间。 pubsub是这种任务分配的好方法吗? 例如,假设我有五台服务器:

- publisher1
- publisher2
- publisher3
- publisher4
- publisher5

还有一个叫做“视频”的话题。 是否有可能在这五台服务器之间平均分配消息? 何时添加或删除服务器呢? 什么是执行此操作的好方法,或者pubsub不是执行此类操作的正确工具?

1 个回复

听起来确实是pubsub的合理用例。 具体来说,如果您使用请求订阅者,则可以配置流控制设置,以至多向您的服务器发送一条未处理的消息,并将max ack扩展周期(以Java为单位)配置为合理的处理时间上限。 此处介绍了此api, 网址为http://googleapis.github.io/google-cloud-java/google-cloud-clients/apidocs/index.html?com/google/cloud/pubsub/v1/package-summary.html

如果您对所有作业使用相同的订户ID,则默认情况下,这应该在整个服务器上有效地实现负载平衡。 如果添加了服务器并且存在积压,它将收到一个新条目。 如果服务器被删除,将不再发送消息。 如果在处理或崩溃时将其删除,则正在处理的消息将重新发送到另一台服务器。

但是,一个担忧是pubsub的每条消息限制为10MB。 您可能会考虑将数据本身放入Google云存储桶中。 上传完成后,云存储可以将文件位置发布到pubsub主题。 https://cloud.google.com/storage/docs/pubsub-notifications

1 Ruby on Rails-分布式任务

我正在计划编写一个Rails应用程序,该应用程序会将任务分配给不同计算机上的多个工作人员。 我正在尝试查看可使用的不同技术/宝石,但是我无法确定哪种组合最适合我的需求。 到目前为止,这是我所知道的。 该应用程序将需要具有容错能力,并且不会丢失任务(即使强制关闭了工作器)。 任务数量不 ...

2 MSMQ,分布式拓扑,pubsub-队列配置问题

我正在尝试使用msmq和rhino.esb设置发布子。 我在一台服务器上有发布者,另一台服务器上有订阅者。 在将所有内容都设置为localhost的本地运行时,它可以正常工作。 我的问题是-如果这是我为本地发布者配置的: 总线和消息队列均为本地主机。 当它们在单独的计算机 ...

3 用于分布式状态管理的 Google PubSub 队列

我有n个工作依赖的资源。 每个来源在 Google PubSub 中都有一个单独的主题; 当一个源被更新时,它会在相应的主题订阅中发送一条消息。 当所有源都更新后(即,当每个订阅中至少有一条新消息时),作业就可以开始了。 作业安排在气流中。 DAG 从一系列并行任务开始,每个订阅检查一个新消息是否 ...

4 Akka.net中Distributed Pubsub的订户管理

考虑群集中具有许多内部角色的节点。 许多演员使用Distributed Pub / Sub订阅共同主题。 群集中另一个节点中的actor正忙于将消息发布到公共主题上。 pub / sub系统是否会将一条消息发布到包含“many actors”的节点,然后从那里通过节点在内部分发消息。 ...

5 在 Google Functions 中处理 Pubsub 消息

我正在学习 Google 云功能,并将它们设置为由放置在队列中的消息触发。 我想我真的没有掌握这里的一些概念,因为我有一堆问题并且在任何地方都找不到答案。 有很多解释函数和客户端的例子,但我还没有找到将两者合并的例子。 函数由主题触发,而不是由订阅触发。 这个很奇怪,因为单个主题可以有多个订阅 ...

6 适用于Azure上的规模化发布者和规模化订阅者的SignalR或Redis pubsub

在我们的应用程序中,有一个事件发射器(窗口服务A),它在队列中发射事件。 有一个通知服务(B)(托管在云中的窗口服务),该服务从队列中读取这些事件,并基于配置的规则,向Web应用程序(C)上已登录的用户发送通知。 我们计划在Web浏览器和Web应用程序(C)之间使用signalR。 但 ...

7 进程组和分布式任务的“分布式”部署

因此,我有一个以下两个问题的练习: [A]部署 一个人想从一个运行脚本的进程“部署”到一组四个进程的“下方”。 在“下”运行的第一个进程将创建一个在“下”运行的子进程,该子进程本身将在“下”创建第三个进程,依此类推,直到四个进程组成“下”。 约束条件是该组最多可以有四个进 ...

8 具有优先级的分布式任务执行的体系结构

我们正在研究创建用于任务执行的分布式系统 ,其中任务在.NET(C#)中具有优先级 。 有很多选择,我希望您对此有所了解。 选项及其缺点是: 1) 亚马逊的SWF (简单工作流)-在.NET中,我们不能使用诸如Java的FLOW这样的框架来简化。 这意味着很多样板代码。 此外,亚马 ...

9 如何跟踪分布式任务的进度

这是我的情况: 当我的服务器接收到请求时,它将触发分布式任务,在我的情况下,它将执行许多AWS lambda函数(窥视值可能是3000) 我需要跟踪每个任务的进度/状态,即挂起,运行,成功,错误 我的服务器可能有很多副本 我仍然想知道任务进度/状态,即使我的任何 ...

10 任务分布在 2 个代理之间

我有几个任务(任务 1,任务 2 ......)必须由 2 个代理按顺序完成: 我想要的是两者之间的任务平均分担。 在目前的情况下,我不知道有多少任务,因为它们可能以不同的时间间隔发生。 每个代理的执行时间与这种情况无关。 我感兴趣的是任务在 2 个代理之间均匀分布,它们之间随机是不够的。 ...

暂无
暂无

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

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