Skip to content

Akanoa/Pusu

Repository files navigation

PUṢŪ(PubSub as Service)

Puṣū is a distributed PubSub FoundationDB layer mimicking the Redis PubSub but adding a tenant isolation leveraged by the Biscuit authentication/authorisation token.

Project overview

Components

The Puṣū project is divided in multiple crates, each one with their own purpose:

Relations between components

Each puṣū-server of a same cluster shared the same FoundationDB as storage endpoint.

puṣū-server are fully stateless components, they only hold a transient client session which can be relaunched in an another puṣū-server instance. This architecture allows a horizontal-scaling preventing any traffic bursts.

puṣū-server instances are meant to be used behind a load-balancer.

puṣū-client on its own, can be either some embedded library in another program, or the puṣū-client CLI.

puṣū-client connects to any puṣū-server and starts the communication using the puṣū-protocol.

Features

Puṣū is a distributed multi-tenant pub-sub client-server system. It means that you can have multiple times the same channel name but

About

PubSub as Service backed by FoundationDB

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages