Lisk и его сеть растут невероятно быстро. Для решения вопросов масштабируемости - большей сети и количества запросов на соединение - мы обратились за помощью к SocketCluster, чтобы изменить протокол связи P2P с HTTP на WebSocket.

В Lisk мы полны решимости поддерживать и продвигать прогрессивные технологии и дальновидных предпринимателей. В процессе разработки мы тесно сотрудничали с Джонатаном Грос-Дюбуа, создателем SocketCluster, часто полагаясь на его технические знания, чтобы обеспечить плавный переход от одного протокола к другому. Мы также решили поддержать его усилия финансово, чтобы убедиться, что они растут в масштабах и охвате.

Интеграция SocketCluster с Lisk Core поможет нам повысить надежность соединения и позволит запускать несколько процессов одновременно, что заложит основу для будущей кластеризации Lisk. Самое главное, решение поможет нам обслуживать больше транзакций в те же временные рамки, что и раньше. Протокол обеспечивает одновременный двусторонний канал связи между клиентом и сервером. Это, в свою очередь, увеличивает контроль над обзором сети и оптимизирует управление цепочкой.

Переходя от протокола HTTP без сохранения состояния к постоянным соединениям через сокеты, мы стремимся улучшить время распространения блоков / транзакций и общую эффективность одноранговой связи, - говорит Оливер Беддоус, соучредитель Lisk.

SocketCluster обеспечивает столь необходимую настройку на уровне подключения. Каждый делегат сможет настроить свой сервер в соответствии со своими потребностями, указав количество параллельных процессов, отвечающих за получение подключений и обновление сетевых данных.

Чтобы стандартизировать способ взаимодействия одноранговых узлов, команда Lisk представила новый плагин, wamp-socket-cluster. Он полностью открыт и поддерживается нами. Каждый член сети теперь совместим с протоколом WAMP, что означает, что уровень связи P2P может использоваться двумя способами: путем публикации / подписки или RPC (удаленного вызова процедур). RPC чрезвычайно помогает убедиться, что получен правильный ответ от правильного партнера. Этого не требуется при подписке на ресурсы (транзакции, подписи, блоки). RPC - уже проверенный подход, используемый другими проектами, такими как Биткойн и Эфириум.

В выпуске Lisk Core 1.0.0 будет представлен протокол WAMP на внутреннем уровне P2P. Мы также надеемся адаптировать его в общедоступном API.

Об авторе:

Мацей Бай (Maciej Baj) - разработчик ядра Lisk в компании lightcurve и создатель wamp-socket-cluster. Он окончил Вроцлавский университет науки и технологий со степенью магистра инженерии и информатики.

Контактная информация:

Github: https://github.com/MaciejBaj

Twitter: https://twitter.com/macko_baj

Электронная почта: [email protected]