Part 01
功能介绍
- 开发者控制台功能
1.服务实例管理:Kafka集群实例配置信息及白名单管理。
2.数据统计:统计单Topic、Group每日消息生产量及消费量。
3.Topic管理:Topic基础信息及订阅关系管理。
4.Consumer Group管理:Group基础信息及消费状态管理。
- 后台管理系统
1.服务集群管理:提供Kafka集群实例添加及配置管功能。
2.授权用户管理:为开发者配置Kafka集群实例及资源权限。
城市物联网平台实现的Kafka推送是在开源Apache Kafka 2.8.x版本上,增加了以用户为维度的鉴权、授权机制以及资源管理功能,同时实现了与规则引擎的数据对接,通过配置规则引擎,将设备基础数据,感知数据等应用数据推送给上层SaaS应用,可以直接通过Kafka官网的客户端消费数据。
Part 02
Kafka推送优势
- 性能对比
Kafka具有低时延、高可用性的特性,吞吐量高,单机写入TPS约在百万条/秒,与物联网设备数据量大的场景比较契合。
- 运维实施
社区活跃,使用场景广泛,部署实践经验较丰富、开源学习成本低,对于研发、运维人员门槛低,能够轻松完成应用数据对接开发。
- 项目支撑
可同时支持多个应用子系统的数据集成需求,减少内部消息转发业务研发,同时可缓存部分数据;Kafka消息中间件,通用性强、适用范围更广,数据对接流程简单。
Part 03
Kafka推送关键技术分析
城市平台Kafka推送基于官方的客户端实现,通过官网客户端提供的API进行鉴权,授权及资源隔离等操作。
- Kafka鉴权
基于SASL/SCRAM连接鉴权,可以通过命令或者API创建、删除用户。
- Kafka授权
可以基于Topic、分组对用户授权,保证用户的数据隔离。
- 资源隔离
可以基于用户消费、生产速率配额,限制带宽。
- 关键API列举