我正在使用
Libp2p允许我构建节点,它们能够托管swarm或监听/拨号至某个节点。我已经开发到了这一步,通过angularjs(辅以socket.io)网页输入,多个节点可以相互通信,但它们的IP地址和
我面临的问题是,如果未知数量的用户加入此系统并设置自己的节点,那么我该如何处理这种情况。我进行了大量关于
我不想运行一个中央系统来跟踪用户,就像Tracker跟踪Torrent中的Seeder和Leecher一样(由于DHT而有些多余)。
在集中式聊天应用程序中,每当用户进入或离开时,我可以从服务器向所有同行发送一个发射事件,使用socket.io将其通知给其他用户。但是,在分散式聊天应用程序中,相当的实现方式正是我非常困惑的事情。
请给予一些指导。
nodejs
, expressjs
, angularjs
, socket.io
和 ipfs
构建一个去中心化聊天应用程序。我正在使用libp2p来形成节点,它们将通过开放连接相互通信。Libp2p是从IPFS项目模块化出来的网络堆栈。Libp2p允许我构建节点,它们能够托管swarm或监听/拨号至某个节点。我已经开发到了这一步,通过angularjs(辅以socket.io)网页输入,多个节点可以相互通信,但它们的IP地址和
tcp
端口需要硬编码。我面临的问题是,如果未知数量的用户加入此系统并设置自己的节点,那么我该如何处理这种情况。我进行了大量关于
DHT
的研究,特别是它在Torrent中的应用,但目前还没达到实际应用的地步。我不想运行一个中央系统来跟踪用户,就像Tracker跟踪Torrent中的Seeder和Leecher一样(由于DHT而有些多余)。
在集中式聊天应用程序中,每当用户进入或离开时,我可以从服务器向所有同行发送一个发射事件,使用socket.io将其通知给其他用户。但是,在分散式聊天应用程序中,相当的实现方式正是我非常困惑的事情。
请给予一些指导。