Blazing fast communication between Node.js processes
How to install Vertigo
You can install Vertigo using Node Package Manager (npm):
npm install vertigo
Features
- Supports Request/Reply communication.
- Supports Send without Reply communication.
- Supports multiple server using round robin.
- Fault tolerant: clients will reconnect to servers even if server goes down and comes back later.
- Extremely fast (disables TCP Nagle's algorithm).
- Zero dependencies on other libraries.
- Block non-desired IPs.
Examples
Request/Reply: Server with one client
Server
// Modules var vertigo = ; // Create server var server = vertigo; // Listen petitions server;
Client
// Modules var vertigo = ; // Create client var client = vertigo; // Make a petition client;
Request/Reply: 2 server with one client (Round robin)
Server 1
// Modules var vertigo = ; // Create server var server = vertigo; // Listen petitions server;
Server 2
// Modules var vertigo = ; // Create server var server = vertigo; // Listen petitions server;
Client
// Modules var vertigo = ; // Create client var client = vertigo; // Make a petition client;
Send: Server with one client
Server
// Modules var vertigo = ; // Create server var server = vertigo; // Listen petitions server;
Client
// Modules var vertigo = ; // Create client var client = vertigo; // Make a petition client;
Block non-desired connections from unknown IPs
Server
// Modules var vertigo = ; // Create server var server = vertigo; // Listen petitions server;
Migrating from hermod
You can use Vertigo safely, currently the API is the same in both libraries.
Changelog
- 0.0.15 ( 2017/10/17 ): Removed unnecessary operation.
- 0.0.14 ( 2017/10/16 ):
'ECONNRESET'
error is triggered on client when server connection is closed. - 0.0.13 ( 2016/08/07 ): Improved
close()
client method. - 0.0.12 ( 2016/08/07 ): Fixed bug with
close()
client method. - 0.0.11 ( 2016/08/01 ): Fixed little bug with reconnect delay.
- 0.0.10 ( 2016/07/31 ): Support reconnect delay. Setted 100ms as default.
- 0.0.9 ( 2016/07/24 ): Allow again create clients with
opts
object as param. - 0.0.8 ( 2016/07/21 ): Implemented
close()
client method. - 0.0.7 ( 2016/05/09 ): Support TLS secure connections.
- 0.0.6 ( 2015/10/04 ): Support multirequests. Improved message transmission. Renamed from Hermod to Vertigo.
- 0.0.5 ( 2014/06/26 ): Limit connections for specific IPs. Support host definition in server.
- 0.0.4 ( 2014/04/02 ): Optimized and
send()
method support. - 0.0.3 ( 2014/04/02 ): Optimized and better documentation.
- 0.0.2 ( 2014/04/02 ): Optimized and prevent chuncked commands.
- 0.0.1 ( 2014/03/20 ): First version.
To Do List
shout()
client method- Authentication support
- Middleware support