grav

module
v0.3.1 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: Mar 5, 2021 License: Apache-2.0

README

logo_transparent

Grav is an embedded distributed messaging mesh for Go applications. Grav allows interconnected components of your systems to communicate effectively in a reliable, asynchronous manner. HTTP and RPC are hard to scale well in modern distributed systems, but Grav is designed to be performant and resilient in various distributed environments.

Since Grav is embedded, it is instantiated as a grav.Grav object which your application code connects to in order to send and recieve messages. Grav connects to other nodes via transport plugins such as gravwebsocket which extends the Grav core to become a networked distributed messaging system. Grav nodes can also be configured to automatically discover each other using discovery plugins. Grav does not require a centralized broker, and as such has some limitations, but for certain applications it is vastly simpler (and more extensible) than a centralized messaging system.

Documentation

Full documentation can be found on the Grav docs site.

Project status

Grav is currently in beta, and is being developed alongside (and is designed to integrate with) Vektor and Hive. It is also the messaging core that powers Suborbital's flagship project, Atmo.

Copyright Suborbital contributors 2021.

Directories

Path Synopsis
discovery
docs
transport

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL