Cloud-Native, Distributed Messaging and Streaming
Apache Pulsar is a distributed, open source pub-sub messaging and streaming platform for real-time workloads, managing hundreds of billions of events per day.
What is Apache Pulsar?
Apache Pulsar is a cloud-native, multi-tenant, high-performance solution for server-to-server messaging and queuing built on the publisher-subscribe (pub-sub) pattern. Pulsar combines the best features of a traditional messaging system like RabbitMQ with those of a pub-sub system like Apache Kafka – scaling up or down dynamically without downtime. It's used by thousands of companies for high-performance data pipelines, microservices, instant messaging, data integrations, and more.
Pulsar Features
Cloud-native
A multiple layer approach separating compute from storage to work with cloud infrastructures and Kubernetes.
Serverless functions
Write serverless functions with developer-friendly APIs to natively process data immediately upon arrival. No need to run your own stream processing engine.
Horizontally scalable
Expand capacity seamlessly to hundreds of nodes.
Low latency with durability
Low publish latency (< 5ms) at scale with strong durability guarantees.
Geo-replication
Configurable replication between data centers across multiple geographic regions.
Multi-tenancy
Built from the ground up as a multi-tenant system. Supports isolation, authentication, authorization, and quotas.
Persistent storage
Persistent message storage based on Apache BookKeeper. IO-level isolation between write, and read operations.
Client libraries
Flexible messaging models with high-level APIs for Java, Go, Python, C++, Node.js, WebSocket and C#.
Operability
REST Admin API for provisioning, administration, tools and monitoring. Can be deployed on bare metal, Kubernetes, Amazon Web Services(AWS), and DataCenter Operating System(DC/OS).
Pulsar Users
Run in production at scale with millions of messages per second across millions of topics, Pulsar is now used by thousands of companies for real-time workloads.
Pulsar is unique in that it supports both streaming and queueing use cases, while also supporting a wide feature set that makes it a viable alternative to many other distributed messaging technologies currently being used in our architecture. Pulsar covers all of our use cases for Kafka, RabbitMQ, and SQS. This lets us focus on building expertise and tooling around a single unified system
Greg Methvin | Iterable