• 2024-06-23Java8 Consumer、Supplier、Predicate、Function
    今天我们还讲讲Consumer、Supplier、Predicate、Function这几个接口的用法,在Java8的用法当中,这几个接口虽然没有明目张胆的使用,但是,却是润物细无声的。为什么这么说呢?这几个接口都在java.util.function包下的,分别是Consumer(消费型)、supplier(供给型)、predicate(谓词型)、functi
  • 2024-06-23RocketMQ 基础教程-系统架构
    作者简介:大家好,我是smart哥,前中兴通讯、美团架构师,现某互联网公司CTO联系qq:184480602,加我进群,大家一起学习,一起进步,一起对抗互联网寒冬学习必须往深处挖,挖的越深,基础越扎实!阶段1、深入多线程阶段2、深入多线程设计模式阶段3、深入juc源码解析阶段4、深入jdk其余源码解析
  • 2024-06-22RocketMQ的安装和原理
    .RocketMQ的安装一.RocketMQ安装1.1.下载RocketMQ下载地址:http://rocketmq.apache.org/release_notes/release-notes-4.2.0/下载后解压Bin:可执行文件目录config:配置文件目录Lib:依赖库,一堆Jar包1.2.配置ROCKETMQ_HOME解压压缩包,配置ROCKETMQ_HOME1.3.
  • 2024-06-09rabbitmq单机安装及性能测试
    RabbitMQ单机安装及性能测试本文使用CentOS7.9安装RabbitMQ单机环境,并进行性能测试。1.安装RabbitMQRabbitMQ依赖Erlang,版本配套关系参考官网:https://www.rabbitmq.com/docs/which-erlang。本文安装RabbitMQ3.8.21,Erlang版本要求为23.2~24.2。#卸载通过yum源安装的erlang,
  • 2024-06-09RocketMQ教程(三):RocketMQ的核心组件
    四个核心组件RocketMQ的架构采用了典型的分布式系统设计理念,以确保高性能、高可用和可扩展性。RocketMQ主要由四个核心组件构成:NameServer、Broker、Producer和Consumer。下面是对这些组件以及它们在RocketMQ中的角色和功能的概述:1.NameServer角色和功能:NameServer
  • 2024-06-08深入解析Kafka消息丢失的原因与解决方案
    深入解析Kafka消息丢失的原因与解决方案ApacheKafka是一种高吞吐量、分布式的消息系统,广泛应用于实时数据流处理。然而,在某些情况下,Kafka可能会出现消息丢失的情况,这对于数据敏感的应用来说是不可接受的。本文将深入解析Kafka消息丢失的各种原因,包括生产者、broker和消费
  • 2024-05-23Java练习(并发模式)
    设计一个简单的生产者-消费者模型,其中生产者负责生成数据,消费者负责处理数据。为了在生产者和消费者之间传递数据,使用一个有界缓冲区(例如,`ArrayBlockingQueue`)作为它们之间的通信通道。要求:1.创建一个`Producer`类,该类包含一个`produce()`方法,用于生成数据。生成的数据应该
  • 2024-05-21基于Springboot的rabbitTemplate的Publisher和Consumer初始化
    Publisher初始化的bean(声明new 的queue或者exchange)不会连接broker(Rabbit),在开始rabbitTemplate.convertAndSend时才会连接。消息发布到没有声明的exchange会报错,声明exchange和queue,Rabbit会创建,如果没有的话。如果exchange没有绑定queue,消息(默认false)会被抛弃。如果exc
  • 2024-05-08微服务Spring Cloud17_Feign9
    在前面的学习中,使用了Ribbon的负载均衡功能,大大简化了远程调用时的代码:如果就学到这里,你可能以后需要编写类似的大量重复代码,格式基本相同,无非参数不一样。有没有更优雅的方式,来对这些代码再次优化呢?这就是接下来要学的Feign的功能了。 一、简介Feign也叫伪装:Feign可以把Re
  • 2024-05-08微服务Spring Cloud17_负载均衡Ribbon6
    一、概述在刚才的案例中,我们启动了一个user-service,然后通过DiscoveryClient来获取服务实例信息,然后获取ip和端口来访问。但是实际环境中,往往会开启很多个user-service的集群。此时获取的服务列表中就会有多个,到底该访问哪一个呢?一般这种情况下就需要编写负载均衡算
  • 2024-05-02kafka消费者提交方式(代码演示)
    自动提交,手动提交(异步提交,同步提交,异步同步结合提交),原理:提交后,重新消费消息位移发生变化。1publicclassMyConsumer{23privatestaticKafkaConsumer<String,String>consumer;4privatestaticPropertiesproperties;56static{7
  • 2024-04-25RocketMQ顺序消息
    什么是顺序消息顺序消息指的是,严格按照消息的发送顺序进行消费的消息(FIFO)。默认情况下生产者会把消息以RoundRobin轮询方式发送到不同的Queue分区队列;而消费消息时会从多个Queue上拉取消息,这种情况下的发送和消费是不能保证顺序的。但是如果控制发送的顺序消息只依次发送到
  • 2024-04-21kettle从入门到精通 第五十三课 ETL之kettle MQTT/RabbitMQ consumer实战
    1、上一节课我们学习了MQTTproducer生产者步骤,MQTTconsumer消费者步骤。该步骤可以从支持MRQTT协议的中间件获取数据,该步骤和kafkaconsumer一样可以处理实时数据交互,如下图所示: 2、双击步骤打开MQTTconsumer配置窗口,如下图所示:Stepname:自定义步骤名称。Transformat
  • 2024-04-17微服务Spring Cloud17_微服务场景模拟4
    首先,我们需要模拟一个服务调用的场景。方便后面学习微服务架构 一、创建父工程微服务中需要同时创建多个项目,为了方便课堂演示,先创建一个父工程,然后后续的工程都以这个工程为父,实现maven的聚合。这样可以在一个窗口看到所有工程,方便讲解。在实际开发中,每个微服务可独立一个
  • 2024-04-11Springcloud学习笔记63---RocketMq超时重试,导致重复消费的问题,解决方案
    1.重复消费的背景当Consumer处理时间过长,在超时时间内没有返回给Broker消费状态,那么Broker也会自动重试。设定一个超时时间,达到超时时间的那个消费当作消费失败处理。Java客户端中的DefaultPushConsumer中的构造方法中的consumeTimeout字段(默认15分钟)。packagewilliam.rmq.
  • 2024-04-09Kafka 进阶
    1、为什么有消息系统解耦合异步处理例如电商平台,秒杀活动。一般流程会分为:1:风险控制、2:库存锁定、3:生成订单、4:短信通知、5:更新数据通过消息系统将秒杀活动业务拆分开,将不急需处理的业务放在后面慢慢处理;流程改为:1:风险控制、2:库存锁定、3:消息系统、4:生成订单、5:短信通知
  • 2024-04-08Kafka 集群架构
    Kafka集群架构设计旨在提供高吞吐量、低延迟、容错性和可扩展性的消息传递服务。以下是Kafka集群架构的关键组成部分及其工作原理:核心组件BrokerBroker是Kafka集群中的一个独立服务器实例。每个Broker负责维护一部分Topic的Partition,并提供消息的接收、存储、检索和转发
  • 2024-04-08centos 安装 rocketmq
    本文用到的安装包和可视化,链接:百度云或者去官网自行下载,注:官网的可视化需要添加pom.xml依赖,我贴在下方了。安装包可视化<dependency><groupId>javax.xml.bind</groupId><artifactId>jaxb-api</artifactId><version>2.3.0</vers
  • 2024-04-07Kafka原理剖析之「位点提交」
    一、背景Kafka的位点提交一直是Consumer端非常重要的一部分,业务上我们经常遇到的消息丢失、消息重复也与其息息相关。位点提交说简单也简单,说复杂也确实复杂,没有人能用一段简短的话将其说清楚,最近团队生产环境便遇到一个小概率的报错“Offsetcommitfailedwitharetriablee
  • 2024-03-25常见终结操作方法
    packagecom.zxr.stream;importjava.util.ArrayList;importjava.util.function.Consumer;publicclassTest04{publicstaticvoidmain(String[]args){ArrayList<String>list=newArrayList<>();list.add("张三丰");
  • 2024-03-23MQ集合了
    消息队列,FIFO :异步 解耦  削峰复杂度上升幂等重复消费消息丢失/可用性降低mq故障/一致性要求mq对比: activeMQ:jms规范,支持事务xa协议  rabbitMQ:erlang性能
  • 2024-03-21python操作kafka
    目录一、python操作kafka1.python使用kafka生产者2.python使用kafka消费者3.使用docker中的kafka二、python操作kafka细节2.1生产者demo2.2消费者demo2.3消费者(消费群组)2.4消费者(读取目前最早可读的消息)2.5消费者(手动设置偏移量)2.6消费者(订阅多个主题)
  • 2024-03-20kafka面试题 1
    kafka面试题1简介kafka是一个分布式发布-订阅消息系统和一个强大的队列,可以处理大量的数据,并使你能够将消息从一个端点传递到另一个端点,kafka适合离线和在线消息消费,kafka消息保留在磁盘上,并在集群内复制以防止数据丢失,kafka构建在zookeeper同步服务上,他与ApacheStorm
  • 2024-03-14Python使用RocketMQ(消息队列)
    消息队列在日常开发中比较常用的开发中间件,每家大厂一般都会具有自己的消息队列服务器。本文主要讲述Python中如何使用RocketMQ的相关SDK。希望大家在阅读本文前可以先了解一下RocketMQ的基本知识。使用 pipinstallrocketmq-ihttps://pypi.tuna.tsinghua.edu.cn/sim
  • 2024-03-06【Event Hub】消费消息时遇到Azure.Messaging.EventHubs.EventHubsException(QuotaExceeded) 错误的解决之法
    问题描述使用EventHubConsumerClient消费EventHub的消息时,遇见Azure.Messaging.EventHubs.EventHubsException(QuotaExceeded):Exceededthemaximumnumberofallowedreceiversperpartitioninaconsumergroupwhichis5.”异常。代码片段为:...privatestaticStr