Feb 28, 2024

The Oxia Java Client Library is Now Open Source

Matteo Merli
CTO, StreamNative & Co-Creator and PMC Chair Apache Pulsar
Vik Narayan
Product Manager, StreamNative
No items found.

Today marks an important milestone for StreamNative and the broader Apache Pulsar community as we proudly announce the open-sourcing of the Oxia Java client library. This release is not just about sharing code - it's a testament to our commitment to the open-source community and driving innovation in real-time data streaming technologies.

By open-sourcing Oxia Java, we are laying the groundwork for a direct integration between Oxia and Pulsar within the Pulsar GitHub repository, representing a significant enhancement to Pulsar and the data streaming world.

The forthcoming integration of Oxia in Pulsar 3.3 will revolutionize how users architect and scale their Pulsar clusters. The shift away from ZooKeeper dependency means that Pulsar will soon be capable of scaling to support over one million topics per cluster, an unprecedented level of scalability and performance. The discussion within the Pulsar community about incorporating out of the box Oxia support into Pulsar 3.3, outlined in Pulsar Improvement Proposal 335, underscores the excitement and anticipation for this integration. For a deeper dive into the impact of Oxia on Pulsar's performance, we highly recommend reading the Oxia announcement blog post by StreamNative CTO Matteo Merli.

The Oxia Java library enhances the functionality and developer experience of working with the Oxia metadata service. It includes several key components:

  • The Oxia Java Client Library: This is the core component that enables Java applications to interact seamlessly with Oxia's metadata service, featuring request batching, asynchronous operation, notification callbacks, and record caching.
  • The Oxia integration for Pulsar: This is the layer that allows Pulsar to be able to store and retrieve metatadata in Oxia. This component was already donated to the Apache Software Foundation and it is now part of Apache Pulsar.
  • OpenTelemetry Metrics Integration: This integration allows users to collect, analyze, and export metrics data, making it easier to monitor the performance and health of applications using Oxia.
  • Testcontainer for Local Testing: This tool simplifies the writing and executing of integration tests by providing a lightweight, disposable instance of Oxia for local testing environments.
  • Performance Testing Tool: With the inclusion of a dedicated performance testing tool, developers can benchmark the performance of their applications with Oxia, identify bottlenecks, and optimize for speed and efficiency.

The open sourcing of Oxia Java represents a critical step towards achieving better performance, scalability, and efficiency in data streaming operations. We invite developers, contributors, and the wider community to explore the Oxia GitHub repo and the Oxia Java repo. Your contributions, whether through starring the repository, forking it, engaging in discussions, or submitting pull requests, are invaluable as we continue to push the boundaries of real-time data streaming technology together.

Matteo Merli
CTO at StreamNative - Co-creator and PMC Chair of Apache Pulsar
Vik Narayan
Product Manager, StreamNative


Our strategies and tactics delivered right to your inbox

Thank you! Your submission has been received!
Oops! Something went wrong while submitting the form.
No items found.