New Research: Supply Chain Attack on Axios Pulls Malicious Dependency from npm.Details →
Socket
Book a DemoSign in
Socket

nmsg

Package Overview
Dependencies
Maintainers
1
Versions
2
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

nmsg

Interprocess messenger for Node.js

latest
Source
npmnpm
Version
1.0.1
Version published
Weekly downloads
1
-50%
Maintainers
1
Weekly downloads
 
Created
Source

Node Messenger

This is work in progress, use at YOUR own risk.

Inter-process communication (IPC) for Node.js, designed for easy communication between two remote JavaScript processes.

Features include:

  • Client and server with bidirectional communication -- each can .emit and listen .on events.
  • Your can send callbacks as arguments for a remote call, like router.emit('event', 'data', callback).
  • Multiple callbacks per event supported, if called on the remote host, arguments for those callbacks will be passed back, where arguments can themselves be callbacks, this nesting can be arbitrarily deep.
  • Evented router, you add events using: router.on('event', callback).
  • RouterBuffered buffers outgoing messages for few milliseconds, then sends a bulk packet. This allows to combine many small messages into one.
  • Pluggable transports (currently implemented TCP).
  • Pluggable data serializers (currently implemented JSON and MsgPack).
  • Exponential backoff for client and server to retry connection.
  • Stream buffering -- even if server is temporarily down, your messages will still likely be delivered, see example below:

For examples see ./examples folder, here is one:

var nmsg = require('nmsg');

var config = {
    host: '127.0.0.1',
    port: 8081
};

var server = new nmsg.server.factory.Tcp(config);
var client = new nmsg.client.factory.Tcp(config);
server.start().on('start', function() { console.log('Server started.'); });
client.start();

server.on('socket', function(socket) {
    socket.router.on('ping', function() {
        console.log('Ping received!');
    });
});

console.log('Sending ping.');
client.router.emit('ping');

In this example we send the ping event even before the server has been started, yet the event is received, here is console output:

Sending ping.
Server started.
Ping received!

TypeScript type definitions available in ./nmsg.d.ts.

Getting started:

npm run start

Testing

npm run test

Generate nmsg.d.ts typing file:

npm run typing

Keywords

nmsg

FAQs

Package last updated on 14 Apr 2016

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts