Pulsar je messaging platforma nové generace. Oddělení compute od storage, multi-tenancy a tiered storage.
Pulsar vs Kafka¶
Klíčový rozdíl: stateless brokery + Apache BookKeeper pro storage.
Výhody¶
- Multi-tenancy — nativní izolace
- Tiered storage — offload do S3
- Geo-replication — vestavěná
- Pulsar Functions — serverless processing
import pulsar, json
client = pulsar.Client('pulsar://localhost:6650')
producer = client.create_producer('persistent://t/ns/orders')
producer.send(json.dumps(order).encode())
consumer = client.subscribe('persistent://t/ns/orders',
subscription_name='proc', consumer_type=pulsar.ConsumerType.Shared)
while True:
msg = consumer.receive()
process(json.loads(msg.data()))
consumer.acknowledge(msg)
Shrnutí¶
Pulsar je alternativa ke Kafce pro multi-tenancy a geo-replikaci. Oddělení compute/storage = lepší škálovatelnost.
apache pulsarmessagingstreamingcloud-native