Microservice Native Event Store and Message Store for Postgres
A fully-featured event store and message store implemented in PostgreSQL for Pub/Sub, Event Sourcing, Messaging, and Evented Microservices applications.
- Pub/Sub
- JSON message data
- Event streams
- Stream categories
- Metadata
- Message queues
- Message storage
- Consumer groups
- Service host
- Administration tools
- Reports
An event sourcing and Pub/Sub message store built on Postgres for simple cloud or local hosting. A minimalist implementation of the essential features of tools like Event Store or Kafka, with built-in support for messaging patterns like Pub/Sub, and consumer patterns like consumer groups.
Message DB was extracted from the Eventide Project to make it easier for users to write clients in the language of their choosing.
A complete user guide is available on the Eventide Project docs site:
http://docs.eventide-project.org/user-guide/message-db/
This library is an NPM module package of the Message DB database for Postgres.
For more information, see:
https://github.com/message-db/message-db
npm install @eventide/message-db
Running the database installation tool creates the database, schema, table, indexes, functions, views, types, a user role, and limit the user's privileges to the message store's public interface.
Note: Make sure that your default Postgres user has administrative privileges.
To execute the update script, navigate to the directory where the message-db
module is installed and run the script:
install.sh
By default, the database creation tool will create a database named message_store
.
If you prefer either a different database name, you can override the name using the DATABASE_NAME
environment variable.
DATABASE_NAME=some_other_database install.sh
The message-db
library is released under the MIT License.