Kafka及其相关
1、Kafka入门
①项目使用场景:异步的站内消息通知,比如谁给我发私信了,谁给我点赞了,谁关注我了。系统发布通知是非常频繁的行为,就可以使用消息队列来保证性能。
阻塞队列是在不适用Kafka这种框架时可以用的比较原始的一些使用方式。
②相关术语:
Broker,Kafka的服务器;
Zookeeper,管理Kakfa的集群;
Topic,消息队列的实现方式(点对点每个数据只被一个消费者消费,发布订阅一个数据可以被多个消费者消费),用来存放数据的位置;
一台kafka服务器就是一个broker。一个集群由多个broker组成。一个broker可以容纳多个topic,一个topic可以看作一个队列。
Partition,对Topic的分区,这里就可以支持多线程并发。
Offset,消息在Topic中存在的索引。
Leader Replica,主副本,既是备份也做响应。
Follower Replica,从副本,只是备份不负责做响应。
2、Spring整合Kafka
①发送系统通知:
评论、点赞、关注分别设置三个主题Topic。
生产者和消费者可以并发进行。