private void StartNode(Node node)
        {
            _log.LogInformation("Starting node {Uri}", node.Uri);

            var nodeBuffer = new NodeBuffer(node);

            _buffers.Add(nodeBuffer);

            _running.Add(Task.Factory.StartNew(async() =>
            {
                await foreach (var message in nodeBuffer.GetMessages(_cancellationTokenSource.Token))
                {
                    await PublishAsync(nodeBuffer.Node, message);
                }
            }, TaskCreationOptions.LongRunning));
        }