9

我正在使用nodejsexpressjs、和编写分散式聊天应用程序angularjs。我正在使用libp2p来形成将通过开放连接相互通信的节点。Libp2p 是一个从IPFS项目模块化的网络堆栈。socket.ioipfs

Libp2p 允许我构建nodes能够托管一个swarmlistening/ dialing一个的。我已经发展到几个节点可以通过 angularjs(由 socket.io 补充)网页中的输入相互通信,但它们的 IP 地址和tcp端口需要硬编码。

我面临的问题是,如果未知数量的用户加入这个系统并设置了他们的节点,我该如何处理这种情况。我已经做了很多研究,DHT专门研究它在种子中的应用,但离实际应用它还差得很远。

我不想运行一个跟踪用户的中央系统,因为跟踪器跟踪种子中的播种者和浸出者(由于 DHT,现在有些多余)

在集中式聊天应用程序中,每次用户进入或离开时,我都可以使用 socket.io 发出相同的信号,从服务器向所有对等方发送一个发出事件。但是在去中心化聊天应用程序中的等价物是我正在努力解决的问题。

我需要一些指导。

4

1 回答 1

3

您不必特别担心这个问题,因为 libp2p 将处理节点的发现和连接。最后你会得到一个进程寻址的原语,如果它在网络中是可访问的,它将总是拨号到进程。

我最近一直在为 libp2p 编写更好的文档和教程,请访问https://github.com/libp2p/js-libp2p/tree/master/exampleshttps://github.com/libp2p/js-libp2p . 下周将出现更多示例,包括对等路由 + 内容路由(又名 DHT)。

干杯!

于 2017-07-07T21:47:16.307 回答