05 2020 档案

摘要:kafka中有三种语义: 1、at-most-once 配置应答模式ack为0时,只要消息到了broker无论是否写成功,就回复ok,这样可能导致消息没有写入kafka;这种做法一般是为了减少消息的重复性,而且业务必须接受数据的丢失 2、at-least-once producer在收到ack时,证 阅读全文
posted @ 2020-05-31 17:35 光头用沙宣 阅读(1126) 评论(0) 推荐(0) 编辑
摘要:前言 要了解生产者ISR,需要提前了解下生产者重试机制和应答机制 生产者重试机制 创建生产者时,可以指定retries参数,如果向broker发送消息时抛出异常,并且异常是可重试异常RetriableException,那么此时就会按照指定的次数进行重试 1、哪些情况下可以重试 (1)没有到deli 阅读全文
posted @ 2020-05-31 17:04 光头用沙宣 阅读(582) 评论(0) 推荐(0) 编辑
摘要:分区结构 如下图是官网上kafka三级结构图,三级结构为主题 分区 消息,并且每条消息只能保存在某一个分区内; kafka虽然是一个队列但是不保证消息有序,但是对于分区来说消息是有序的 为什么分区 分区的作用就是提供生产消费数据负载分担的能力;不同的分区被分配在不同的节点,数据的生产消费是基于分区粒 阅读全文
posted @ 2020-05-31 15:52 光头用沙宣 阅读(1652) 评论(0) 推荐(0) 编辑
摘要:话不多说直接上图 相关概念 1、broker kafka集群实例,前面的随笔中说过通过broker.id可以配置broker ID 2、topic 主题,用来在存储消息时区分不同类型的消息 3、partition 分区,归属于topic,不同的分区分布在kafka集群的不同节点上,可以提高kafka 阅读全文
posted @ 2020-05-31 14:32 光头用沙宣 阅读(220) 评论(0) 推荐(0) 编辑
摘要:前言 kafka是一种分布式的基于发布/订阅模式的消息队列,主要用于大数据实时处理领域;下面总结下kafka集群搭建方法 准备工作 1、三台linux环境,地址分别为192.168.1.51、192.168.1.52、192.168.1.53 2、jdk1.8.0_252,当然其他版本也行 3、ap 阅读全文
posted @ 2020-05-31 13:38 光头用沙宣 阅读(395) 评论(0) 推荐(0) 编辑
摘要:前言 ConcurrentHashMap内部实现和HashMap类似,都采用了数组+单链表+红黑树的结构;区别是:ConcurrentHashMap是线程安全的; ConcurrentHashMap线程安全在JDK1.7中由ReentLock和分段锁保证,在JDK1.8版本做了优化,使用synchr 阅读全文
posted @ 2020-05-26 22:46 光头用沙宣 阅读(175) 评论(0) 推荐(0) 编辑
摘要:前言 HashMap是一个用来存储<key,value>对的集合,允许key和value为null,并且无序; 内部实现JDK1.7和JDK1.8略有不同,1.7内部实现用的是数组+单链表,而1.8内部实现是数组+链表+红黑树; HashMap实现了Cloneable、Serializable、Ma 阅读全文
posted @ 2020-05-25 22:53 光头用沙宣 阅读(137) 评论(0) 推荐(0) 编辑
摘要:前言 CopyOnWriteArrayList实际上是ArrayList的线程安全版,内部实现也是数组,CopyOnWriteArrayList实现了RandomAccess、Cloneable、List、Serializable接口; 属性 // 可重入锁, 可重入的概念是: 当某个线程获取到锁之 阅读全文
posted @ 2020-05-20 21:33 光头用沙宣 阅读(201) 评论(0) 推荐(0) 编辑
摘要:前言 LinkedList内部实现是一个双链表,linkedList除了实现了list相关的接口外,还实现了Queue、Dequeue接口,所以它有着双端队列、list、栈的功能 注意LinkedList没有实现RandomAccess接口,这意味着LinkedList没有提供快速随机访问功能 属性 阅读全文
posted @ 2020-05-19 21:53 光头用沙宣 阅读(184) 评论(0) 推荐(0) 编辑
摘要:前言 List是一种有序、可以重复的数据结构,底层实现是动态数组或者链表;常用的List结构有:ArrayList、LinkedList、CopyOnWriteList还有古老的Vector和Stack。 先带着如下几个问题去学习ArrayList的源码: 1、ArrayList是怎么扩容的? 2、 阅读全文
posted @ 2020-05-18 17:09 光头用沙宣 阅读(201) 评论(0) 推荐(0) 编辑
摘要:前言 什么是单例模式?就是在一个应用程序中,一个类的实例有且仅有一个;这个类负责创建该类的实例; 一般来说单例是有状态的对象,比如全局设置、数据库dao实例、全局资源等,并且可以根据需求延迟加载或者即时加载; 即时加载单例模式 1、静态公有域单例(我不习惯别人说的饿汉、懒汉) public clas 阅读全文
posted @ 2020-05-16 18:59 光头用沙宣 阅读(175) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示