Here is the draft for the podling report. Please submit feedback soon, the
deadline is today (sorry for sending draft at last moment).
------------
Pulsar is a highly scalable, low latency messaging platform running on
commodity hardware. It provides simple pub-sub semantics over topics,
guaranteed at-least-once delivery of messages, automatic cursor management
for
subscribers, and cross-datacenter replication.
Pulsar has been incubating since 2017-06-01.
Most important issues to address in the move towards graduation:
1. Complete the Podling name search tasks. The task is in progress right
now.
Any issues that the Incubator PMC (IPMC) or ASF Board wish/need to be aware
of?
None
How has the community developed since the last report?
The community added 7 new contributors that submitted pull-requests which
were merged into master.
The number of users approaching the team on the Slack channel has kept
steadily increasing since the last report. Many users have actively
deployed
Pulsar for evaluation and production use cases.
Project members from several companies have organized or participated in
several meetups, presenting Pulsar's introductions, deep-dives and
hands-on
tutorial, including recorded podcasts. We have several scheduled talks on
Pulsar at various conferences, 2 at ApacheCon in September, one at OSCon
in
July and 2 others at Strata New York in September. A Pulsar dedicated
meetup
is being organized for next July.
Since the last report the number of weekly-active-users on the Slack
channel
has increased from 53 to 88.
We have reached the 1 year mark since Pulsar entering the Apache
Incubator.
Here is a summary of the community developments over the past year:
1. Pulsar community has done 5 Apache releases since entering
incubator. The release process is well documented and we have
had 4 different release managers from 3 different companies.
2. We have added 3 committers and PPMC members since incubation and
there are also other candidates who have already made significant
contributions to the project.
3. Community of users and people interested in Pulsar has expanded
considerably. Thanks to the months long work in improving ease of
use, documentation and blogs, many people became aware of Pulsar
and started playing with it, then evaluating it and finally
putting it in production for critical use cases.
4. We have tried to help users getting started through any
communication channel. Even though we keep trying to encourage
people to use the mailing list, most of the first interactions
have been happening through the Slack channel. We also did make
sure that:
a) No decisions are taken in Slack channel
b) Developers technical discussion happen mostly in Github
issue/Pull-Request or in developers mailing list
c) Conversations in Slack are sent to dev/user mailing list in a
daily digest form for archival and to be searchable
In any case Slack has been working fairly well in engaging with
users, by providing a tool to have very quick informal
question/answer interactions that were very appreciated by users.
5. Overall, there were a lot of healthy discussions, with feedback
and collaborations from people from different companies and
different perspectives that resulted in much stronger design
decisions and ultimately a better system.
6. We have taken several steps to increase awareness, like blog
posts, meetups (both dedicated to Pulsar or dedicated to similar
topics) and presentations to conferences, like Strata or
ApacheCon (where we have 2 talks scheduled for next September).
How has the project developed since the last report?
23 authors have pushed 469 commits to master in the last 3 months.
The project has made the its fifth release since joining the
Apache Incubator (2.0.0-rc1-incubating on May 29th). This was a
major release that culminated several months of works and lays the
foundation for the next stage in Pulsar development. New major
features include:
* Pulsar Functions (Lightweight compute framework)
* Schema registry
* Topic compaction
Community is actively working on next milestone, 2.1 release that
will include several new features including:
* Pulsar IO connector framework
* Tiered storage
* Go client library
Since March, 3 new PIPs (Pulsar Improvement Proposals) for major
feature/changes, have been submitted to the wiki and discussed in the
mailing list.
To recap the project developments since entering Apache Incubator:
1. Moved to Apache BookKeeper 4.7. Before Pulsar 2.0, we were using
a fork of BookKeeper from Yahoo, based on 4.3.1 with 245
additional commits. Thanks to a a big effort in the BookKeeper
community (which has a large overlap with Pulsar community), all
these changed were merged back into mainstream BookKeeper branch
and released in BookKeeper 4.7.0, making possible for Pulsar to
switch over from the Yahoo fork.
2. We have received a lot of feedback from people approaching Pulsar
and learned a lot on how to simplify tools, documentation and
concepts to make it easier for people to get started.
3. Based on the same feedback and inputs, we have been adding new
features or extended existing features to match a new variety of
use case, some of them outside the scope the initial Pulsar
codebase from Yahoo.
To summarize the "major" features added in the last year:
- Pulsar stateless proxy
- Non-persistent topics
- End-to-End message encryption
- Effectively-once semantics
- Type-safe APIs
- Schema Registry
- Pulsar Functions
- Topic compaction
- Python client library
With more scheduled for next upcoming release 2.1:
- Pulsar IO connector framework
- Tiered storage
- Go client library
4. In addition to features, we have been trying to smooth the
deployment of a production ready Pulsar cluster, by improving the
documentation and providing templates for more common environments,
such as Kubernetes, DCOS or just plain VMs with Ansible.
5. Having exposure to many users testing and using the sytem outside
the original Yahoo use cases has proven very effecting in helping
identifying and resolving corner cases that were not being
stressed before. This resulted in a much resilient system that
can adapt better to a large array of different requirements and
environments.
How would you assess the podling's maturity?
Please feel free to add your own commentary.
[ ] Initial setup
[ ] Working towards first release
[ ] Community building
[X] Nearing graduation
[ ] Other:
Date of last release:
2018-05-29, 2.0.0-rc1-incubating
When were the last committers or PPMC members elected?
2018-05-28 - Jerry Peng
2018-05-28 - Sanjeev Kulkarni
--
Matteo Merli
<[email protected]>