logo
publist
写文章

简介

该用户还未填写简介

擅长的技术栈

可提供的服务

暂无可提供的服务

kafka生产者性能相关的参数理解

batch.size当多条消息发送到batch后,batch的上限大小(字节为单位),当达到上限时则会发送给kafka broker,设置的过小则降低了kafka的吞吐量,设置的过大则消息的延迟时间会拉长、占用了过高的内存...

文章图片
#java#kafka
理解死锁产生的四个必要条件

死锁的定义死锁是指两个或两个以上的进程在执行过程中,由于竞争资源或者由于彼此通信而造成的一种阻塞的现象,若无外力作用,它们都将无法推进下去。此时称系统处于死锁状态或系统产生了死锁,这些永远在互相等待的进程称为死锁进程。死锁产生的四个必要条件1、互斥条件:线程对已经获取到的资源进行排他性使用,即该资源同时只有一个线程占用,如果此时还有其他线程请求获取该资源,则必须等待,直到占用资源的线程释放。2、请

#java
解析Spring中@Bean的实现原理

解析Spring中@Bean的实现原理

文章图片
#spring#java
@Transactional注解事务失效的七种原因分析

1、异常被捕获后没有抛出2、抛出非运行时异常3、方法内部直接调用4、新开启一个线程5、非public的方法6、数据库本身不支持7、事务传播级别设置错误

#spring#java#经验分享
JVM垃圾收集器详解之CMS

CMS(Concurrent Mark Sweep)是HotSpot虚拟机中第一款实现并发收集的垃圾回收器,是为那些希望使用较短的垃圾收集暂停时间并且可以在应用程序运行时与垃圾收集器共享处理器资源的应用程序而设计的,简单来说,CMS就是追求最短停顿时间的垃圾收集器。CMS主要针对老年代进行垃圾回收,可以配合Serial或者ParNew新生代垃圾收集器进行回收,并且从名字上包含“Mark Sweep

#jvm#java
fastjson中JSONObject.parse方法使用注意

今天遇到有同事在使用fastjson的JSONObject时,直接在parse方法中传入了一个非json格式的字符串,造成有时候报错,有时候又能正常返回。问题现象当你传入一个数值类型时,可以正常解析,当你传入一个非数值类型时,解析就报错了。public class TestJson {public static void main(String[] args) {Object parse = JS

#java
Kafka三种分区分配策略比较

分区分配指的是Kafka依据什么样的分配方式将多个主题中的多个分区与多个消费者进行对应。Range按范围分配。对于每个主题,我们按数字顺序排列可用分区,并按字典顺序排列消费者。然后,我们将分区数除以消费者总数,以确定要分配给每个消费者的分区数。如果它不能平均分配,那么前几个消费者将会有一个额外的分区。partition数/consumer数比如现在有两个消费者C0 ,C1两个主题t0 ,t1每个主

#kafka
基于磁盘读写的Kafka为什么那么快?

我们都知道Kafka一大特点就是快,每秒甚至可以达到百万级别的吞吐量,然后这种级别的吞吐量居然还是基于磁盘的读写,那么kafka是如何做到的呢?接下来我们就一起来分析下其中的奥妙。磁盘顺序写对于一般的机械硬盘来说如果要查找某个数据,需要先寻址,然后通过机械运动(磁头臂驱动磁头找到对于的磁道、扇面)来读取数据,这种飘忽不定的查询方式就造成了大量的时间消耗在了机械运动上,磁头被不停的移来移去,所以说我

#kafka
如何确保Kafka消息不丢失

我们知道Kafka对于消息的可靠性可以做到至少一次(at least once)的保证,即消息不会丢失,但有可能重复发送,本文就来分析一下Kafka究竟是如何做到的。可以看出,要想确保Kafka消息不丢失,Consumer、Producer以及Broker都需要做好各自所负责的部分,Producer需要确保消息成功发送到Broker端,Broker端则要确保消息的成功落盘、多副本、持久化,Cons

#kafka
    共 16 条
  • 1
  • 2
  • 请选择