Lisk Announces Partnership with SocketCluster

Maciej Baj
Lisk Blog
Published in
2 min readSep 8, 2017

Lisk and its network are growing incredibly fast. In order to handle scalability matters — larger network and number of connection requests — we enlisted the help of SocketCluster to change the P2P communication protocol from HTTP to WebSocket.

At Lisk, we’re determined to support and promote progressive technologies and forward-looking entrepreneurs. During the development process we worked closely with Jonathan Gros-Dubois, SocketCluster creator, often relying on his technical expertise to ensure a smooth transition from one protocol to another. We have also decided to back his endeavor financially to make sure that it grows in scope and reach.

Integrating SocketCluster with Lisk Core will help us improve connection reliability and allow us to run multiple processes at the same time which will lay the foundation for future Lisk clusterization. Most importantly, the solution will aid us in serving more transactions in the same time frame as before. The protocol provides a simultaneous, two-way communication channel between a client and a server. This, in turn, increases network overview control and streamlines chain management.

By changing from the stateless http protocol to persistent socket connections, we aim to improve block/transaction propagations times, and the general efficiency of peer to peer communications — says Oliver Beddows, Co-Founder of Lisk.

SocketCluster provides a much needed customization on the connection layer. Every delegate will be able to tailor their own server to their needs by specifying the number of parallel processes responsible for receiving the connections and updating network data

In order to standardize the way peers are communicating, the new plugin, wamp-socket-cluster, has been introduced by the Lisk team. It is fully open-sourced and maintained by us. Every network member is now compliant with WAMP protocol, which means that the P2P communication layer can be used in two ways: publish / subscribe or RPC (Remote Procedure Call) manner. RPC is extremely helpful in making sure that a proper response from the right peer has been received. This is not required when subscribing for the resources (transactions, signatures, blocks). RPC is already a proven approach used by other projects such as Bitcoin and Ethereum.

The Lisk Core 1.0.0 release will introduce WAMP protocol in the internal P2P layer. We look forward to adapting it in the public API as well.

About the Author:

Maciej Baj is a Lisk Core developer at lightcurve and a creator of wamp-socket-cluster. He graduated with a Master’s Degree in Engineering and Computer Science at Wroclaw University of Science and Technology.

Contact Details:

Github: https://github.com/MaciejBaj

Twitter: https://twitter.com/macko_baj

Email: maciej@lightcurve.io

--

--