Archive

2021


























RocketMQ-20丨RocketMQ DLedger主从切换


RocketMQ-19丨RocketMQ整合DLedger


RocketMQ-18丨DLedger存储实现


RocketMQ-18丨DLedger日志复制机制


RocketMQ-17丨DLedger选主机制


分布式原理-06丨Raft协议


RocketMQ-16丨RocketMQ事务消息


RocketMQ-15丨RocketMQ主从复制


RocketMQ-14丨顺序消息


RocketMQ-13丨延迟消息


数据结构-01丨堆


RocketMQ-12丨消息消费机制


RocketMQ-11丨消息拉取机制


RocketMQ-10丨文件刷盘机制


Shardingjdbc-01丨Shardingjdbc介绍


架构设计-01丨秒杀系统架构设计


架构设计-02丨IM即时通讯项目架构设计


LeetCode-05丨146.LRU 缓存机制


RocketMQ-09丨更新消费队列与索引文件


RocketMQ-08丨存储文件


RocketMQ-06丨消息存储


RocketMQ-07丨文件与内存映射


RocketMQ-04丨NameServer架构设计


RocketMQ-05丨消息发送


Dubbo-05丨线程模型


Dubbo-04丨线程池


Dubbo-03丨Dubbo SPI 扩展实现


LeetCode-03丨206.反转链表


LeetCode-05丨19.删除链表的倒数第N个结点


Netty-06丨传统Socket网络编程


网络编程-06丨传统Socket网络编程


网络编程-07丨Reactor线程模型


MySQL-29丨缓冲池与写缓冲


Netty-05丨详解TCP连接的三次握手与四次挥手


网络编程-05丨详解TCP连接的三次握手与四次挥手


RocketMQ-03丨RocketMQ的存储模型


RocketMQ-02丨基于DLedger技术的Broker主从同步原理


RocketMQ-01丨RocketMQ参数调优


LeetCode-01丨1.两数之和


LeetCode-02丨2.两数相加


面试题-26丨互联网Java进阶面试训练营


RocketMQ-00丨Apache RocketMQ开发者指南_05


RocketMQ-00丨Apache RocketMQ开发者指南_04


RocketMQ-00丨Apache RocketMQ开发者指南_03


RocketMQ-00丨Apache RocketMQ开发者指南_02


RocketMQ-00丨Apache RocketMQ开发者指南_01


Java多线程-32丨Volatile可见性原理


Java多线程-33丨edits log日志并发写原理


Java多线程--34丨MESI硬件级原理


Redisson-07丨Redisson倒计时门闩分析


Redisson-06丨Redisson信号量分析


Redisson-05丨Redisson读写锁分析


Redisson-04丨Redisson联锁与红锁源码分析


Redisson-03丨Redisson公平锁源码分析


Redisson-02丨Redisson可重入锁源码分析


Redisson-01丨Redisson分布式锁介绍


Redis-17丨Redis.conf配置详解


17丨redis.conf配置详解


事务-07丨ByteTcc原理


事务-06丨ByteTcc分布式事务框架


事务-05丨分布式事务方案


事务-04丨JTA + Atomikos分布式事务


Spring-01丨logback.xml和logback-spring.xml的区别


事务-03丨2PC和3PC


事务-02丨@Transactional源码


事务-01丨事务基础


SpringCloud-01丨SpringCloud时效性和超时重试机制


2020

Zuul-02丨Zuul执行流程


Zuul-01丨Zuul简介


Hystrix-07丨Hystrix熔断器机制


Hystrix-06丨Hystrix降级机制


Hystrix-05丨Hystrix超时中断机制


Hystrix-04丨HystrixCommand执行流程


Hystrix-03丨Hystrix与Feign整合


Feign-05丨Feign与Ribbon重试机制


Feign-04丨LoadBalancerFeignClient核心流程


Feign-03丨Feign动态里方法调用


Feign-02丨Feign源码分析


Feign-01丨Feign简介


Ribbon-05丨RestTemplate实际调用与IPing


Ribbon-04丨Ribbon负载均衡源码


Ribbon-03丨Ribbon与Eureka整合


Ribbon-02丨Ribbon与RestTemplate源码分析


Ribbon-01丨Ribbon简介


Eureka-16丨eureka整体架构设计


Eureka-15丨eureka server同步任务批处理机制


Eureka-14丨eureka server集群机制


Eureka-13丨eureka server自我保护机制


Eureka-12丨服务实例故障下线


Eureka-11丨服务实例下线


Eureka-10丨服务实例心跳机制(服务续约)


Eureka-09丨client增量抓取机制


Eureka-08丨Eureka刷新机制源码


ElasticSearch-01丨canal同步数据至ES


JVM-15丨JVM工具-jps


Netty-04丨详解NIO Buffer


网络编程-04丨详解NIO Buffer


Netty-03丨Java NIO基础


网络编程-03丨Java NIO基础


Netty-02丨Java中的BIO-NIO-AIO


网络编程-02丨Java中的BIO-NIO-AIO


Netty-01丨IO模型


网络编程-01丨IO模型


转载-18丨Java技术栈_分布式


转载-17丨Java技术栈_Spring


转载-16丨Hollis_2018


转载-15丨Java技术栈文章


转载-14丨Java后端技术文章


转载-13丨Java技术栈_面试题


转载-12丨方志朋文章


转载-11丨Java面试那些事儿_工具篇


转载-09丨Java面试那些事儿_2018


转载-10丨Java面试那些事儿_2019


转载-08丨Java进阶架构师_下


转载-07丨Java进阶架构师_中


转载-06丨Java进阶架构师_上


转载-05丨朱小厮文章


转载-04丨占小狼文章


转载-03丨《Effective Java 第三版》目录汇总


转载-02丨架构师之路-2019


转载-01丨架构师之路-2018


项目管理-18丨项目文档与配置管理


项目管理-17丨项目变更管理


项目管理-16丨项目收尾管理


项目管理-15丨项目干系人管理


项目管理-14丨项目采购管理


项目管理-13丨项目风险管理


项目管理-12丨项目沟通管理


项目管理-11丨项目人力资源管理


项目管理-10丨项目质量管理


项目管理-09丨项目成本管理


项目管理-08丨项目时间管理


项目管理-07丨项目范围管理


项目管理-06丨项目整体管理


项目管理-05丨项目立项管理


项目管理-04丨项目管理基础


项目管理-03丨其它计算


Redis-16丨Redis Cluster(集群)原理


Kafka-01丨Kafka介绍


项目管理-02丨时间类计算


项目管理-01丨挣值分析


Dubbo-02丨京东JSF介绍


Redis-15丨Redis的Sentinel(哨兵)机制


Redis-14丨Redis复制原理


Redis-13丨Redis持久化功能优化


Redis-12丨Redis的RDB持久化


Redis-11丨Redis线程模型


Redis-10丨布隆过滤器


Redis-09丨Bitmaps(位图)


Redis-08丨Redis实现消息队列


Redis-07丨Redis数据结构


分布式锁-02丨ZooKeeper实现分布式锁


分布式锁-01丨Redis实现分布式锁


分布式原理-05丨分布式事务


分布式原理-04丨分布式选举


2019

分布式原理-03丨分布式互斥


分布式原理-02丨分布式系统的指标


分布式原理-01丨分布式服务限流算法


SpringBoot-01丨Spring Boot 启动原理


Hystrix-02丨Hystrix配置项


Java多线程-31丨JUC-ForkJoinTask


Java多线程-30丨JUC-Fork丨Join框架


Java多线程-29丨JUC-Phaser


Java多线程-28丨JUC-StampedLock


Java多线程-27丨JUC-ScheduledThreadPoolExecutor


Java多线程-26丨JUC-LongAdder


Java集合-25丨TreeMap


Java集合-24丨集合问题


Java集合-23丨ArrayDeque


Java集合-22丨DelayQueue


Java集合-21丨ConcurrentLinkedQueue


Java集合-20丨LinkedTransferQueue


Java集合-19丨SynchronousQueue


Java集合-18丨PriorityBlockingQueue


Java集合-17丨PriorityQueue


Java集合-16丨LinkedBlockingQueue


Java集合-15丨ArrayBlockingQueue


Java集合-14丨ConcurrentSkipListSet


Java集合-13丨CopyOnWriteArraySet


Java集合-12丨TreeSet


Java集合-11丨LinkedHashSet


Java集合-10丨HashSet


Java集合-09丨ConcurrentSkipListMap


JVM-14丨SafePoint(安全点)


Dubbo-01丨Apache Dubbo介绍


Java集合-08丨ConcurrentHashMap


Eureka-07丨Eureka Server 启动流程


Eureka-06丨服务实例配置信息


Eureka-05丨Eureka Server 配置参数


Eureka-04丨Eureka Client 配置参数


Eureka-03丨Eureka和Zookeeper对比


Eureka-02丨Eureka架构


Eureka-01丨Eureka简介


Java集合-07丨WeakHashMap


JVM-13丨堆外内存


Hystrix-01丨Hystrix简介


面试题-27丨面试突击第一季


Java集合-06丨LinkedHashMap


Java基础-05丨Object.hashCode()和Object.equals()


Java集合-05丨HashMap(JDK1.8)


Java集合-04丨CopyOnWriteArrayList


JVM-12丨Java对象访问方式


JVM-11丨Java对象创建过程


Java集合-03丨LinkedList


Java基础-04丨System.gc()


Java基础-03丨Object.finalize()


Java集合-02丨ArrayList


Java集合-01丨集合框架


Java多线程-25丨JUC-FutureTask(异步任务)


MySQL-28丨MySQL日期函数


MySQL-28丨授权操作


Redis-06丨Redis过期策略和内存淘汰机制


Redis-05丨数据分布算法


Java多线程-24丨JUC-Semaphore(信号量)


Java多线程-23丨JUC-CyclicBarrier(循环屏障)


Java多线程-22丨JUC-CountDownLatch(倒计时门闩)


Java多线程-21丨JUC-ReentrantReadWriteLock(读写锁)


Java多线程-20丨JUC-AQS-Condition接口实现


Java多线程-19丨JUC-ReentrantLock(可重入锁)


Java基础-02丨Java中的SPI机制


Java多线程-18丨JUC-AQS(同步器)源码分析-共享锁的获取和释放


Java多线程-17丨JUC-AQS(同步器)源码分析-独占锁的释放


Java多线程-16丨JUC-AQS(同步器)源码分析-独占锁的获取


Java多线程-15丨LockSupport(阻塞原语)


Zookeeper-01丨Zookeeper基础


Zookeeper-02丨Zookeeper基础进阶


Zookeeper-03丨ZAB 协议


Java多线程-14丨JUC-AQS(同步器)简介


Java多线程-13丨ThreadPoolExecutor(线程池)


Java多线程-12丨JUC-任务执行框架


Java多线程-11丨JUC框架


Java多线程-10丨Unsafe


Java多线程-09丨CAS


Java多线程-08丨ThreadLocal原理


Java多线程-07丨线程中断机制


MySQL-27丨MySQL操作规范


MySQL-26丨MySQL整体优化


MySQL-25丨MySQL应用层优化方法


MySQL-24丨安全高效地删除大量无用数据


MySQL-23丨读写分离需要注意


MySQL-22丨主从复制原理


MySQL-21丨是否需要开启查询缓存


MySQL-20丨主键为什么设置成自增


Java多线程-06丨线程状态


MQ-01丨消息队列入门


Java多线程-05丨内存屏障


Java多线程-04丨Java 内存模型(JMM)


Redis-04丨Redis主从架构的核心原理


Java多线程-03丨Object.wait和Object.notify实现


Redis-03丨Redis的RDB和AOF两种持久化机制


Java多线程-02丨JDK锁优化


Java多线程-02丨锁优化


Redis-02丨Redis的AOF持久化


MySQL-19丨事务的隔离级别


MySQL-18丨MVCC


MySQL-17丨Redo log和Binlog


MySQL-16丨死锁


MySQL-15丨MySQL行级锁


MySQL-14丨MySQL全局锁和表级锁


MySQL-13丨为什么MySQL选错索引


MySQL-12丨联合索引


MySQL-11丨普通索引和唯一索引的区别


MySQL-10丨B+树


JVM-10丨Tomcat类加载机制


MySQL-09丨count(1)方法


JVM-09丨触发 CMS GC 的条件


MySQL-08丨join语句优化


JVM-08丨对象进入老年代的四种方式


MySQL-07丨分页查询优化


JVM-07丨OOP-Klass模型


MySQL-06丨order by和group by优化


JVM-06丨JVM参数


MySQL-05丨如何优化数据导入


JVM-05丨JVM工具-Jstat


JVM-05丨Jstat(JVM统计监测工具)


MySQL-04丨影响索引查询效率的场景


JVM-04丨Java类加载


MySQL-03丨trace分析SQL


JVM-03丨G1垃圾收集器参数


MySQL-02丨Show profile分析慢查询


JVM-02丨CMS垃圾收集器参数


MySQL-01丨Explain分析SQL


JVM-01丨CMS GC的7个阶段


Java基础-01丨Java引用类型


Java多线程-01丨深入分析synchronized的实现原理


Redis-01丨Redis replication基本原理