An open API service indexing awesome lists of open source software.

https://github.com/apache/aries-journaled-events

Apache aries
https://github.com/apache/aries-journaled-events

aries java library

Last synced: 9 months ago
JSON representation

Apache aries

Awesome Lists containing this project

README

          

# Apache Aries Journaled events

Jenkins: [![Build Status](https://builds.apache.org/buildStatus/icon?job=Aries-journaled-events)](https://builds.apache.org/job/Aries-journaled-events/)
Travis: [![Travis Build Status](https://travis-ci.org/apache/aries-journaled-events.svg?branch=master)](https://travis-ci.org/apache/aries-journaled-events)

This subproject provides an API (possibly as spec) and backends for journaled streams of events. These extend the publish/subscribe model with means to start consume from an point in the stored event stream history.

## Goals

* Provide traditional publish / subscribe semantics
* Allow consuming a stream from any point in the history (given it is not yet evicted)

## Non goals (to be discussed)

* No coverage of extreme scaling like Apache Kafka. So no sharding support in the API (like partitions).

## Requirements

* Messages sent to a topic must be journaled and must be available to all consumers
* Consumers must be able to start consuming messages from any point in the history that is still available
* If a consumer specifies a position that is not available anymore then it must start with the oldest message
* Each consumer must receive messages in the same order they were sent
* The journal of each topic may evict messages that are older than a certain retention time