Pulsar学习笔记

概述

Apache Pulsar 是 Apache 软件基金会顶级项目,是下一代云原生分布式消息流平台,集消息、存储、轻量化函数式计算为一体,
采用计算与存储分离架构设计,支持多租户、持久化存储、多机房跨区域数据复制,具有强一致性、高吞吐、低延时及高可扩展性等流数据存储特性,
被看作是云原生时代实时消息流传输、存储和计算最佳解决方案。

组件介绍

  • pulsar组件
    pulsar组件

  • 消息结构

EventStream
segment1
segment2
segment3
message1
message2
Leder-id
entry-id
batch-index
partition-index
  • 组件描述
组件描述
Value / data payload消息携带的数据。所有 Pulsar 消息都包含原始字节,尽管消息数据也可以符合数据模式。
Key消息可以有选择地使用键标记,这对于诸如主题压缩之类的事情很有用。
Properties用户定义属性的可选键/值映射。
Topic name消息要发布到的主题的名称。
Schema version使用该模式生成消息的版本号。
Sequence ID每条pulsar信息都属于其主题的有序序列。消息的序列ID最初是由它的生产者分配的,表示它在序列中的顺序,也可以定制。
“序列ID”可用于重复数据删除。如果brokerDeduplicationEnabled设置为true,每个消息的序列ID在一个主题(未分区)或分区的生产者中是唯一的。
Message ID消息的消息ID在消息被持久化存储后立即由经纪人分配。消息ID表示消息在分类账中的特定位置,在Pulsar集群中是唯一的。
Publish time消息发布的时间戳。时间戳由生产者自动应用。
Event time由应用程序附加到消息上的可选时间戳。例如,应用程序在处理消息时附加时间戳。如果没有设置事件时间,则该值为0。
    Producer:数据生产者,发送消息的一方。生产者负责创建消息,将其投递到 Pulsar 中。
    Consumer:数据消费者,接收消息的一方。消费者连接到 Pulsar 并接收消息,进行相应的业务处理。
    Broker:无状态的服务层,负责接收消息、传递消息、集群负载均衡等操作。Broker 不会持久化保存元数据。
    BookKeeper:有状态的持久层,负责持久化地存储消息。
    ZooKeeper:存储 Pulsar、BookKeeper 的元数据,集群配置等信息,负责集群间的协调(例如:Topic 与 Broker 的关系)、服务发现等。
可扩展
  • Broker 扩展
    Broker 是无状态的,当需要支持更多的消费者或生产者时,可以简单地添加更多的 Broker 节点来满足业务需求。
    Pulsar 支持自动的分区负载均衡,在 Broker 节点的资源使用率达到阈值时,会将负载迁移到负载较低的 Broker 节点,
    这个过程中分区也将在多个 Broker 节点中做平衡迁移,一些分区的所有权会转移到新的 Broker 节点。
  • Bookie 扩展
    存储层的扩容,通过增加 Bookie 节点来实现。在 BooKie 扩容的阶段,由于分片机制,整个过程不会涉及到不必要的数据搬迁,
    即不需要将旧数据从现有存储节点重新复制到新存储节点。

部署文档(docker单机部署)

- 启动apachePulsar(单机)
docker run --name apachePulsar -dit -p 8080:8080 -p 6650:6650 apachepulsar/pulsar-standalone

- 启动管理平台
docker run --name apachePulsar-dashboard -dit -p 8081:80 -e SERVICE_URL=http://pulsar:8080 --link apachePulsar apachepulsar/pulsar-dashboard

- 测试消息发送
docker exec -it apachePulsar bash /pulsar/bin/pulsar-client produce my-topic --messages "hello-pulsar"

- 访问管理平台
http://localhost:8081/

Java接入Pulsar

相关网站

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值