消息队列教程

     

Go中使用Redis实现消息队列教程

69 9K

Redis 和 Golang这对充满活力的组合将彻底改变我们处理消息系统的方式。Redis 作为内存数据存储以其速度和多功能性而闻名,它与 Golang(一种以其简单性和高性能而闻名的语言)无缝协作,.

Kafka中手工提交偏移量的4种方法

60 5K

在Kafka中,消费者从分区读取消息。在读取消息时,需要考虑一些问题,例如确定从分区中读取哪些消息,或者防止重复读取消息或在发生故障时丢失消息。解决这些问题的方法是使用偏移量。在本教程中,我们将了解 .

Redpanda简介

71 10K

在本教程中,我们将讨论一个名为Redpanda的强大事件流平台。这是对事实上的行业流媒体平台Kafka 的竞争,有趣的是,它还与 Kafka API 兼容。我们将了解 Redpanda 的关键组件、功.

Hatchet:Python中分布式、容错任务队列

52

这是一个分布式、容错的任务队列开源项目。Hatchet 取代了难以管理的遗留队列或发布/订阅系统,因此您可以设计持久的工作负载,从故障中恢复并解决并发性、公平性和速率限制等问题。您可以使用 Hatch.

Go中使用消息队列实现微服务之间异步数据处理

45 16K

在本文中,我们将深入研究微服务架构的世界,其中每个服务代表一个能够与其他服务协同工作的自治实体。但是如何在这样一个动态环境中管理数据呢?这正是异步成为我们盟友的地方。我们将探讨为什么异步数据处理对于微.

Java运行时添加Camel路由

71 8K

Apache Camel是一个 Java 框架,可以轻松实现各种企业集成模式 (EIP),从而为企业集成提供解决方案。集成模式中的常见任务之一是根据特定规则和条件确定运行时的消息路由。Apache C.

Python中使用Postgres用于队列的实现代码

47 3K

事件表:id   | status   | updated_at------------------------------------------UUID | SMALLINT | TIMESTAM.

Java中多线程异步读写文件

76 7K

当涉及到 Java 中的文件处理时,管理大文件而不引起性能问题可能具有挑战性。通过使用两个线程,我们可以在不阻塞主线程的情况下高效地读与写文件。通过多线程同时执行多个文件操作,利用多核处理器以及将 I.

什么是事件驱动编程范式?

81

事件驱动编程是一种范例,其中程序的执行由用户操作或消息等事件决定。程序通过预定义的操作响应事件,从而允许异步和响应行为,这在 GUI 应用程序和分布式系统中常见。事件驱动编程范式的优点 实现异步处理,.

Java中的ArrayBlockingQueue教程

65 15K

ArrayBlockingQueue 是 Java 中一个强大的并发集合,它提供了阻塞队列的线程安全实现。这种数据结构在多线程需要以生产者-消费者模式进行通信和交换数据的场景中特别有用。在这篇博文中,.

GoLang中后台作业终极指南

105 15K

在这篇博文中,我们将探讨GoLang、Redis和 Gocraft的强大组合,以及它们如何将您的Web 开发项目提升到一个新的水平。 GoLang是一种流行的编程语言,以其速度、并发性和效率而闻名,通.

Solid Queue:Ruby中基于数据库的后端队列作业系统

84

Solid Queue 是一个基于数据库的Active Job队列后端,设计时考虑到了简单性和性能。除了常规作业排队和处理之外,Solid Queue 还支持延迟作业、并发控制、暂停队列、每个作业的数.

使用 POSTGRES 作为消息队列

303 6K

本文研究了 Postgres 的轻量级通知机制,并讨论如何利用它来实现简单但有效的基于推送的消息队列。它还研究了使用此队列在 Kubernetes 部署上的副本之间进行通信,以及实现通用任务处理框架。.

KIP-932:Kafka用作一个简单的队列

74

简单队列要求:无消息排序要求想使用Kafka作为一个简单的队列?有了新的KIP-932:引入共享(消费者)群体之前的Kafka消费者组Kafka常规消费者组非常适合可伸缩性和保持消息顺序两种选择。 保.

LMAX Disruptor 4.0.0 发布

329

LMAX Disruptor是高性能线程间消息传递库: 现在最低 Java 版本为 11 问题#323 -WorkerPool已WorkProcessor被删除,不再存在Disruptor::hand.

Java 中使用 wait、notify、notifyAll快速指南

194 10K

首先,你永远不应该直接使用wait, notify, 或notifyAll(除非你有充分的理由)。如果您需要执行多线程操作,请使用并发库。使用 wait/notify/notifyAll 构建生产者/.

Spring Modulith增加事件外部化的支持

373 2K

SpringBoot应用程序的事务绑定发件箱模式 实现,专门基于Kafka、AMQP和JMS的代理。应用程序模块之间交换的一些事件可能对外部系统感兴趣。Spring Modulith 允许将选定的事件.

一张图比较:RabbitMQ、Kafka和ActiveMQ

574
RabbitMQ: 基于Erlang构建 支持多种协议,包括AMQP、MQTT和STOMP。 以开发人员友好而闻名。 非常适合多个消费者的复杂路由。 Kafka: 基于Scala和Java构建  高度.

EDA中事件内容的设计权衡

387

用例:下订单。成功下订单后(付款成功并且向餐厅成功下订单后),订单服务会发布一个事件:食品配送合作伙伴服务,用于安排送货人员到达餐厅、挑选食物并将订单配送到用户的地址将积分记入用户帐户的忠诚度服务通知.

本周Github有趣项目、工具和库(BlazingMQ等)

555

有趣的项目、工具和库:1、BlazingMQBlazingMQ 是一个开源分布式消息队列框架,专注于现代工作流程的效率、可靠性和丰富的功能集。2、EmailFlare通过 Cloudflare 免费从.

DDD领域语言对云架构设计的重要性 - architectelevator

374 5K

近年来,人们对领域驱动设计 (DDD) 的兴趣激增,正如DDD Europe等热门活动和Learning Domain-Driven Design等书籍所表明的那样。虽然对复杂业务领域进行建模对于成功.

类似“银联”的美国银行间即时支付系统FedNow上线

382 2K

美联储周四宣布,其新的即时支付系统 FedNow 服务现已上线。各种规模的银行和信用社都可以注册并使用这一工具,在一年中的任何一天的任何时间为客户即时转账。首先,35 家早期采用的银行和信用社以及美国.

如何选择使用API或消息传递 ?

541 2K

让我们首先看看API,它似乎是最主要的选择:APIAPI定义了允许两个应用程序相互通信的契约。这种契约的形式是服务器承诺提供的协议和样式,而客户应该遵守。API一种主要风格是REST,它在这种面向服务.

跨微服务共享公共数据如何实现?

657 1

在微服务设计过程中,经常出现的一个共同点和要求是共享共同数据。而这个问题在微服务之间的异步消息驱动通信(使用Kafka)中变得更加有趣了例如,微服务1有一些数据。微服务2和3想要访问这些数据。我看到了.

事件总线和消息队列的区别

1666 3K

了解事件总线 Event Bus 和消息队列 Message Queue 之间的差异可以帮助架构师和开发人员根据他们的特定需求决定使用哪种模式。在本文中,我们将探讨 Event Bus 和 Messa.

《KIP-932:Queues for Kafka》于7天前发布。

348

Kafka的队列Queues 是目前讨论的最热门的新功能!传统的队列系统是这样一种系统: - 多个消费者从同一队列读取(pub-sub) - 一个特定的消费者从一个特定的生产者读取(点对点) 消息通常.

为什么我们放弃 RabbitMQ 并用 Postgres 队列取而代之?

833 1 2K

我们最近从我们的系统中删除了 RabbitMQ,并将其替换为构建在我们的 Postgres 数据库之上并用 SQL 编写的队列。它极大地提高了我们系统的可靠性和弹性。这是对这一变化、其背后的基本原理以.

使用Kafka 和 Spring Boot 实现并发编程

601 14K

本文将教您如何使用 Spring Boot 和 Spring for Kafka 为 Kafka 消费者配置并发。Spring for Kafka 的并发与Kafka 分区和消费者组密切相关。消费者组.

Meta自适应LIFO概念

588

Facebook在队列中使用了自适应LIFO的概念: - 它们在正常情况下使用FIFO顺序 - 他们在高负荷下改用后进先出顺序 理由呢?通过在高负载下保持FIFO顺序,用户可能已经放弃了他们的请求。因.

Redis、Kafka 与 RabbitMQ 对比

799 3 3K
当为微服务使用异步通信时,通常使用消息代理。代理确保不同微服务之间的通信可靠和稳定,消息在系统内得到管理和监控,并且消息不会丢失。您可以选择一些消息代理,它们的规模和数据功能各不相同。这篇博文将比较三.