区块链中究竟使用了哪些网络实现?
What exactly network implementation has been used in Blockchains?
我已经在从事区块链项目,但是我在实现节点之间的对等网络时遇到了问题。我找到了一门 Udemy 课程,在那门课程中,Redis pub/sub 用于点对点网络,但它只在本地网络中可用吗?或者在另一篇文章中它说有一些主要节点 运行 24/7 所以其他人首先与它们建立联系。但这不是服务器端网络吗??
我的问题是我怎样才能真正实现一个点对点网络,世界各地的许多节点都可以在没有任何主服务器的情况下相互通信?
P2P 连接的通常实现是有一个预定义的端口(例如,在 Bitcoin Core 的情况下,它是 8333)并且应用程序定期在这个特定端口上广播它们的消息。
通常在您的应用程序中有一个可能 24/7 在线的预设节点列表,这样应用程序就可以从启动时立即收听它们的消息,而不必等待其他节点节点广播他们的存在。
该应用程序可以保留当前活动节点的列表(例如,ping 周期为 60 秒,因此在过去 60 秒内执行 ping 操作的任何节点都被视为活动节点)以备需要与其他节点通信时使用直接。
但大多数通信通常是通过在预定义端口上广播和收听消息来完成的。
我已经在从事区块链项目,但是我在实现节点之间的对等网络时遇到了问题。我找到了一门 Udemy 课程,在那门课程中,Redis pub/sub 用于点对点网络,但它只在本地网络中可用吗?或者在另一篇文章中它说有一些主要节点 运行 24/7 所以其他人首先与它们建立联系。但这不是服务器端网络吗??
我的问题是我怎样才能真正实现一个点对点网络,世界各地的许多节点都可以在没有任何主服务器的情况下相互通信?
P2P 连接的通常实现是有一个预定义的端口(例如,在 Bitcoin Core 的情况下,它是 8333)并且应用程序定期在这个特定端口上广播它们的消息。
通常在您的应用程序中有一个可能 24/7 在线的预设节点列表,这样应用程序就可以从启动时立即收听它们的消息,而不必等待其他节点节点广播他们的存在。
该应用程序可以保留当前活动节点的列表(例如,ping 周期为 60 秒,因此在过去 60 秒内执行 ping 操作的任何节点都被视为活动节点)以备需要与其他节点通信时使用直接。
但大多数通信通常是通过在预定义端口上广播和收听消息来完成的。