大橙子网站建设,新征程启航
为企业提供网站建设、域名注册、服务器等服务
本篇内容主要讲解“Pulsar与Kafka的对比”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Pulsar与Kafka的对比”吧!
成都创新互联成都网站建设按需定制,是成都网站设计公司,为自上料搅拌车提供网站建设服务,有成熟的网站定制合作流程,提供网站定制设计服务:原型图制作、网站创意设计、前端HTML5制作、后台程序开发等。成都网站建设热线:13518219792
Pulsar是一款分布式发布/订阅消息平台,近两年非常火,被称为下一代的消息流平台,大有取代Kafka的势头。今天我们就来比较一下Pulsar跟Kafka。
历史背景
Pulsar源自Yahoo,于2016年开源并捐献给Apache基金会,并在2018年9月升级成为Apache顶级项目。
Kafka最初由Linkedin开发,并于2010年贡献给了Apache基金会,之后成为Apache顶级项目。
架构
Kafka
Kafka架构由broker和zookeeper组成,如下图:
多租户
Pulsar
Pulsar是一个多租户系统,租户可以跨集群分布,每个租户都可以有单独的认证和授权机制。租户也是存储配额、消息 TTL 和隔离策略的管理单元。
Pulsar中topic的URL如下,可以看到租户是最基本的管理单位:
persistent://tenant/namespace/topic
上面的URL可以看到,Pulsar通过tenant和namespace来支持多租户。
namespace是一个术语,指租户的管理单元。同一个namespace上设置的配置策略适用于在namespace中创建的所有 topic。
Pulsar为实例中的每个租户分配:
授权机制
适用于租户配置的集群配置
Kafka
Kafka为了控制客户端对broker资源的限制,从0.9版本引入了配额(quotas)管理,强制客户端请求使用配额。目前Kafka支持两种类型的配额:
网络带宽配额,用来定义byte-rate阈值(从0.9版本开始)
请求速率配额,将CPU利用率阈值定义为网络和I/O线程的百分比(从0.11开始)
生产者和消费者有可能以很高的速率生产和消费大量的请求,从而垄断broker资源,导致网络饱和,最终影响到其他客户端和broker本身。使用配额可以防止这些问题,让集群体验更好。
运维
集群部署
Kafka去除Zookeeper以后,部署是非常简单的。而Pulsar目前还没有去除Zookeeper的详细计划,而且需要使用到BookKeeper集群,部署复杂不少。
扩容
Pulsar支持自动负载均衡,这对于增加broker节点和增加存储节点都非常方便。
云原生支持
Pulsar 计算和存储节点分离,对云原生支持很好。
Kafka 多数组件也支持云原生。
替换broker
Pulsar的broker节点是无状态的,替换时不用考虑数据丢失。
社区
Pulsar社区发展非常迅速,StreamNative 还推出了StreamNative Hub来支持Pulsar社区建设。[4]
但Pulsar毕竟是一个新型的消息中间件,文档和社区都不太完善。在过去的一年多时间里,Pulsar在这方面做了很多的努力,包括举办全球峰会,创作视频和培训教程,邀请专业讲师进行培训。
使用Pulsar时,遇到的一些问题可能在网上找不到答案,需要查找源代码来解决。这对于中小公司来说,无疑增加了使用成本。
而Kafka作为非常成熟中间件,用户遇到的问题也非常多,新用户可以很方便地从网上找到答案。
总结
Pulsar作为新型的云原生分布式消息流平台,确实有很多优秀的设计理念。
在Yahoo内部支持应用服务平台中 140 万个topic,日处理消息超过 1000 亿条。腾讯的分布式交易引擎 TDXA也使用了Pulsar,应用于腾讯的计费平台。[5]
kafka目前的使用场景最多的还是日志大数据处理,对金融场景的应用比较少。
但这并不能说明Pulsar可以取代Kafka,Kafka用户群体庞大,社区和资源完善,而且在2.8版本中去除了Zookeeper,部署非常容易。毕竟不是每家公司都需要Yahoo和腾讯这样的集群体量。
到此,相信大家对“Pulsar与Kafka的对比”有了更深的了解,不妨来实际操作一番吧!这里是创新互联网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!