JavaCore
多线程
对象的内存布局与Synchronized原理
Synchronized实现原理和锁优化_zhifeng687的博客-CSDN博客_synchronized原理和锁优化
线程的内存模型
https://blog.csdn.net/wenxindiaolong061/article/details/79744513
Volatile底层实现原理
https://blog.csdn.net/qq_38905818/article/details/105831893
https://shishan100.gitee.io/docs/#/./docs/page/page1【石衫笔记】
Netty
Cas & Atomic & LongAdder
https://shishan100.gitee.io/docs/#/./docs/page/page2
Aqs
https://shishan100.gitee.io/docs/#/./docs/page/page3
ReentrantLock
https://shishan100.gitee.io/docs/#/./docs/page/page4
读写锁
https://shishan100.gitee.io/docs/#/./docs/page/page5
【高并发】Java并发性能优化-双缓冲机制,缓冲分片机制 + 分段加锁机制
https://shishan100.gitee.io/docs/#/./docs/page/page8
ConcurrentHashMap
ConcurrentHashMap实现原理及源码分析_快乐小石头的博客-CSDN博客_concurrenthashmap原理
【嗅探底层】你知道Synchronized作用是同步加锁,可你知道它在JVM中是如何实现的吗?
为什么要自旋,重量级锁
https://shishan100.gitee.io/docs/#/./docs/jvm/page1
线程池运行逻辑
Java并发编程系列33:线程池ThreadPoolExecutor工作流程_fen_fen的博客-CSDN博客_线程池的工作流程
强软弱虚引用
JVM
架构设计
【高并发】内存双缓冲 + 批量刷磁盘
https://shishan100.gitee.io/docs/#/./docs/page/page6
【高并发】如何优化你的缓存架构?
https://shishan100.gitee.io/docs/#/./docs/page/page9
【高并发】高并发数据库架构
https://shishan100.gitee.io/docs/#/./docs/page/page10
【高并发】如何设计其高并发架构?
https://shishan100.gitee.io/docs/#/./docs/page/page11
中间件
【高并发】如何保持消息发布者不丢失数据
https://shishan100.gitee.io/docs/#/./docs/page/page7
【原理】Reactor多路复用
https://shishan100.gitee.io/docs/#/./docs/page/page11
【原理】select、poll和epoll
Linux IO模式及 select、poll、epoll详解 - 那天ws - 博客园(基础)
一文搞懂select、poll和epoll区别 - 知乎(进阶_有源码)
为什么要引入消息中间件?
https://shishan100.gitee.io/docs/#/./docs/middleware/page1
引入消息中间件有什么缺点?
https://shishan100.gitee.io/docs/#/./docs/middleware/page2
消息中间件在你们项目里是如何落地的?
https://shishan100.gitee.io/docs/#/./docs/middleware/page3
消息中间件集群崩溃,如何保证百万生产数据不丢失?
https://shishan100.gitee.io/docs/#/./docs/middleware/page4
如何保证消息中间件全链路数据100%不丢失(1)
https://shishan100.gitee.io/docs/#/./docs/middleware/page6
如何保证消息中间件全链路数据100%不丢失(2)ack机制
https://shishan100.gitee.io/docs/#/./docs/middleware/page7
消息中间件如何实现消费吞吐量的百倍优化?解决消息积压 prefetch count
https://shishan100.gitee.io/docs/#/./docs/middleware/page8
消息中间件该如何实现高可用架构?
https://shishan100.gitee.io/docs/#/./docs/middleware/page9
消息中间件如何实现每秒几十万的高并发写入? Kafka 的一些架构设计原理,零拷贝技术,页缓存技术,磁盘顺序写
https://shishan100.gitee.io/docs/#/./docs/middleware/page10
写入消息中间件的数据,如何保证不丢失?写入Kafka的消息如何不丢失
https://shishan100.gitee.io/docs/#/./docs/middleware/page11
如果让你设计一个消息中间件,如何将其网络通信性能优化10倍以上?batch机制 + request 机制
https://shishan100.gitee.io/docs/#/./docs/middleware/page12
简历写了会Kafka,面试官90%会让你讲讲acks参数对消息持久化的影响
https://shishan100.gitee.io/docs/#/./docs/middleware/page13
不了解这些“高级货”,活该你面试当炮灰。。。CopyOnWrite
https://shishan100.gitee.io/docs/#/./docs/middleware/page14
Kafka如何通过精妙的架构设计优化JVM GC问题?内存缓冲池的机制,不回收的堆外内存
https://shishan100.gitee.io/docs/#/./docs/middleware/page15
面试突击
分布式消息队列
【面试题】 为什么使用消息队列?消息队列有什么优点和缺点?
Kafka、ActiveMQ、RabbitMQ、RocketMQ 都有什么优点和缺点?
为什么使用消息队列?,消息队列有什么优点和缺点?,Kafka、ActiveMQ、RabbitMQ、RocketMQ 都有什么区别,以及适合哪些场景?
https://shishan100.gitee.io/docs/#/./docs/high-concurrency/why-mq
【面试题】 如何保证消息队列的高可用?
【面试题】 如何保证消息不被重复消费?或者说,如何保证消息消费的幂等性?
【面试题】 如何保证消息的可靠性传输?或者说,如何处理消息丢失的问题?
【面试题】 - 如何保证消息的顺序性?
https://shishan100.gitee.io/docs/#/./docs/high-concurrency/how-to-ensure-the-order-of-messages
【面试题】 - 如何解决消息队列的延时以及过期失效问题?消息队列满了以后该怎么处理?有几百万消息持续积压几小时,说说怎么解决?
https://shishan100.gitee.io/docs/#/./docs/big-data/page2
【面试题】 - 如果让你写一个消息队列,该如何进行架构设计?说一下你的思路。
https://shishan100.gitee.io/docs/#/./docs/high-concurrency/mq-design
搜索引擎
lucene 和 es 的前世今生
https://shishan100.gitee.io/docs/#/./docs/high-concurrency/es-introduction
【面试题】 - es 的分布式架构原理能说一下么(es 是如何实现分布式的啊)?
https://shishan100.gitee.io/docs/#/./docs/high-concurrency/es-architecture
【面试题】 - es 写入数据的工作原理是什么啊?es 查询数据的工作原理是什么啊?底层的 lucene 介绍一下呗?倒排索引了解吗?
https://shishan100.gitee.io/docs/#/./docs/high-concurrency/es-write-query-search
【面试题】 - es 在数据量很大的情况下(数十亿级别)如何提高查询效率啊?
性能优化的杀手锏——filesystem cache,数据预热,冷热分离,document 模型设计,分页性能优化
https://shishan100.gitee.io/docs/#/./docs/high-concurrency/es-optimizing-query-performance
【面试题】 - es 生产集群的部署架构是什么?每个索引的数据量大概有多少?每个索引大概有多少个分片?
https://shishan100.gitee.io/docs/#/./docs/high-concurrency/es-production-cluster
分布式缓存
【面试题】 - 项目中缓存是如何使用的?为什么要用缓存?缓存使用不当会造成什么后果?
https://shishan100.gitee.io/docs/#/./docs/high-concurrency/why-cache
【面试题】 - redis 和 memcached 有什么区别?redis 的线程模型是什么?为什么 redis 单线程却能支撑高并发?
redis线程模型
https://shishan100.gitee.io/docs/#/./docs/high-concurrency/redis-single-thread-model
【面试题】 - redis 都有哪些数据类型?分别在哪些场景下使用比较合适?
【面试题】 - redis 的过期策略都有哪些?内存淘汰机制都有哪些?手写一下 LRU 代码实现?
定期删除+惰性删除。内存淘汰机制,手写一个 LRU 算法
https://shishan100.gitee.io/docs/#/./docs/high-concurrency/redis-expiration-policies-and-lru
【面试题】 如何保证 redis 的高并发和高可用?redis 的主从复制原理能介绍一下么?redis 的哨兵原理能介绍一下么?
Redis 主从架构
redis replication 的核心机制,redis 主从复制的核心原理,主从复制的断点续传,无磁盘化复制,过期 key 处理,复制的完整流程,全量复制,增量复制,heartbeat,异步复制,redis 如何才能做到高可用
https://shishan100.gitee.io/docs/#/docs/high-concurrency/redis-master-slave
Redis 哨兵集群实现高可用
https://shishan100.gitee.io/docs/#/docs/high-concurrency/redis-sentinel
【面试题】 - redis 的持久化有哪几种方式?不同的持久化机制都有什么优缺点?持久化机制具体底层是如何实现的?
redis 持久化的两种方式,RDB 优缺点,AOF 优缺点
https://shishan100.gitee.io/docs/#/./docs/high-concurrency/redis-persistence
【面试题】 - redis 集群模式的工作原理能说一下么?在集群模式下,redis 的 key 是如何寻址的?分布式寻址都有哪些算法?了解一致性 hash 算法吗?
节点间的内部通信机制,基本通信原理,gossip 协议,ping 消息深入,hash 算法,一致性 hash 算法,redis cluster 的 hash slot 算法,redis cluster 的高可用与主备切换原理,
https://shishan100.gitee.io/docs/#/./docs/high-concurrency/redis-cluster
【面试题】 了解什么是 redis 的雪崩、穿透和击穿?redis 崩溃之后会怎么样?系统该如何应对这种情况?如何处理 redis 的穿透?
【面试题】 - 如何保证缓存与数据库的双写一致性?
Cache Aside Pattern,最初级的缓存不一致问题及解决方案,比较复杂的数据不一致问题分析,
https://shishan100.gitee.io/docs/#/./docs/high-concurrency/redis-consistence
【面试题】 - redis 的并发竞争问题是什么?如何解决这个问题?了解 redis 事务的 CAS 方案吗?
https://shishan100.gitee.io/docs/#/./docs/high-concurrency/redis-cas
【面试题】 - 生产环境中的 redis 是怎么部署的?
https://shishan100.gitee.io/docs/#/./docs/high-concurrency/redis-production-environment
分库分表
【面试题】 - 为什么要分库分表(设计高并发系统的时候,数据库层面该如何设计)?用过哪些分库分表中间件?不同的分库分表中间件都有什么优点和缺点?你们具体是如何对数据库如何进行垂直拆分或水平拆分的?
为什么要分库分表?(设计高并发系统的时候,数据库层面该如何设计?),用过哪些分库分表中间件?不同的分库分表中间件都有什么优点和缺点?,你们具体是如何对数据库如何进行垂直拆分或水平拆分的?
https://shishan100.gitee.io/docs/#/./docs/high-concurrency/database-shard
【面试题】 - 现在有一个未分库分表的系统,未来要分库分表,如何设计才可以让系统从未分库分表动态切换到分库分表上?
https://shishan100.gitee.io/docs/#/./docs/high-concurrency/database-shard-method
【面试题】 - 如何设计可以动态扩容缩容的分库分表方案?
https://shishan100.gitee.io/docs/#/./docs/high-concurrency/database-shard-dynamic-expand
【面试题】 - 分库分表之后,id 主键如何处理?
基于数据库的实现方案,数据库自增 id,设置数据库 sequence 或者表自增字段步长,UUID,获取系统当前时间,snowflake 算法
https://shishan100.gitee.io/docs/#/./docs/high-concurrency/database-shard-global-id-generate
【面试题】 - 你们有没有做 MySQL 读写分离?如何实现 MySQL 的读写分离?MySQL 主从复制原理的是啥?如何解决 MySQL 主从同步的延时问题?
如何实现 MySQL 的读写分离?,MySQL 主从复制原理的是啥?MySQL 主从同步延时问题(精华)
https://shishan100.gitee.io/docs/#/./docs/high-concurrency/mysql-read-write-separation
分布式服务框架Dubbo
【面试题】- 分布式系统面试连环炮【没有啥内容】
https://shishan100.gitee.io/docs/#/./docs/distributed-system/distributed-system-interview
【面试题】 - 如何设计一个高并发系统?
系统拆分,缓存,MQ,分库分表,读写分离,ElasticSearch
https://shishan100.gitee.io/docs/#/./docs/high-concurrency/high-concurrency-design
【面试题】 - 说一下的 dubbo 的工作原理?注册中心挂了可以继续通信吗?说说一次 rpc 请求的流程?
https://shishan100.gitee.io/docs/#/./docs/distributed-system/dubbo-operating-principle
【面试题】 - dubbo 支持哪些通信协议?支持哪些序列化协议?说一下 Hessian 的数据结构?PB 知道吗?为什么 PB 的效率是最高的?
dubbo 支持不同的通信协议,dubbo 协议,rmi 协议,hessian 协议,http 协议,webservice,dubbo 支持的序列化协议,为什么 PB 的效率是最高的?
https://shishan100.gitee.io/docs/#/./docs/distributed-system/dubbo-serialization-protocol
【面试题】 - dubbo 负载均衡策略和集群容错策略都有哪些?动态代理策略呢?
dubbo 负载均衡策略,dubbo 集群容错策略,dubbo动态代理策略
https://shishan100.gitee.io/docs/#/./docs/distributed-system/dubbo-load-balancing
动态代理
【好文章】深入理解动态代理
【面试题】Dubbo 的 spi 思想是什么?
spi 是啥?,Java spi 思想的体现,dubbo 的 spi 思想,如何自己扩展 dubbo 中的组件
https://shishan100.gitee.io/docs/#/./docs/distributed-system/dubbo-spi
【面试题】 - 如何基于 dubbo 进行服务治理、服务降级、失败重试以及超时重试?
服务治理, 服务访问压力以及时长统计,其它,服务降级,失败重试和超时重试
https://shishan100.gitee.io/docs/#/./docs/distributed-system/dubbo-service-management
【面试题】 - 分布式服务接口的幂等性如何设计(比如不能重复扣款)?
幂等
https://shishan100.gitee.io/docs/#/./docs/distributed-system/distributed-system-idempotency
【面试题】 - 分布式服务接口请求的顺序性如何保证?
https://shishan100.gitee.io/docs/#/./docs/distributed-system/distributed-system-request-sequence
【面试题】 - 如何自己设计一个类似 Dubbo 的 RPC 框架?
https://shishan100.gitee.io/docs/#/./docs/distributed-system/dubbo-rpc-design
【面试题】 - 为什么要进行系统拆分?如何进行系统拆分?拆分后不用 dubbo 可以吗?
为什么要将系统进行拆分?如何进行系统拆分?拆分后不用 dubbo 可以吗?
https://shishan100.gitee.io/docs/#/./docs/distributed-system/why-dubbo
分布式锁
【面试题】 - zookeeper 都有哪些使用场景?
https://shishan100.gitee.io/docs/#/./docs/distributed-system/zookeeper-application-scenarios
【面试题】 - 一般实现分布式锁都有哪些方式?使用 redis 如何设计分布式锁?使用 zk 来设计分布式锁可以吗?这两种分布式锁的实现方式哪种效率比较高?
redis 分布式锁,redis 最普通的分布式锁,RedLock 算法,zk 分布式锁,redis 分布式锁和 zk 分布式锁的对比
https://shishan100.gitee.io/docs/#/./docs/distributed-system/distributed-lock-redis-vs-zookeeper
分布式事务
【面试题】 - 分布式事务了解吗?你们是如何解决分布式事务问题的?
XA 方案,TCC 方案,本地消息表,可靠消息最终一致性方案,最大努力通知方案,
https://shishan100.gitee.io/docs/#/./docs/distributed-system/distributed-transaction
关于如何实现一个TCC分布式事务框架的一点思考
分布式会话
【面试题】 - 集群部署时的分布式 session 如何实现?
完全不用 session,tomcat + redis,spring session + redis,
https://shishan100.gitee.io/docs/#/./docs/distributed-system/distributed-session
分布式限流降级
【面试题】 - Hystrix 介绍
Hystrix 是什么?,Hystrix 的历史,Hystrix 的设计原则,Hystrix 更加细节的设计原则
https://shishan100.gitee.io/docs/#/./docs/high-availability/hystrix-introduction
面试题大全及答案
CSDN【精】
电商网站的商品详情页系统架构
小型电商网站的商品详情页系统架构,大型电商网站的商品详情页系统架构,
基于 Hystrix 线程池技术实现资源隔离
利用 HystrixCommand 获取单条数据,利用 HystrixObservableCommand 批量获取数据,
https://shishan100.gitee.io/docs/#/./docs/high-availability/hystrix-thread-pool-isolation
基于 Hystrix 信号量机制实现资源隔离
https://shishan100.gitee.io/docs/#/./docs/high-availability/hystrix-semphore-isolation
Hystrix 隔离策略细粒度控制
execution.isolation.strategy,command key & command group,command thread pool,command key & command group & command thread pool,coreSize,queueSizeRejectionThreshold,execution.isolation.semaphore.maxConcurrentRequests
https://shishan100.gitee.io/docs/#/./docs/high-availability/hystrix-execution-isolation
深入 Hystrix 执行时内部原理
https://shishan100.gitee.io/docs/#/./docs/high-availability/hystrix-process
基于 request cache 请求缓存技术优化批量商品数据查询接口
https://shishan100.gitee.io/docs/#/./docs/high-availability/hystrix-request-cache
基于本地缓存的 fallback 降级机制
https://shishan100.gitee.io/docs/#/./docs/high-availability/hystrix-fallback
深入 Hystrix 断路器执行原理
https://shishan100.gitee.io/docs/#/./docs/high-availability/hystrix-circuit-breaker
深入 Hystrix 线程池隔离与接口限流
https://shishan100.gitee.io/docs/#/./docs/high-availability/hystrix-thread-pool-current-limiting
基于 timeout 机制为服务接口调用超时提供安全保护
https://shishan100.gitee.io/docs/#/./docs/high-availability/hystrix-timeout
面试突击第二季
技术广度,为什么要这么考察一个人的技术广度?
https://shishan100.gitee.io/docs/#/./docs/distributed-system/distributed-design
系统性的分析了一下大厂对一个工程师的要:
https://shishan100.gitee.io/docs/#/./docs/distributed-system/java-interview-season-1-summary
Spring简单架构图
整体
https://shishan100.gitee.io/docs/#/./docs/distributed-system/core-architecture-principle
rpc简单调用
https://shishan100.gitee.io/docs/#/./docs/distributed-system/dubbo-framework-principle
rpc+netty
https://shishan100.gitee.io/docs/#/./docs/distributed-system/dubbo-rock-bottom
注册中心简单原理
https://shishan100.gitee.io/docs/#/./docs/distributed-system/springCloud-study-theory
https://shishan100.gitee.io/docs/#/./docs/distributed-system/registration-center-optimize
https://shishan100.gitee.io/docs/#/./docs/distributed-system/registration-center-guide
每秒10W并发简单架构
https://shishan100.gitee.io/docs/#/./docs/distributed-system/gateway-high-concurrency
分布式事务简单架构
https://shishan100.gitee.io/docs/#/./docs/distributed-system/rocketmq-transaction
分布式锁简单架构
https://shishan100.gitee.io/docs/#/./docs/distributed-system/distributed-lock
https://shishan100.gitee.io/docs/#/./docs/distributed-system/redis-distribute-lock
zookeeper实现
https://shishan100.gitee.io/docs/#/./docs/distributed-system/zookeeper-distribute-lock
解决羊群效应
https://shishan100.gitee.io/docs/#/./docs/distributed-system/zookeeper-distribute-lock-optimize
elasticsearch
读写原理
ES:写入原理详解_焦焦^_^的博客-CSDN博客_es写入原理
微服务
Spring Cloud底层原理
https://shishan100.gitee.io/docs/#/./docs/microservice/page1
微服务注册中心如何承载大型系统的千万级访问?Eureka核心原理,多级缓存机制
https://shishan100.gitee.io/docs/#/./docs/microservice/page2
Spring Cloud 参数优化实战
https://shishan100.gitee.io/docs/#/./docs/microservice/page3
微服务架构如何保障双11狂欢下的99.99%高可用 Hystrix参数设置 线程池配置
https://shishan100.gitee.io/docs/#/./docs/microservice/page4
注册中心不开源了怎么办?Eureka不好用了
https://shishan100.gitee.io/docs/#/./docs/microservice/page5
如何优化Spring Cloud微服务注册中心架构?Consul架构原理
https://shishan100.gitee.io/docs/#/./docs/microservice/page6
分布式
Zookeeper
领导选举
ZAB协议:
深入分析Zookeeper的Leader 选举实现原理 - 吴振照 - 博客园
Zookeeper选举算法原理
Zookeeper选举算法原理_La victoria的博客-CSDN博客_zookeeper选举原理
TCC分布式事务的实现原理!
https://shishan100.gitee.io/docs/#/./docs/distributed/page1
最终一致性分布式事务如何保障实际生产中99.99%高可用?分布式事务的高可用
https://shishan100.gitee.io/docs/#/./docs/distributed/page2
Redis 分布式锁的实现原理
https://shishan100.gitee.io/docs/#/./docs/distributed/page3
分布式锁高并发优化实践
https://shishan100.gitee.io/docs/#/./docs/distributed/page4
ZooKeeper分布式锁的实现原理
https://shishan100.gitee.io/docs/#/./docs/distributed/page5
分布式系统容错架构设计
https://shishan100.gitee.io/docs/#/./docs/distributed/page6
分布式搜索引擎的架构原理 ElasticSearch
https://shishan100.gitee.io/docs/#/./docs/distributed/page7
分布式系统的唯一id生成算法你了解吗?snowflake算法
https://shishan100.gitee.io/docs/#/./docs/distributed/page8
什么是分布式计算系统!
https://shishan100.gitee.io/docs/#/./docs/distributed/page9
到底啥是分布式系统开发经验?
https://shishan100.gitee.io/docs/#/./docs/distributed/page10
线上经验总结
扎心!线上服务宕机时,如何保证数据100%不丢失?
https://shishan100.gitee.io/docs/#/./docs/middleware/page5
一次JVM FullGC的背后,竟隐藏着惊心动魄的线上生产事故!Quorum机制
https://shishan100.gitee.io/docs/#/./docs/online-experience-summary/page1
【来自一线的血泪总结】你的系统上线时是否踩过这些坑?
https://shishan100.gitee.io/docs/#/./docs/online-experience-summary/page2
老司机生产实践经验:线上系统的 JVM 内存是越大越好吗?
内存缓冲 os cache
https://shishan100.gitee.io/docs/#/./docs/online-experience-summary/page3
操作系统
IO流
系统IO与网络IO概要
【操作系统】系统IO与网络IO简要_柯南721的博客-CSDN博客
Java I/O体系从原理到应用,这一篇全说清楚了 - 掘金【精】
算法
Quorum算法。数据不丢失算法
大数据技术栈
Hadoop
兄弟,用大白话告诉你小白都能看懂的Hadoop架构原理
兄弟,用大白话告诉你小白都能看懂的Hadoop架构原理【石杉的架构笔记】
Hadoop如何给文件上锁-契约机制
https://shishan100.gitee.io/docs/#/./docs/big-data/page1
大规模集群下 Hadoop NameNode 如何承载每秒上千次的高并发访问
性能两大杀手:磁盘写 + 网络写!分段加锁机制 + 内存双缓冲机制,etigslog
https://shishan100.gitee.io/docs/#/./docs/big-data/page2
Hadoop如何将TB级大文件的上传性能优化上百倍?
Chunk 缓冲机制,Packet 数据包机制,内存队列异步发送机制
https://shishan100.gitee.io/docs/#/./docs/big-data/page3
看 Hadoop 底层算法如何优雅的将大规模集群性能提升 10 倍以上?【同上】
https://shishan100.gitee.io/docs/#/./docs/big-data/page4【同上】
Spark
Spark如何处理数据倾斜
Spark如何处理数据倾斜_彩笔程序猿zxxxx的博客-CSDN博客
Spark:对数据倾斜的八种处理方法_花和尚也有春天的博客-CSDN博客
Spark广播变量【优化】
Spark性能调优:广播大变量broadcast_生命不息丶折腾不止的博客-CSDN博客_spark广播变量的大小限制
Spark性能优化原则【优化】【美团技术团队】
机器学习
Word2vec
一文看懂 Word2vec(基本概念+2种训练模型+5个优缺点)
N-gram
自然语言处理NLP中的N-gram模型_蕉叉熵的博客-CSDN博客_n-gram
BERT
GPT2.0
PageRank
PageRank算法_hguisu的博客-CSDN博客_pagerank
TextRank
手把手 | 基于TextRank算法的文本摘要(附Python代码)_ITPUB博客
【推荐系统】基于TextRank算法+TF-IDF算法提取关键词_柯南721的博客-CSDN博客
TF-IDF
【推荐系统】基于TextRank算法+TF-IDF算法提取关键词_柯南721的博客-CSDN博客
TF-IDF算法介绍及实现_Asia-Lee的博客-CSDN博客_tf-idf
LFM
【推荐系统】内容召回策略实现 & 实现在线召回策略及模型召回策略_柯南721的博客-CSDN博客
推荐系统之LFM算法详解_一种tang两种味的博客-CSDN博客_lfm推荐算法
ALS
【推荐系统】内容召回策略实现 & 实现在线召回策略及模型召回策略_柯南721的博客-CSDN博客
SparkML之推荐算法(一)ALS_legotime的博客-CSDN博客
布隆过滤器
布隆过滤器(Bloom Filter)详解 - 李玉龙 - 博客园
HBase的布隆过滤器详解_chicken_shit_bro的博客-CSDN博客_hbase 布隆过滤器
倒排索引
https://shishan100.gitee.io/docs/#/./docs/distributed/page7
评价推荐模型的好坏
【推荐系统】推荐系统在线实时推荐部分_柯南721的博客-CSDN博客_在线 推荐系统
Flink
超神文档
【Flink】Flink超神文档_柯南721的博客-CSDN博客
集群搭建
Standalone YarnHA
【Flink】Standalone YarnHA_柯南721的博客-CSDN博客
subtask划分及任务调度
https://blog.csdn.net/everyonetimeismoney/article/details/113422948
协议
Raft 强一致协议
推荐系统
MySql
优化
MySQL底层实现机制
MySQL底层实现机制_kiss火葱花的博客-CSDN博客_mysql底层实现
Mysql insert原理
图解MySQL | [原理解析] MySQL insert 语句的磁盘写入之旅 - SegmentFault 思否
Mysql 事务原理
组合索引原理
Mysql - 组合索引的B+树存储结构(最左前缀原理) - 腾讯云开发者社区-腾讯云【单个索引】
https://blog.csdn.net/feichitianxia/article/details/107997795【组合索引】
索引-部门技术分享
慢SQL优化第一弹 - MySQL 索引那些事儿_柯南721的博客-CSDN博客
Mysql_Binlog同步数据
算法
图
迪杰斯特拉算法【最短路径算法之一】
时间点:02:00:00
堆
视频
代码
加强堆
视频
代码
亿级流量架构
【架构演进】亿级流量系统架构之如何支撑百亿级数据的存储与计算
滑动时间窗口
https://shishan100.gitee.io/docs/#/./docs/billion-level-traffic-architecture/page1
【架构演进】亿级流量系统架构之如何设计高容错分布式计算系统
弹性资源调度,分布式系统高容错机制
https://shishan100.gitee.io/docs/#/./docs/billion-level-traffic-architecture/page2
【架构演进】亿级流量系统架构之如何设计承载百亿流量的高性能架构
计算与存储分离,内存计算,MQ削峰以及流量控制,数据的动静分离架构,静态数据做个轻量级的cache
https://shishan100.gitee.io/docs/#/./docs/billion-level-traffic-architecture/page3
【架构演进】亿级流量系统架构之如何设计每秒十万查询的高并发架构
分库分表 + 读写分离,冷热数据分离,ES+HBase,实时数据存储引入缓存集群,双写的方式
https://shishan100.gitee.io/docs/#/./docs/billion-level-traffic-architecture/page4
【架构演进】亿级流量系统架构之如何设计全链路99.99%高可用架构
异步转同步 + 限流算法 + 限制性丢弃流量,临时扩容 Slave 集群 + 内存级分片存储 + 小时级数据粒度,计算任务重分配 + 主备切换机制,自研缓存集群查询引擎 + JVM 本地缓存 + 限流机制
收集查询日志 + 离线日志分析 + 缓存高频查询
https://shishan100.gitee.io/docs/#/./docs/billion-level-traffic-architecture/page5
如何在上万并发场景下设计可扩展架构(上)?
https://shishan100.gitee.io/docs/#/./docs/billion-level-traffic-architecture/page6
亿级流量系统架构之如何在上万并发场景下设计可扩展架构(中)?
https://shishan100.gitee.io/docs/#/./docs/billion-level-traffic-architecture/page7
亿级流量系统架构之如何在上万并发场景下设计可扩展架构(下)?
https://shishan100.gitee.io/docs/#/./docs/billion-level-traffic-architecture/page8
亿级流量架构第二弹:你的系统真的无懈可击吗?
https://shishan100.gitee.io/docs/#/./docs/billion-level-traffic-architecture/page9
亿级流量系统架构之如何保证百亿流量下的数据一致性(上)
https://shishan100.gitee.io/docs/#/./docs/billion-level-traffic-architecture/page10
亿级流量系统架构之如何保证百亿流量下的数据一致性(中)?
https://shishan100.gitee.io/docs/#/./docs/billion-level-traffic-architecture/page11
亿级流量系统架构之如何保证百亿流量下的数据一致性(下)?
https://shishan100.gitee.io/docs/#/./docs/billion-level-traffic-architecture/page12
亿级流量电商详情页系统实战
面试官
互联网公司的面试官是如何360°无死角考察候选人的?(上篇)
https://shishan100.gitee.io/docs/#/./docs/interview-essential/page1
互联网公司的面试官是如何360°无死角考察候选人的?(下篇)
https://shishan100.gitee.io/docs/#/./docs/interview-essential/page2
面试经验
记一位朋友斩获 BAT 技术专家 Offer 的面试经历
https://shishan100.gitee.io/docs/#/./docs/interview-essential/page3
职业发展
英语差的程序员如何才能无障碍阅读官方文档?
https://shishan100.gitee.io/docs/#/./docs/career-development/page1
中小公司的Java工程师应该如何逆袭冲进BAT?
https://shishan100.gitee.io/docs/#/./docs/career-development/page2
【码农打怪升级之路】行走江湖,你需要解锁哪些技能包?
https://shishan100.gitee.io/docs/#/./docs/career-development/page3
三四十岁的大龄程序员,应该如何保持自己的职场竞争力?
https://shishan100.gitee.io/docs/#/./docs/career-development/page4
如何阅读一个开源项目的源码?
https://shishan100.gitee.io/docs/#/./docs/career-development/page5