动静分离和CDN加速
图片、视频走CDN
多级缓存(本地缓存+分布式缓存)
热点内容(评论、帖子)本地缓存
读写分离(Master/Slave、一主多从)
mysql主从架构
异步(消息、多线程)
生产内容异步写入消息队列
批量读写
数据异构(宽表、搜索引擎、转换为时候高并发读的结构)
ES
数据分片
网络线程模型1+N+M(监听线程+IO线程+业务线程)
tomcat线程模型
Netty线程模型
使用内存代替DB事务操作(写内存+预写日志WAL(LSM树))
Hbase
分治法(多机房、多实例、数据分片)
异地多活
并发请求串行化(请求排队)+ 单进程单线程
Redis、nginx
数据压缩
kafka数据压缩。
冷热分离
Feed流表按照时间分区
高效的数据结构
Redis的压缩列表、跳表、布隆过滤器
无锁架构,减少资源竞争
Disruptor无锁设计。Disruptor底层采用RingBuffer的结构,就是一个循环使用下标的数组;CAS保证游标线程安全;底层数组,充分利用缓存
Log4j 2的异步模式采用了Disruptor来处理