1 请说明什么是Apache Kafka?
Apache Kafka是由Apache开发的一种发布订阅消息系统,它是一个分布式的、分区的和重复的日志服务。
2 请说明什么是传统的消息传递方法?
传统的消息传递方法包括两种:
- 排队:在队列中,一组用户可以从服务器中读取消息,每条消息都发送给其中一个人。
- 发布-订阅:在这个模型中,消息被广播给所有的用户。
3 请说明Kafka相对于传统的消息传递方法有什么优势?
- 高性能:单一的Kafka代理可以处理成千上万的客户端,每秒处理数兆字节的读写操作,Kafka性能远超过传统的ActiveMQ、RabbitMQ等,而且Kafka支持Batch操作;
- 可扩展:Kafka集群可以透明的扩展,增加新的服务器进集群;
- 容错性: Kafka每个Partition数据会复制到几台服务器,当某个Broker失效时,Zookeeper将通知生产者和消费者从而使用其他的Broker;
4 在Kafka中broker的意义是什么?
在Kafka集群中,broker指Kafka服务器。
5 Kafka服务器能接收到的最大信息是多少?
Kafka服务器可以接收到的消息的最大大小是1000000字节。
6 Kafka中的ZooKeeper是什么?Kafka是否可以脱离ZooKeeper独立运行?
Zookeeper是一个开放源码的、高性能的协调服务,它用于Kafka的分布式应用。不可以,不可能越过Zookeep