2 Getting to Know Pulsar

 

This chapter covers

  • Overview of Pulsar concepts and architecture.
  • How to launch a Pulsar cluster on your laptop using Docker
  • How to interact with Pulsar using its command-line tools
  • How to interact with Pulsar using the Java client library

Now that you have been introduced to the Pulsar messaging platform and how it compares to other messaging systems, we will drill down into the low-level architectural details of the platform and cover some of the unique terminology used by the platform.

If you are unfamiliar with messaging systems and distributed systems, then it might be difficult to wrap your head around some of the Pulsar's concepts and terminology. Therefore, I will introduce them in a progressive fashion using a more concrete example.

2.1   Problem Statement

Let’s consider a scenario in which you are an online game publisher and have been assigned to work on one of their new massively multiplayer online games that will be available to players from around the world. One of the key’s to making this game popular is to create a way to motivate, reward, and recognize players for the achievements.

2.1.1   Collecting the Data

2.2   Pulsar Concepts and Terminology

2.2.1   Brokers, Bookies, and Proxies

2.2.2   Producers, Consumers, and Subscriptions

2.2.3   Tenants, Namespaces, and Topics

2.2.4   Message Retention and Expiration

2.3   Stream Storage

2.3.1   BookKeeper Terminology

2.3.2   Data Access Patterns

2.4   Getting Started with Pulsar

2.4.1   Pulsar Admin

2.4.2   Pulsar Client

2.5   Pulsar Java Client

2.5.1   Accessing the Pulsar Client Libraries

2.5.2   Pulsar Client Configuration

2.5.3   Pulsar Producers

2.5.4   Pulsar Consumers

2.6   Summary

sitemap