https://kafka.apache.org/intro
Kafka
?Kafka
是一个分布式流处理平台。
引擎:具备某种传输和处理的能力
其实不管是消息引擎还是流式处理平台,Kafka
的处理流程从未发生质的变化:
如图:
写入到
kafka
中的数据是落地到了磁盘上,并且有冗余备份,kafka
允许producer
等待确认,通过配置,可实现直到所有的replication
完成复制才算写入成功,这样可保证数据的可用性。
Kafka
核心功能是什么?Kafka
有什么用?生产者与消费者解耦
具有持久化能力,可规避消息处理前丢失的风险
消息系统是统一的数据接口,各系统可扩展
支持峰值流量,业务系统可根据处理能力从消息系统中获取并处理对应量的请求
系统中部分组件失效并不会影响整个系统,它恢复后仍然可以从消息系统中获取并处理数据
在不需要立即处理请求的场景下,可以将请求放入消息系统,合适的时候再处理
Kafka
有什么特性?Kafka
设计之初旨在提供3个方面的功能特性:
A streaming platform has three key capabilities:
- Publish and subscribe to streams of records, similar to a message queue or enterprise messaging system.
- Store streams of records in a fault-tolerant durable way.
- Process streams of records as they occur.
流处理系统有这三种能力:
消息传输
解耦和生产者和消费者、缓存消息等。
代替传统的消息总线(message bus)或消息代理(message broker)
网站行为日志追踪
Kafka
经常被用来记录web
用户或者app
用户的各种活动,如浏览网页、搜索、点击等活动,这些活动信息被各个服务器发布到kafka的topic中,然后订阅者通过订阅这些topic来做实时的监控分析,或者装载到hadoop、数据仓库中做离线分析和挖掘。
审计数据收集
便捷地对多路消息进行实时收集,同时持久化。
满足对关键的操作和运维进行监控和审计。
日志收集
一个公司可以用Kafka
可以收集各种服务的 log,通过kafka
以统一接口服务的方式开放给各种 consumer
,例如Hadoop
、HBase
、Solr
等。
同时保持了低延时的特点。
Event Sourcing(事件源)
Event Sourcing
实际上是领域驱动设计(DDD)的名称,使用事件序列来表示状态变更。
流式处理
比如spark streaming
和 storm
http://www.thinkyixia.com/2017/10/25/kafka-2/
因篇幅问题不能全部显示,请点此查看更多更全内容
Copyright © 2019- nryq.cn 版权所有 赣ICP备2024042798号-6
违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com
本站由北京市万商天勤律师事务所王兴未律师提供法律服务