《Latin Holes 2》,其他作品,美国出品,2005年上映。
是一本值得一看的书。书中对于妈妈是地,是太阳,是水,是风的比喻就很吸引人,很有哲意。文中对于一些哲学问题的思考,不仅是在引导孩子,更是在引导自己思考,解释的角度很新颖独特。同时又很疑惑对于四五岁的低龄孩子来说是不是真的能领悟到其中的内涵。做好一个妈妈要在实践中不断探索和完善。
比较老的一本剧,可以起到一些查漏补缺的效果吧,有一定专业度,但很多内容都只是提及一下而已,感觉不够细致。但是作为一本扫盲书的话,知识点又略为晦涩了一点。
读起来很快很流畅,因为大多数是片段式的记叙,中间也有少量细腻描写,致力于描绘三姐妹的群像,多知多懂吧。
这本关于Kafka的书写得非常详尽,很多底层细节和原理都分析得很透彻,对比市面上不同产品的技术方案,总结出各种实现的优缺点,做到触类旁通,对于一些可能在业务场景中需要但是Kafka本身没有的功能,编剧都提出了相应的解决方案。 producer:生产者,生成消息。 consumer:消费者,消费消息。 broker:存储和管理消息的节点。 topic:主题,消息的一级分类。 partition:分区,一个主题有多个分区,每一个分区对应一个Log日志根剧集列表。 replica:副本,一个分区有多个副本,每一个副本对应一个Log日志分段。每一个分区有一个leader副本,有多个follower副本,读写发生在leader副本,follower只作备份。为了负载均衡,不同分区的leader副本会尽可能地分布在不同的broker上。 Kafka集成了zookeeper作为协调服务,易于动态扩展,批量发送、顺序读写、零拷贝、页缓存等技术,使他具备高吞吐量的特性,消息存储在磁盘上实现持久性,消息传输重试和确认机制、幂等和事务、分区多副本确保了可靠性,时间轮与delayQueue结合,在大量分布式定时任务的条件下,保证了精确性同时,又保证了性能。 Kafka生产者发送消息 指定要发送的Topic,还可以指定Key。 Key是用来指定消息的键,它不仅是消息的附加信息,还可以用来计算分区号进而可以让消息发往特定的分区。前面提及消息以主题为单位进行归类,而这个key可以让消息再进行二次归类,同一个key的消息会被划分到同一个分区中。 Kafka的消费者与消费组 一个消费者可以订阅一个或多个主题。 每个消费者都有一个对应的消费组。当消息发布到主题后,只会被投递给订阅它的每个消费组中的一个消费者。 假设目前某消费组内只有一个消费者 C0,订阅了一个主题,这个主题包含 7 个分区:P0、P1、P2、P3、P4、P5、P6。也就是说,这个消费者C0订阅了7个分区。 此时消费组内又加入了一个新的消费者C1,按照既定的逻辑,需要将原来消费者C0的部分分区分配给消费者C1消费。消费者C0和C1各自负责消费所分配到的分区,彼此之间并无逻辑上的干扰。 紧接着消费组内又加入了一个新的消费者C2,消费者C0、C1和C2各自负责消费所分配到的分区。 消费者与消费组这种模型可以让整体的消费能力具备横向伸缩性,我们可以增加(或减少)消费者的个数来提高(或降低)整体的消费能力。对于分区数固定的情况,一味地增加消费者并不会让消费能力一直得到提升,如果消费者过多,出现了消费者的个数大于分区个数的情况,就会有消费者分配不到任何分区。 Kafka的幂等性 Producer在生产发送消息时,难免会重复发送消息。Producer进行retry时会产生重试机制,发生消息重复发送。而引入幂等性后,重复发送只会生成一条有效的消息。 Kafka的事务 Kafka中的事务是指一系列的Producer生产消息和消费消息提交Offsets的操作在一个事务中,即原子性操作。对应的结果是同时成功或者同时失败。 需要与数据库中事务进行区别,操作数据库中的事务指一系列的增删查改,对Kafka来说,操作事务是指一系列的生产和消费等原子性操作。
是一本值得一看的书。书中对于妈妈是地,是太阳,是水,是风的比喻就很吸引人,很有哲意。文中对于一些哲学问题的思考,不仅是在引导孩子,更是在引导自己思考,解释的角度很新颖独特。同时又很疑惑对于四五岁的低龄孩子来说是不是真的能领悟到其中的内涵。做好一个妈妈要在实践中不断探索和完善。
比较老的一本剧,可以起到一些查漏补缺的效果吧,有一定专业度,但很多内容都只是提及一下而已,感觉不够细致。但是作为一本扫盲书的话,知识点又略为晦涩了一点。
读起来很快很流畅,因为大多数是片段式的记叙,中间也有少量细腻描写,致力于描绘三姐妹的群像,多知多懂吧。
这本关于Kafka的书写得非常详尽,很多底层细节和原理都分析得很透彻,对比市面上不同产品的技术方案,总结出各种实现的优缺点,做到触类旁通,对于一些可能在业务场景中需要但是Kafka本身没有的功能,编剧都提出了相应的解决方案。 producer:生产者,生成消息。 consumer:消费者,消费消息。 broker:存储和管理消息的节点。 topic:主题,消息的一级分类。 partition:分区,一个主题有多个分区,每一个分区对应一个Log日志根剧集列表。 replica:副本,一个分区有多个副本,每一个副本对应一个Log日志分段。每一个分区有一个leader副本,有多个follower副本,读写发生在leader副本,follower只作备份。为了负载均衡,不同分区的leader副本会尽可能地分布在不同的broker上。 Kafka集成了zookeeper作为协调服务,易于动态扩展,批量发送、顺序读写、零拷贝、页缓存等技术,使他具备高吞吐量的特性,消息存储在磁盘上实现持久性,消息传输重试和确认机制、幂等和事务、分区多副本确保了可靠性,时间轮与delayQueue结合,在大量分布式定时任务的条件下,保证了精确性同时,又保证了性能。 Kafka生产者发送消息 指定要发送的Topic,还可以指定Key。 Key是用来指定消息的键,它不仅是消息的附加信息,还可以用来计算分区号进而可以让消息发往特定的分区。前面提及消息以主题为单位进行归类,而这个key可以让消息再进行二次归类,同一个key的消息会被划分到同一个分区中。 Kafka的消费者与消费组 一个消费者可以订阅一个或多个主题。 每个消费者都有一个对应的消费组。当消息发布到主题后,只会被投递给订阅它的每个消费组中的一个消费者。 假设目前某消费组内只有一个消费者 C0,订阅了一个主题,这个主题包含 7 个分区:P0、P1、P2、P3、P4、P5、P6。也就是说,这个消费者C0订阅了7个分区。 此时消费组内又加入了一个新的消费者C1,按照既定的逻辑,需要将原来消费者C0的部分分区分配给消费者C1消费。消费者C0和C1各自负责消费所分配到的分区,彼此之间并无逻辑上的干扰。 紧接着消费组内又加入了一个新的消费者C2,消费者C0、C1和C2各自负责消费所分配到的分区。 消费者与消费组这种模型可以让整体的消费能力具备横向伸缩性,我们可以增加(或减少)消费者的个数来提高(或降低)整体的消费能力。对于分区数固定的情况,一味地增加消费者并不会让消费能力一直得到提升,如果消费者过多,出现了消费者的个数大于分区个数的情况,就会有消费者分配不到任何分区。 Kafka的幂等性 Producer在生产发送消息时,难免会重复发送消息。Producer进行retry时会产生重试机制,发生消息重复发送。而引入幂等性后,重复发送只会生成一条有效的消息。 Kafka的事务 Kafka中的事务是指一系列的Producer生产消息和消费消息提交Offsets的操作在一个事务中,即原子性操作。对应的结果是同时成功或者同时失败。 需要与数据库中事务进行区别,操作数据库中的事务指一系列的增删查改,对Kafka来说,操作事务是指一系列的生产和消费等原子性操作。