- 博客(6)
- 收藏
- 关注
原创 100%通过zookeeper面试
1、ZooKeeper 的数据模型 ZooKeeper 的数据模型是什么样子呢?它很像数据结构当中的树,也很像文件系统的目录。 树是由节点所组成,ZooKeeper 的数据存储也同样是基于节点,这种节点叫做 Znode。 但是,不同于树的节点,Znode 的引用方式是路径引用,类似于文件路径: / 动物 / 仓鼠 / 植物 / 荷花 这样的层级结构,让每一个 Znode 节点拥有唯一的路径,就像...
2019-02-27 11:38:29
537
转载 100%解决Mysql主从同步延迟问题
简单易懂,面试就说这个必过,Let‘s go! 引用“架构师之路”微信公众号的两张图和思想。 强制读主过于粗暴,毕竟只有少量写请求,很短时间,可能读取到脏数据。有没有可能实现,只有这一段时间,可能读到从库脏数据的读请求读主,平时读从呢? 可以利用一个缓存记录必须读主的数据。 如上图,当写请求发生时: (1)写主库 (2)将哪个库,哪个表,哪个主键三个信息拼装一个key设置到cache里,这条记录...
2019-02-21 16:38:30
390
原创 一次性通过面试:ThreadLocal
ThreadLocal提供了线程独有的局部变量,可以在整个线程存活的过程中随时取用,极大地方便了一些逻辑的实现。常见的ThreadLocal用法有: 存储单个线程上下文信息。比如存储id等; 使变量线程安全。变量既然成为了每个线程内部的局部变量,自然就不会存在并发问题了; 减少参数传递。比如做一个trace工具,能够输出工程从开始到结束的整个一次处理过程中所有的信息,从而方便debug。由于需要...
2019-02-20 14:20:39
229
原创 一次性通过HashMap面试心得
HashMap以及其相关类是面试比问题目,下面小乐来总结下如何能通过面试官的问题,不用太深,浅显易懂,让你一次性通过面试,因为太深了面试官也不一定会,你也不用花更多的时间去看深层次的底层原理。 一、底层数据结构 在JDK1.6,JDK1.7中,HashMap采用位桶+链表实现,即使用链表处理冲突,同一hash值的键值对会被放在同一个位桶里,当桶中元素较多时,通过key值查找的效率较低。 而JDK...
2019-02-19 11:22:51
134
原创 kafka的消息不丢失配置心得
一、多消费者场景 1)每个消费者各自消费test2里面的数据(1to1 队列模式) 则多个消费者groupid设置成一样的值 2)每个消费者都去消费每一个消息(1toN订阅模式) 则多个消费者groupid设置成不一样的值 二、如果消费者中途重启发版,如何保证在重启后依然能够消费得到原来的消息 消费者增加下面配置即可 1)props.put(“linger.ms”, “50”); props.p...
2019-02-15 14:35:23
389
原创 Redis保证一致性100%方案
Redis同步心得 1、是先写数据库还是先写Redis 如果是更新数据,就先删掉Redis里面的数据,然后下次查询时再把数据放到Redis里面,100%确保数据一致性,而读多写少的场景也能保证这种情况很少发生,数据库是能够撑住少量的数据查询的; ...
2019-02-12 11:34:19
759
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人