Huge News!Announcing our $40M Series B led by Abstract Ventures.Learn More
Socket
Sign inDemoInstall
Socket

bender

Package Overview
Dependencies
Maintainers
1
Versions
4
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

bender

Distributed, expiring service registry

  • 0.2.1
  • latest
  • Source
  • npm
  • Socket score

Version published
Maintainers
1
Created
Source

bender

Build Status

Kill all humans. Distributed, expiring service registry. Designed to support continuous deployments.

This module was inspired by Thalassa.
Differences include:

How it works

Bender is long-standing, stateful, distributed daemon handling service registration. It uses CRDT as its data storage layer.

Registration flow

The typical registration flow is as follows:

  1. Client registers with Bender using HTTP API
  2. Receiving Bender updates CRDT
  3. online event is triggered on all Bender nodes

After registering, client has to renew registration each n ms, depending on Bender's settings.

Deregistration flow

When a registration expires, the following happens:

  1. First Bender node to notice that registration expired updates CRDT
  2. offline event is triggered on all Bender nodes

Entities

Bender recognizes 3 types of entities.

Registration

Node registration.

Properties:

  • resource (string, required) - always 'Registration'
  • host (string, required) - node's address
  • port (number, required) - node's port
  • app (string, required) - application name
  • version (string, required) - application version

Backend

Set of nodes serving specified app version.

  • resource (string, required) - always 'Backend'
  • name (string, required) - backend name
  • app (string, required) - name of application this backend serves
  • version (string, required) - version of application this backend serves

Frontend

Serves a specified backend.

  • resource (string, required) - always 'Backend'
  • name (string, required) - backend name
  • backend (string, required) - name of backend to serve

HTTP API

POST /registrations

Create new registration.

GET /registrations

Get all registrations.

FAQs

Package last updated on 23 Jan 2014

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

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap
  • Changelog

Packages

npm

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc