Displaying 1 to 20 from 21 results

socketcluster - Highly scalable realtime framework

  •    Javascript

SocketCluster is a fast, highly scalable HTTP + realtime server engine which lets you build multi-process realtime servers that make use of all CPU cores on a machine/instance. It removes the limitations of having to run your Node.js server as a single thread and makes your backend resilient by automatically recovering from worker crashes and aggregating errors into a central log on each host. SC can also auto-scale across multiple hosts on top of Kubernetes; see SCC guide: https://github.com/SocketCluster/socketcluster/blob/master/scc-guide.md.There are two ways to install SocketCluster.

loadbalancer - A sticky load balancer optimized for realtime apps

  •    Javascript

LoadBalancer.js is a sticky-session TCP load balancer which is optimized to work with realtime frameworks (with support for HTTP long polling fallbacks). It captures raw TCP connections from a specified port and forwards them to various targets (defined as host and port combinations). It chooses the appropriate target based on a hash of the client's IP address.LoadBalancer.js was originally designed to work with SocketCluster (http://socketcluster.io) but it can work equally well with any other realtime framework.

sc-sample-inventory - Sample inventory tracking app built with SocketCluster

  •    HTML

Scroll to the bottom for installation instructions.A sample inventory tracking realtime single page app built with SocketCluster (http://socketcluster.io/), Google's Polymer (v1.0) Framework and RethinkDB. It demonstrates a way of building realtime apps.

sc-broker - Default broker client-server pair for SocketCluster

  •    Javascript

scBroker is a lightweight key-value store and message broker. It is written entirely in node.js for maximum portability.Firstly, launch a new scBroker server. If you're using the node cluster module, you might want to launch the scBroker server once from the master process and then interact with it using scBroker clients.




sc-codec-min-bin - Minimal binary codec for SocketCluster based on MessagePack

  •    Javascript

Minimal binary codec for SC based on MessagePack. This codec helps reduce bandwidth usage and is ideal for games and other high-throughput applications.This module is designed to be hooked up on both the client and server.

sc-crud-rethink - Realtime CRUD data management layer/plugin for SocketCluster using RethinkDB as the database

  •    Javascript

Realtime CRUD data management layer/plugin for SocketCluster using RethinkDB as the database.See https://github.com/socketcluster/sc-sample-inventory for a full working sample.

sc-redis - Redis adapter for SocketCluster

  •    Javascript

This is a Redis adaptor for SocketCluster: http://socketcluster.io/ It allows you to interact with SocketCluster channels via Redis and vice-versa.This module is useful if you have a simple setup on a single host and just want to be able to synchronize pub/sub channels between SC and Redis - So if you publish a message to a channel in Redis, clients connected to SC which are subscribed to that channel will also get the message.

sc-stateless-presence - Plugin for checking user presence in SocketCluster

  •    Javascript

Plugin for doing stateless presence in SC.This plugin lets you do real-time channel presence at scale without having to use an external memory store or database. It's ideal for tracking the presence of users within channels that have fewer than 100 concurrent subscribers online at any given time.


socketcluster-client - JavaScript client for SocketCluster

  •    Javascript

SocketCluster Client is the client-side component of SocketCluster.

socketcluster-server - Minimal server module for SocketCluster

  •    Javascript

You will need to install socketcluster-server and socketcluster-client (https://github.com/SocketCluster/socketcluster-client) separately.* Note that the socketClusterServer.attach(httpServer, options); takes an optional options argument which can have a brokerEngine property - By default, socketcluster-server uses sc-simple-broker which is a basic single-process in-memory broker. If you want to add your own brokerEngine (for example to scale your socketcluster-servers across multiple cores/hosts), then you might want to look at how sc-simple-broker was implemented.

redux-saga-sc - Provides sagas to easily dispatch redux actions over SocketCluster websockets

  •    Javascript

This package provides ready to use sagas to connect SocketCluster clients. It can be used to let your server dispatch redux actions on the client and vice verca. Or to sync a shared redux state across multiple nodes or clients. You'll notice that this guide does not use the terms "server" and "client". Why? You could use this server to server, client to client, it doesn't matter. Instead you have a "sender" and a "receiver". The "sender" can emit something, the "receiver" listens for the emit and may decide to emit something back in response. The "sender" can also request something from the "receiver" requiring a response of either successType or failureType.

passport.socketcluster - SocketCluster Passport.js authentication middleware.

  •    Javascript

A SocketCluster middleware for authenticating socket connections with Passport.js.

wamp-socket-cluster - Merges RPC ideas of WAMP protocol with good performance of SocketCluster

  •    Javascript

Merges RPC ideas of WAMP protocol with good performance of SocketCluster. As SocketCluster is not compatible with WAMP protocol (as e.g. AutobahnJS) this library provides the wrapper for both SocketClient (WAMPClient) and SocketServer (WAMPServer) and enables RPC web sockets usage.

socketcluster-client-java - Native java and android client for socketcluster framework in node.js

  •    Java

Important Note : Default url to socketcluster end-point is always ws://somedomainname.com/socketcluster/.

socketcluster-client-python - Python client for socket-cluster framework in node.js

  •    Python

Important Note : Default url to socketcluster end-point is always ws://somedomainname.com/socketcluster/. The object received can be String, Boolean, Long or JSONObject.

socketcluster-client-swift - Native iOS/macOS client written in swift3/swift 4

  •    Swift

Important Note : Default url to socketcluster end-point is always ws://somedomainname.com/socketcluster/. A custom queue can be specified when delegate methods are called. By default DispatchQueue.main is used, thus making all delegate methods calls run on the main thread. It is important to note that all WebSocket processing is done on a background thread, only the delegate method calls are changed when modifying the queue. The actual processing is always on a background thread and will not pause your app.

socketcluster-client-unity - An extension to original C# client implementation.

  •    CSharp

Important Note : Default url to socketcluster end-point is always ws://somedomainname.com/socketcluster/. The object received can be String, Boolean, Long or JSONObject.

SocketclusterClientDotNet - C# client for socketcluster framework in node.js

  •    CSharp

Important Note : Default url to socketcluster end-point is always ws://somedomainname.com/socketcluster/. The object received can be String, Boolean, Long or JSONObject.

vue-socketcluster - This is a client side implementation of socketcluster for VueJS

  •    Javascript

The sockets attributes are essentially channels. If you name an attribute test and then emit to test, the function associated with test will fire.

moleculer-sc - API Gateway service for Moleculer framework using SocketCluster

  •    Javascript

What is SocketCluster? SocketCluster is an open source real-time framework for Node.js. It supports both direct client-server communication and group communication via pub/sub channels. It is designed to easily scale to any number of processes/hosts and is ideal for building chat systems. SocketCluster is a fast, highly scalable HTTP + WebSockets server environment which lets you build multi-process real-time systems that make use of all CPU cores on a machine/instance.