36 lines
1.4 KiB
Markdown
36 lines
1.4 KiB
Markdown
# Nova
|
|
|
|
[](https://github.com/discordnova/Nova/actions/workflows/build.yml)
|
|
|
|
## What is nova ?
|
|
|
|
Nova is a complete framework for building reliable and stable discord bots
|
|
using a services based system to operate all the components needed to operate
|
|
a discord such as the discord gateway, new discord webhooks for receiving interactions.
|
|
Using a traditional infrastructure (sharder / process), we can quickly reach bottlenecks
|
|
when we scale to multiple thousands of shards. Nova is a way to avoid these problems by
|
|
building a scale-first discord framework that creates an environment that allow
|
|
better testing, reliability and operations easier.
|
|
|
|
### Advantages
|
|
|
|
With the help of Nova, you can achieve a number of things, such as
|
|
|
|
* Scaling of workers independent of the number of shards
|
|
* zero-login updates
|
|
* Automatic shards scaling
|
|
* Shared cache for the whole bot (without broadcastEval and other unsafe methods)
|
|
* Stateless workers, easier to test
|
|
* Distributed rest rate-limiting
|
|
* Easier fine-tuned monitoring using cloud-native technologies
|
|
* Languages agnostic apis
|
|
|
|
### How did we solve this ?
|
|
|
|
Nova separates the gateway into multiple smaller components corresponding to each
|
|
discord apis
|
|
|
|
|
|
|
|
[](https://app.fossa.com/projects/git%2Bgithub.com%2Fdiscordnova%2Fnova?ref=badge_large)
|