没有服务器的通信
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了没有服务器的通信相关的知识,希望对你有一定的参考价值。
关于诸如在线游戏,whatsapp和许多其他分布式系统的协作应用程序,服务器起着主要作用。它执行许多关键功能,这些功能对于整个应用程序的平稳运行是必需的。
但是假设我想开发一个应用程序,用户可以使用该应用程序在线连接并实时共享文本,图像,图形等数据。例如,一个用户可能正在研究数学问题,并想与另一位用户讨论它。因此,应用程序使这两个用户(如果需要,还可以有更多用户)可以联系并分享他们的想法。
用户可以在没有服务器作为中介的情况下进行这种通信吗?如果是,什么网络技术可以做到这一点?在缺少中介服务器的情况下,应用程序会错过哪些优势?
答案
如果要构建这样的分布式拓扑,则需要解决许多问题。
NAT必须考虑。这是必须解决的第一件事,您可能需要构建Natpmp或upnp或ICE才能实现nat遍历。
第二个问题是如何在没有服务器的情况下查找其他用户。您可能需要使用LSD或DHT
[您需要考虑没有证书的网络安全性,例如可以存储用户信息并确保他们确实无害的服务器。
如果您使用我上面提到的这些技术或其他技术来解决所有问题,那么您会发现使用服务器相对简单会更好。这是在商业生产中的权衡。
以上是关于没有服务器的通信的主要内容,如果未能解决你的问题,请参考以下文章