# Kafka
发布 - 订阅模式的消息队列中间件
what is 发布 - 订阅模式?生产者发送消息到消息队列,消费者轮询主动拉取消息
# 优点
- 解耦:两边独立的修改和可扩展处理
- 可恢复性:消息存在队列中,一部分系统挂了,也可以重启继续读取消息队列
- 缓冲:解决生产者和消费者速度不一致问题
- 削峰:防止流量猛增导致系统崩溃
- 异步处理:等待指定时间后处理消息
# 速度快?
-
页缓存
保存在内存
数据写入磁盘,采用
write-back
机制:先判断是否在页缓存中存在,不存在添加到页缓存,然后再向磁盘中写入。 -
零拷贝:不需要 CPU 拷贝,通过 sendfile 实现 DMA 拷贝,上下文切换从四次变为两次