ICode9

精准搜索请尝试: 精确搜索
  • 我的架构梦:(八十八)消息中间件之Kafka如何保证幂等性2021-02-12 18:01:21

    一、幂等性 保证在消息重发的时候,消费者不会重复处理。即使在消费者收到重复消息的时候,重复处理,也要保证最终结果的一致性。 所谓幂等性,数学概念就是: f(f(x)) = f(x) 。f函数表示对消息的处理。 比如,银行转账,如果失败,需要重试。不管重试多少次,都要保证最终结果一定是一致的

  • JAVA代码之RocketMQ生产和消费数据2021-02-07 16:02:21

      二、生产和消费数据 生产:下载 package cn.cn.mq.demo;   import java.util.concurrent.TimeUnit;   import com.alibaba.rocketmq.client.exception.MQClientException; import com.alibaba.rocketmq.client.producer.DefaultMQProducer; import com.alibaba.rocketmq.clie

  • Kafka-produce(发送者)2021-02-04 19:32:24

    再回头只能怀念,再见了,马银霜,真的好爱你 produce是kafka的消息发送者,负责将消息发送到kafka代理服务器(broker)指定的topic下的某个partition 一:消息的分布 假设现在一个topic下有两个partition,下面是一个produce按照顺序发送四条消息之后,partition中的情况 可以看到消息是大致

  • RabbitMQ工作模式和代码实现备忘录2021-02-03 11:03:33

    Official website of RabbitMQ: https://www.rabbitmq.com/ work pattern of RabbitMQ: https://www.rabbitmq.com/getstarted.html     pattern-one:simple pattern   Producer-code: public class Producer { static final String QUEUE_NAME = "simple_queue&qu

  • Kafka 如果丢了消息,怎么处理的?2021-01-31 10:32:15

    Kafka存在丢消息的问题,消息丢失会发生在Broker,Producer和Consumer三种。 Broker Broker丢失消息是由于Kafka本身的原因造成的,kafka为了得到更高的性能和吞吐量,将数据异步批量的存储在磁盘中。消息的刷盘过程,为了提高性能,减少刷盘次数,kafka采用了批量刷盘的做法。即,按照一定的消息

  • RocketMQ2021-01-23 16:34:18

    1 导入坐标 <!--rocket mq --> <dependency> <groupId>org.apache.rocketmq</groupId> <artifactId>rocketmq-client</artifactId> <version>4.8.0</version> <

  • springboot集成kafka实现producer和consumer2021-01-23 11:57:55

    本文介绍如何在springboot项目中集成kafka,定义producer生产message,以及consumer消费message。 一、在pom配置文件中添加spring-kafka集成包 <dependency> <groupId>org.springframework.kafka</groupId> <artifactId>spring-kafka</artifactId> <version&g

  • Golang 实现nsq2021-01-22 11:35:38

    //生产者 package main import ( "bufio" "fmt" "github.com/nsqio/go-nsq" "os" "strings" ) var producer *nsq.Producer //初始化生产者 func initProducer(str string) (err error){ config := nsq.NewConfig() pro

  • rabbitMq完整通信(一)---producer2021-01-21 17:03:27

      application.properties: server.port=8080 spring.application.name=producer spring.rabbitmq.host=127.0.0.1 spring.rabbitmq.port=5672 spring.rabbitmq.username=guest spring.rabbitmq.password=guest 最后是pom   先创建两个队列: package com..direct; import org

  • 如何让Kafka在保证高性能、高吞吐的同时通过各种机制来保证高可用性?2021-01-19 15:58:23

    目录 一、幂等性1.场景 二、事务1.场景2.前期准备3.案例解析 三、控制器1.ZooInspector管理 四、可靠性保证1. 失效副本2.副本复制1.Leader Epoch引用2.Kafka 0.11.0.0.版本解决方案 六、消息重复的场景及解决方案1.生产者端重复2.消费者端重复 七、__consumer_offsets1.何

  • 从架构的角度看Kafka(四)2021-01-15 15:58:31

    本文章内容皆出自作者阅读胡夕著Apache Kafka 实战一书的总结,可能有理解错误,仅作为参考。如有侵权,笔者将会删除它们。   注:这篇文章是Kafka文章的第三篇,笔者建议从头看,如果读者感兴趣可以先看第三篇 从架构的角度看Kafka(三)   注:这篇文章是基于Kafka 10.0.0,如果读者的

  • 使用 Zendesk maxwell 对接 kinesis (include producer and consumer)2021-01-13 17:03:26

    之前有写过对接 kafka 的教程,kinesis 作为 aws 的 MQ 中间件,在国外公司以及使用 aws 体系的公司有非常重要的地位。 因为对比 kafka 使用 aws 提供的 kinesis 不仅可以大幅节约成本,而且可以非常方便的通过调整 shards 去平衡处理能力和费用。(shards 的概念有点类似 kafka 里面的

  • 50-10-010-配置-整体配置2021-01-06 22:00:57

    文章目录 1.视界 1. server.properties producer.properties 3.4. Connect Configs 3.5.Kafka Streams Configs 3.6.AdminClient Configs Listeners `advertised.host.name` 1.视界 1. server.properties 意义: 类型: 默认值: zookeeper.connect

  • webservice和jms的区别2021-01-04 22:02:11

    Webservice专注于远程服务调用,jms专注于信息交换。 大多数情况下Webservice是两系统间的直接交互(Consumer <–> Producer),而大多数情况下jms是三方系统交互(Consumer <- Broker -> Producer)。当然,JMS也可以实现request-response模式的通信,只要Consumer或Producer其中一方兼任br

  • RocketMQ - 1 消息收发2020-12-29 19:01:23

    RocketMQ - 消息收发 3.0) 消息发送与接收开发流程 谁来发? 发给谁? 怎么发? 发什么? 发的结果是什么? 打扫战场 3.1) 基于Java环境构建消息发送与消息接收基础程序 3.1.1) 单生产者单消费者(OneToOne) 生产者 步骤1:导入坐标 <dependencies> <dependency> <groupI

  • python生产和消费kafka数据2020-12-24 10:01:11

    安装kafka-python pip install kafka-python 生产者 from kafka import KafkaProducer # 有时候导入包会报错,使用pip uninstall kafka-python,卸载后重装可以解决 import json # 创建producer对象 producer = KafkaProducer( value_serializer=lamb

  • Kafka学习笔记(六)· 稳定性2020-12-21 16:31:08

    目录 七、稳定性1、幂等性2、事务3、控制器4、可靠性保证5、一致性保证6、消息重复的场景及解决方案1、生产者端重复2、消费者端重复1、根本原因 7、_consumer_offsets1、何时创建2、解析分区 七、稳定性 kafka的消息传输保障机制非常直观。当producer向broker发送消

  • RocketMq核心概念2020-12-12 15:35:24

    概念关系   RocketMq中的概念包括Producer,Producer Group,Brocker,Name Server,Consumer,Consumer Group,Topic,Message,Message Queue,Tag,关系如下图:(蓝色为主要部分,其余颜色只用于区分位置关系)     以Topic为中心各个概念关系直接采用官网图:(其中subTopics==Message Queue)  概念详

  • Java 多线程练习,生产者和消费者2020-12-10 21:30:09

    生产者和消费者 生产者 : 不停的生产商品 消费者 : 不停的消费商品 多线程 public class mainProgram { public static void main(String[] args) { // 生产者 Producer p = new Producer(); Thread t = new Thread(p); t.start();

  • SpringCloud使用Kafka消费者2020-12-07 10:36:01

    目录POM文件配置创建kafka配置系统配置信息启动入口 POM文件配置 <project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://maven.apache.org/POM/4.0.0http://maven.apache.org/xsd/mave

  • 使用生成器把Kafka写入速度提高1000倍2020-12-04 16:53:18

    使用生成器把Kafka写入速度提高1000倍 [如果代码显示有问题,请点击阅读原文] 通过本文你会知道Python里面什么时候用yield最合适。本文不会给你讲生成器是什么,所以你需要先了解Python的yield,再来看本文。 疑惑 多年以前,当我刚刚开始学习Python协程的时候,我看到绝大多数的文章都举了

  • Kafka-之Producer生产者(含拦截器、分区器、序列化器及异步消息发送模式)2020-12-04 15:59:09

    Kafka-之Producer生产者(含拦截器、分区器、序列化器及异步消息发送模式) Kafka生产者是整个Kafka架构中的一个角色,可以是不同集成了Kafka的组件,KafkaProducer是线程安全的,可以同时给多个线程使用。 1 如何构建一个KafkaProducer 构建一个KafkaProducer的构造方法有2种: //首先

  • kafka 生产者源码解析2020-12-03 10:33:35

    kafka 生产者源码解析 1.源码阅读准备 基础知识 源码环境 源码剖析思路 demo 2.kakfa 生产者实现流程 Producer 核心流程介绍 Producer 初始化 Producer 端元数据管理 Producer 源码核心流程 Producer 加载元数据 3.kafka 生产者底层原理实现机制 分区选择 RecordAccumulator

  • RocketMq顺序消费2020-11-22 19:58:01

    RocketMq如何保证消息的顺序消费: 由于RocketMq的消息都是存储在topic中,而topic中又有不同的队列,RocketMq会自动进行负载均衡处理,使消息尽量均匀的分布到不同的队列中去,而队列的属性又是先进先出,所以我们只需要确保把消息发送到同一个队列中,消费者单线程进行消费,就可以确保消息的

  • RocketMQ使用方法2020-11-22 17:58:59

    基本概念 1 消息模型(Message Model) RocketMQ主要由 Producer、Broker、Consumer 三部分组成,其中Producer 负责生产消息,Consumer 负责消费消息,Broker 负责存储消息。Broker 在实际部署过程中对应一台服务器,每个 Broker 可以存储多个Topic的消息,每个Topic的消息也可以分片存储

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有