v11.3.1
- Upgraded SCC:
-
[email protected]
(npm) -
Added support for skeleton-based rendezvous hashing by default - This means that adding or removing
scc-broker
instances to the cluster now requires fewer channel migrations that before - This means that downtime will affect a much smaller subset of channels when scaling out or scaling back. The more machines/instances there are in the cluster, the fewer channels will be affected when new machines/instances are added. You can use the old mapping engine by setting theclusterMappingEngine
option in SC to'simple'
here: https://github.com/SocketCluster/socketcluster/blob/72d301146c37efa3de52b8acfc532767c1ec6cc6/sample/server.js#L37 -
Added support for connection pooling so that a SocketCluster instance can now interact with an
scc-broker
instance through more connections; this is useful if you want to use largescc-broker
instances that have more than one worker process - In this case, it should help to distribute the load more evenly across processes inside thescc-broker
instance. You can set theclusterClientPoolSize
option in SC; it defaults to 1 - Ideally this number should remain in the single-digit range. See https://github.com/SocketCluster/socketcluster/blob/72d301146c37efa3de52b8acfc532767c1ec6cc6/sample/server.js#L38
-
- Made
ws
the default WebSocket engine for maximum compatibility; a large number of users have been complaining aboutuws
not working on some systems - It's better to have a default that always works out of the box (as not to scare away new users) and to make optimizations optional.
Breaking change
- Switched to a custom uWS JS binding/module
sc-uws
; it's a drop-in replacement foruws
.