- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我有一个将数据写入 Google Cloud pubsub 的应用程序,根据 pubsub 的文档,由于重试机制导致的重复是偶尔会发生的事情。还有乱序消息的问题,这在 pubsub 中也不能保证。
另外,根据文档,可以使用 Google Cloud Dataflow 对这些消息进行重复数据删除。
我想让这些消息在消息队列(意思是云 pubsub)中可用以供服务使用,云数据流似乎有一个 pubsubio 编写器但是你不会回到完全相同的问题写入到pubsub 可以创建重复项吗?这不也是与订单相同的问题吗?如何使用 pubsub(或与此相关的任何其他系统)按顺序流式传输消息?
是否可以使用云数据流从一个 pubsub 主题读取并写入另一个 pubsub 并保证没有重复?如果不是,您会怎么做以支持流式传输相对少量的数据?
此外,我对 Apache beam/Cloud Dataflow 还很陌生。这样一个简单的用例会是什么样子?我想我可以使用 pubsub 本身生成的 ID 进行重复数据删除,因为我让 pubsub 库进行内部重试而不是自己进行重试,因此重试时 ID 应该相同。
最佳答案
Cloud Dataflow/Apache Beam 是 Mac 卡车。它们专为大型数据源/流的并行化而设计。您可以向 PubSub 发送大量数据,但检测重复不是 Beam 的工作,因为此任务需要序列化。
阅读 PubSub 然后写入不同的主题并不能消除重复的问题,因为重复可能发生在您正在写入的新主题上。此外,队列写入的并行化进一步增加了乱序消息的问题。
重复的问题需要在从订阅读取的客户端上解决。一个简单的数据库查询可以让您知道某个项目已被处理。然后你就丢弃这条消息。
处理乱序消息也必须设计到您的应用程序中。
PubSub 被设计成一个轻量级的廉价消息队列系统。如果您需要有保证的消息排序、无重复、FIFO 等。您将需要使用不同的解决方案,这当然要昂贵得多。
关于message-queue - 可以使用数据流将 pubsub 消息重复数据删除回 pubsub 吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/55111375/
我试图弄清楚以下模块正在做什么。 import Queue import multiprocessing import threading class BufferedReadQueue(Queue.
如果我使用 Queue.Queue,那么我的 read() 函数不起作用,为什么?但是,如果我使用 multiprocessing.Queue,它运行良好: from multiprocessing
我正在寻找比我在文档中找到的更多关于 Python 队列实现的见解。 根据我的理解,如果我在这方面有误,请原谅我的无知: queue.Queue():通过内存中的基本数组实现,因此不能在多个进程之间共
当我使用多处理模块(Windows 上的 Python 2.7)中的队列代替 Queue.Queue 时,我的程序没有完全关闭。 最终,我想使用 multiprocessing.Process 处理
阅读了大量的 JavaScript 事件循环教程,我看到了不同的术语来标识队列存储消息,当调用堆栈为空时,事件循环准备好获取消息: 队列 消息队列 事件队列 我找不到规范的术语来识别它。 甚至 MDN
我收到错误消息“类型队列不接受参数”。当我将更改队列行替换为 PriorityQueue 时,此错误消失并且编译正常。有什么区别以及如何将其更改为编译队列和常规队列? import java.util
如何将项目返回到 queue.Queue?如果任务失败,这在线程或多处理中很有用,这样任务就不会丢失。 docs for queue.Queue.get()说函数可以“从队列中删除并返回一个项目”,但
如何在多个 queue.Queue 上进行“选择”同时? Golang 有 desired feature及其 channel : select { case i1 = 声明。 线程:queue 模
http://docs.python.org/2/library/queue.html#Queue.Queue.put 这似乎是一个幼稚的问题,但我在文档和谷歌搜索中都没有找到答案,那么这些方法是线程
这可能是个愚蠢的问题,但我对与 .dequeue() 和 $.queue() 一起使用的 .queue() 感到困惑> 或 jquery.queue()。 它们是否相同,如果是,为什么 jquery
我正在尝试创建一个线程化的 tcp 流处理程序类线程和主线程对话,但是 Queue.Queue 也没有做我需要的,服务器从另一个程序接收数据,我只想传递它进入主线程进行处理这里是我到目前为止的代码:
The principal challenge of multi-threaded applications is coordinating threads that share data or ot
在Queue模块的queue类中,有几个方法,分别是qsize、empty 和 full,其文档声称它们“不可靠”。 他们到底有什么不可靠的地方? 我确实注意到 on the Python docs网
我需要一个队列,多个线程可以将内容放入其中,并且多个线程可以从中读取。 Python 至少有两个队列类,Queue.Queue 和 collections.deque,前者似乎在内部使用后者。两者都在
明天我将介绍我选择进程内消息队列实现的基本原理,但我无法阐明我的推理。我的合作设计者提议我们实现一个简单的异步队列,只使用基本的作业列表和互斥锁来控制访问,我建议在嵌入式模式下使用 ActiveMQ。
在 scala 中定义了一个特征: trait Queue[T] Queue 是一种类型吗?或其他东西,例如类型构造函数? 来自 http://artima.com/pins1ed/type-para
我看到 SML/NJ 包含一个队列结构。我不知道如何使用它。如何使用 SML/NJ 提供的附加库? 最佳答案 Queue structure SML '97 未指定,但它存在于 SML/NJ 的顶级环
我是 D3 和 JavaScript 的新手。 我试图理解其中的 queue.js。 我已经完成了 this关联。但是仍然无法清楚地了解 queue.await() 和 queue.awaitAll(
所以我试图在我的 main.cpp 文件中调用一个函数,但我得到“错误:没有匹配函数来调用‘Queue::Queue()。” 队列.h #ifndef QUEUE_H #define QUEUE_H
假设我有一个 10 行的二维 numpy 数组 例如 array([[ 23425. , 521331.40625], [ 23465. , 521246.03125],
我是一名优秀的程序员,十分优秀!