Skip to content
This repository was archived by the owner on Jul 13, 2024. It is now read-only.
/ arian Public archive

A massively scalable, superfast Websocket server powered by µWebSockets.js and NATS.

Notifications You must be signed in to change notification settings

theseyan/arian

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

32 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Warning

This package is now DEPRECATED, as I no longer have the time or interest to maintain it. However, it should be still functional, although not ready for production.





An opinionated, massively scalable, superfast Websocket server powered by µWebSockets.js and NATS.

Work in Progress

This is a work in progress, the project is vastly incomplete and not ready for use in production.
TODO:

  • Standalone Websocket Server and Client
  • Full support for Rooms
  • Pub/Sub and Broadcasting
  • NATS based Horizontal Scaling
  • Properly deal with Backpressure and error cases
  • Benchmark Suite
  • Documentation
  • Write Unit Tests (esp. check integrity of sent & received messages with buffer reuse enabled)

⚡ Blazing Speed

Arian runs on native µWebSockets, which by itself is about 10x faster than Socket.IO - the most widely used websocket library.
The Arian Server and Client communicate in a binary protocol with almost no overhead, through the fastest implementation of MessagePack for Node.js.

🌐 Seamlessly Scalable

Although a single server can handle several thousands of concurrent connections, Arian lets you seamlessly scale horizontally by simply adding more servers.
Hundreds of nodes can work together in tandem using NATS as a message broker, which is completely transparent to the higher level client and server APIs. Spinning up more servers will linearly increase throughput and connection capacity with no changes in code required.

🔋 Batteries Included

Arian comes with full support for Rooms, Custom events, Pub/Sub and Broadcasting, while maintaining minimal memory overhead.

About

A massively scalable, superfast Websocket server powered by µWebSockets.js and NATS.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published