Skip to content
Apache Pulsar - distributed pub-sub messaging system
Java C++ Python Go Shell C Other
Branch: master
Clone or download

Latest commit

trexinc and Anonymitaet [docs] Fix encryption examples (#6763)
* Fix encryption examples

* Minor grammar fix

Co-Authored-By: Yu Liu <50226895+Anonymitaet@users.noreply.github.com>

Co-authored-by: Yu Liu <50226895+Anonymitaet@users.noreply.github.com>
Latest commit 65ff6ac Apr 27, 2020

Files

Permalink
Type Name Latest commit message Commit time
Failed to load latest commit information.
.ci [CI] Group disabled components under the same tag in the ci clusters … Apr 18, 2020
.github Update Helm Chart Documentation (#6725) Apr 13, 2020
.test-infra/jenkins Removed mentions to incubator-pulsar (#2620) Sep 25, 2018
.travis Maven artifacts relases into Apache (#607) Jul 29, 2017
bin Add a message on how to make log refresh immediately when starting a … Feb 29, 2020
bouncy-castle Support BouncyCastle FIPS provider (#6588) Mar 28, 2020
build/docker Fix pulsar build image with maven 3.6.1 (#5886) Dec 18, 2019
buildtools Bump version to 2.6.0 (#5820) Dec 9, 2019
conf Avoid prefetch too much data when offloading data to HDFS (#6717) Apr 22, 2020
dashboard Switch from deprecated MAINTAINER tag to LABEL with maintainer's info… Feb 28, 2020
deployment Make secret name consistent (#6739) Apr 16, 2020
dev Vagrantfile update for build dependency (#5968) Jan 1, 2020
distribution Bump netty version to 4.1.48.Final (#6746) Apr 17, 2020
docker-compose/standalone-dashboard Add sample docker-compose file with pulsar standalone (#2617) Sep 24, 2018
docker [Grafana] Add tags to all grafana dashboards (#6770) Apr 27, 2020
examples ISSUE-5934: Support read/write properties from/to Message in flink pu… Mar 26, 2020
managed-ledger expose managedLedgerCache, managedLedger, loadBalance metrics to prom… Apr 25, 2020
node_modules [Docs] Add admin api docs of Pulsar Functions (#5593) Nov 12, 2019
protobuf-shaded Bump version to 2.6.0 (#5820) Dec 9, 2019
protobuf Add ASF headers to Markdown documentation files (#823) Oct 17, 2017
pulsar-broker-auth-athenz [Maven Cleanup] Remove managed-ledger and zk-utils test-jar dependenc… Mar 11, 2020
pulsar-broker-auth-sasl Suggest use sha-512 in SaslRoleTokenSigner for security concern (#6447) Mar 31, 2020
pulsar-broker-common Avoid prefetch too much data when offloading data to HDFS (#6717) Apr 22, 2020
pulsar-broker-shaded Support BouncyCastle FIPS provider (#6588) Mar 28, 2020
pulsar-broker expose managedLedgerCache, managedLedger, loadBalance metrics to prom… Apr 25, 2020
pulsar-client-1x-base Support BouncyCastle FIPS provider (#6588) Mar 28, 2020
pulsar-client-admin-shaded Support BouncyCastle FIPS provider (#6588) Mar 28, 2020
pulsar-client-admin [pulsar-proxy] Add CLI support to get pulsar-proxy stats (#6516) Apr 22, 2020
pulsar-client-all Support BouncyCastle FIPS provider (#6588) Mar 28, 2020
pulsar-client-api Add Joda time logical type conversion. (#6704) Apr 11, 2020
pulsar-client-auth-athenz Bump version to 2.6.0 (#5820) Dec 9, 2019
pulsar-client-auth-sasl Number of placeholder doesn't match number of arguments in logging (#… Mar 27, 2020
pulsar-client-cpp [PY] Fix serialization of enums with json/avro schemas (#6808) Apr 27, 2020
pulsar-client-go [Issue 4175] [pulsar-function-go] Add Go Function heartbeat (and gRPC… Feb 4, 2020
pulsar-client-kafka-compat Number of placeholder doesn't match number of arguments in logging (#… Mar 27, 2020
pulsar-client-messagecrypto-bc Add Joda time logical type conversion. (#6704) Apr 11, 2020
pulsar-client-shaded Support BouncyCastle FIPS provider (#6588) Mar 28, 2020
pulsar-client-tools-test [pulsar-proxy] Add CLI support to get pulsar-proxy stats (#6516) Apr 22, 2020
pulsar-client-tools [pulsar-proxy] Add CLI support to get pulsar-proxy stats (#6516) Apr 22, 2020
pulsar-client [pulsar-client] Add support to load tls certs/key dynamically from in… Apr 22, 2020
pulsar-common Avoid prefetch too much data when offloading data to HDFS (#6717) Apr 22, 2020
pulsar-discovery-service [pulsar-broker] support configurable zk-cache expiry time (#6668) Apr 13, 2020
pulsar-flink Make messageReceiveTimeoutMs in the PulsarConsumerSource configurable ( Apr 25, 2020
pulsar-function-go Update Go client version to 0.1.0 (#6753) Apr 20, 2020
pulsar-functions Fix localrunner netty dependency issue and add default log4j2 config … Apr 22, 2020
pulsar-io Fix flaky test in InfluxDBSinkTest. (#6682) Apr 7, 2020
pulsar-log4j2-appender Bump version to 2.6.0 (#5820) Dec 9, 2019
pulsar-metadata [minor]Reduce redundancy (#6611) Mar 26, 2020
pulsar-proxy [pulsar-broker] support configurable zk-cache expiry time (#6668) Apr 13, 2020
pulsar-spark Bump version to 2.6.0 (#5820) Dec 9, 2019
pulsar-sql Bump netty version to 4.1.48.Final (#6746) Apr 17, 2020
pulsar-storm [Issue 6024][pulsar_storm] PulsarSpout emit to multiple streams (#6039) Feb 3, 2020
pulsar-testclient Support BouncyCastle FIPS provider (#6588) Mar 28, 2020
pulsar-transaction Bump version to 2.6.0 (#5820) Dec 9, 2019
pulsar-websocket [pulsar-broker] support configurable zk-cache expiry time (#6668) Apr 13, 2020
pulsar-zookeeper-utils [broker] register loadbalance znode should attempt to wait until sess… Apr 23, 2020
pulsar-zookeeper Bump version to 2.6.0 (#5820) Dec 9, 2019
site2 [docs] Fix encryption examples (#6763) Apr 27, 2020
src [transaction-coordinator] Implementation of transaction coordinator c… Dec 9, 2019
testmocks [Test] Removed double retain in mocked ledger handle (#6792) Apr 22, 2020
tests Add Joda time logical type conversion. (#6704) Apr 11, 2020
tiered-storage Avoid prefetch too much data when offloading data to HDFS (#6717) Apr 22, 2020
.asf.yaml Fix license header and always run license check (#6222) Feb 5, 2020
.gitignore Config admin CLI (#6681) Apr 8, 2020
.travis.yml Fixes to get the travis build running again (#3204) Dec 17, 2018
CONTRIBUTING.md Add contributing info (#6771) Apr 20, 2020
CONTRIBUTORS.md Add ASF headers to Markdown documentation files (#823) Oct 17, 2017
LICENSE Fixes for NOTICE and LICENSE files for src and bin distribution (#563) Jul 18, 2017
NOTICE Update copyright year in NOTICE files to 2019 (#3283) Jan 3, 2019
README.md Update README.md about the repositories managed by Pulsar PMC (#6722) Apr 13, 2020
ct.yaml Improve Helm chart (#6673) Apr 8, 2020
faq.md [Doc] Fix FAQ broken link (#4640) Jul 10, 2019
pom.xml Bump netty version to 4.1.48.Final (#6746) Apr 17, 2020

README.md

logo

Pulsar is a distributed pub-sub messaging platform with a very flexible messaging model and an intuitive client API.

Learn more about Pulsar at https://pulsar.apache.org

Main features

  • Horizontally scalable (Millions of independent topics and millions of messages published per second)
  • Strong ordering and consistency guarantees
  • Low latency durable storage
  • Topic and queue semantics
  • Load balancer
  • Designed for being deployed as a hosted service:
    • Multi-tenant
    • Authentication
    • Authorization
    • Quotas
    • Support mixing very different workloads
    • Optional hardware isolation
  • Keeps track of consumer cursor position
  • REST API for provisioning, admin and stats
  • Geo replication
  • Transparent handling of partitioned topics
  • Transparent batching of messages

Repositories

This repository is the main repository of Apache Pulsar. Pulsar PMC also maintains other repositories for components in the Pulsar ecosystem, including connectors, adapters, and other language clients.

Ecosystem

Clients

Dashboard & Management Tools

Documentation

CI/CD

Build Pulsar

Requirements:

  • Java JDK 1.8 or Java JDK 11
  • Maven 3.3.9+

Compile and install:

$ mvn install -DskipTests

Run Unit Tests:

$ mvn test

Run Individual Unit Test:

$ cd module-name (e.g: pulsar-client)
$ mvn test -Dtest=unit-test-name (e.g: ConsumerBuilderImplTest)

Start standalone Pulsar service:

$ bin/pulsar standalone

Check https://pulsar.apache.org for documentation and examples.

Setting up your IDE

Apache Pulsar is using lombok so you have to ensure your IDE setup with required plugins.

Intellij

To configure annotation processing in IntelliJ:

  1. Open Annotation Processors Settings dialog box by going to Settings -> Build, Execution, Deployment -> Compiler -> Annotation Processors.

  2. Select the following buttons:

    1. "Enable annotation processing"
    2. "Obtain processors from project classpath"
    3. "Store generated sources relative to: Module content root"
  3. Set the generated source directories to be equal to the Maven directories:

    1. Set "Production sources directory:" to "target/generated-sources/annotations".
    2. Set "Test sources directory:" to "target/generated-test-sources/test-annotations".
  4. Click "OK".

  5. Install the lombok plugin in intellij.

Eclipse

Follow the instructions here to configure your Eclipse setup.

Build Pulsar docs

Refer to the docs README.

Contact

Mailing lists
Name Scope
users@pulsar.apache.org User-related discussions Subscribe Unsubscribe Archives
dev@pulsar.apache.org Development-related discussions Subscribe Unsubscribe Archives
Slack

Pulsar slack channel at https://apache-pulsar.slack.com/

You can self-register at https://apache-pulsar.herokuapp.com/

License

Licensed under the Apache License, Version 2.0: http://www.apache.org/licenses/LICENSE-2.0

Crypto Notice

This distribution includes cryptographic software. The country in which you currently reside may have restrictions on the import, possession, use, and/or re-export to another country, of encryption software. BEFORE using any encryption software, please check your country's laws, regulations and policies concerning the import, possession, or use, and re-export of encryption software, to see if this is permitted. See http://www.wassenaar.org/ for more information.

The U.S. Government Department of Commerce, Bureau of Industry and Security (BIS), has classified this software as Export Commodity Control Number (ECCN) 5D002.C.1, which includes information security software using or performing cryptographic functions with asymmetric algorithms. The form and manner of this Apache Software Foundation distribution makes it eligible for export under the License Exception ENC Technology Software Unrestricted (TSU) exception (see the BIS Export Administration Regulations, Section 740.13) for both object code and source code.

The following provides more details on the included cryptographic software: Pulsar uses the SSL library from Bouncy Castle written by http://www.bouncycastle.org.

You can’t perform that action at this time.