Skip to content

liftbridge-io/java-liftbridge

Repository files navigation

java-liftbridge CircleCI

This project is under development

Java client for Liftbridge, a system that provides lightweight, fault-tolerant message streams for NATS.

Liftbridge provides the following high-level features:

  • Log-based API for NATS
  • Replicated for fault-tolerance
  • Horizontally scalable
  • Wildcard subscription support
  • At-least-once delivery support and message replay
  • Message key-value support
  • Log compaction by key

This project is under active development and changing rapidly. For basic usage, for now refer to the tests.

Testing

To run the tests, first start the standalone dev image:

$ docker run -t -p 4222:4222 -p 9292:9292 -p 8222:8222 -p 6222:6222 liftbridge/standalone-dev:latest

Then, go to the project's root dir and run ./gradlew test.

Feature list

  • Create Streams
  • Subscribe to stream / subject
  • Publish to stream
  • Publish to subject API
  • Metadata API
  • Subscribe to partition leader
  • Partitioner by key
  • Round-robin partitioner