240 发简信
IP属地:广东
  • JVM复习笔记(内存区域篇)

    Java虚拟机将管理的内存划分为多个区域,有的区域的生命周期伴随着JVM进程,有的区域则以来用户线程。 Java虚拟机的内存区域主要包括程序计数器、栈(包括虚拟机栈和本地方法...

  • 索引Core

    Q:索引数据结构为什么不使用二叉树?A:二叉树虽然是搜索效率最高的,但是索引不止存在内存中,还要写到磁盘上。当数据量大的时候,即节点很多(二叉树每个节点仅有两个儿子),也就导...

  • @闭眼卖布 文中写的是uncommit,leader commit后follower才commit

    共识算法:Raft

    上篇讲到了「拜占庭将军问题」:多个拜占庭将军要如何在可能有叛徒、信使可能被策反或者暗杀的情况下达成是否要进攻的一致性决定?还不了解的先看看上一篇《拜占庭将军问题》。这篇主要是...

  • 所以要求奇数个节点

    共识算法:Raft

    上篇讲到了「拜占庭将军问题」:多个拜占庭将军要如何在可能有叛徒、信使可能被策反或者暗杀的情况下达成是否要进攻的一致性决定?还不了解的先看看上一篇《拜占庭将军问题》。这篇主要是...

  • 120
    JVM垃圾回收算法(人话版)

    标记-清除算法步骤:1.标记所有不需要回收的对象2.统一回收掉所有没有被标记的对象算法缺陷1.碎片化 -> 空间问题2.全空间扫描 -> 效率问题 标记-复制算法步骤:1.将...

  • A/B实验平台(一)为什么写这个系列

      纵观个人职业生涯,技术方向基本以基础架构、中台为主。这次跳槽到新公司,负责起A/B实验平台的工作,也就是大家经常听到的ABTest。   入职的时候,对于ABTest的概...

  • Redis对象与数据结构

    Redis中,我们打交道最多的是对象类型,如字符串对象、列表对象等。 字符串对象使用方式比如set name "John"。而字符串对象的底层实现是一种叫简单动态字符串,即"...

  • ZAB与Raft简单对比

    ZAB名词解释: Leader 一个zookeeper集群同一时刻仅能有一个master,即Leader。Leader负责接收所有的客户端的请求。 Follower 提供读服...

  • - 12位(bit)可以表示的最大正整数是2^{12}-1 = 4095,即可以用0、1、2、3、....4094这4095个数字,来表示同一机器同一时间截(毫秒)内产生的4095个ID序号。

    这里不应该是0、1、2、3、....4095共4096个数字吗

    雪花算法(SnowFlake)Java实现

    分布式id生成算法的有很多种,Twitter的SnowFlake就是其中经典的一种。 算法原理 SnowFlake算法生成id的结果是一个64bit大小的整数,它的结构如下图...

  • 坑里记录的是最近一次生成的id的时候的毫秒数,如果724毫秒生成了,那123号坑里的就是724了

    关于分布式唯一ID,snowflake的一些思考及改进(完美解决时钟回拨问题)

    1.写唯一ID生成器的原由 在阅读工程源码的时候,发现有一个工具职责生成一个消息ID,方便进行全链路的查询,实现方式特别简单,核心源码不过两行,根据时间戳以及随机数生成一个I...

  • 很好奇为什么finally加了return为什么就load finally里的局部变量,不加return就load try或catch的局部变量

    从字节码看try catch finally的return如何执行

    测试代码很简单,如下:Test.java 尽量简单的代码,用以说明问题。 编译后产生Test.class,打开 cafe babe这样还是比较难懂的,我们当然也可以强行自己去...

  • @闭眼卖布 这怎么保证强一致性呢(强一致性应该是全部节点都commit了)?半数写入本地就相当于成功,那部分还没写入的呢?此时leader已经返回OK给客户端了,客户端来读取的时候读的是未写入或者未commit的节点,那就读不到leader写入的新数据了

    共识算法:Raft

    上篇讲到了「拜占庭将军问题」:多个拜占庭将军要如何在可能有叛徒、信使可能被策反或者暗杀的情况下达成是否要进攻的一致性决定?还不了解的先看看上一篇《拜占庭将军问题》。这篇主要是...

  • @载煜 你这个例子不就先初始化再属性赋值了?Student stu = new Student();应该叫实例化吧

    请别再问Spring Bean的生命周期了!

    Spring Bean的生命周期是Spring面试热点问题。这个问题即考察对Spring的微观了解,又考察对Spring的宏观认识,想要答好并不容易!本文希望能够从源码角度入...

  • 120
    请别再问Spring Bean的生命周期了!

    Spring Bean的生命周期是Spring面试热点问题。这个问题即考察对Spring的微观了解,又考察对Spring的宏观认识,想要答好并不容易!本文希望能够从源码角度入...

  • @Mr_Stevens zk不是强一致性的吗?怎么成最终一致性了

    Zookeeper——一致性协议:Zab协议

    声明:本文写的时候,当时就是完全不懂zk,边看网上的文章边学习归纳和整理,这不是我的产出,不用点赞打赏。大家理智友善的讨论,有错误欢迎指出。不过我最近不怎么上简书了。可能没来...