我听说,像facebook这样的公司正在使用UDP从memcached中获取数据。我有一个疑问,他们如何确保没有数据包丢失和接收数据包的顺序是每个要求。我们知道tcp提供这样的设施,但udp没有。
答案 0 :(得分:0)
OSI模型有7层:
将事物拆分为层是解决问题的非常好的方法,但这并不意味着您必须在网络层中执行所有网络操作。
正如您所提到的,当UDP没有时,TCP会向终端系统提供反馈,但UDP有自己的优势。 UDP的数据报首先比TCP的数据报简单。而且像Facebook这样的大型系统都使用UDP,因为在这些系统中使用TCP并不是非常聪明,因为所有数据发送者都必须跟踪许多接收器的发送速率和重传率。因此,如果他们使用TCP,他们的网络层将处于非常大的压力下。
因此,他们在应用层进行流量控制,以减少网络流量。