无连接服务器与面向连接的服务器

对于程序员来说,我们既可以选择实现面向连接的服务器,也可以选择实现无连接的服务器。

User Data gram Protocol (UDP)

  • 无连接
  • 一个socket可以接收和发送来自不同机器的数据
  • 最大努力交付
  • 数据可能会丢失
  • 数据不保证有序到达

Transmission Control Protocol (TCP)

  • 基于连接
  • 客户端通过一个socket连接到服务器,如果要连接到不同的服务器,就要使用不同的socket
  • TCP socket提供双向传输通道
  • 丢失的数据会重传
  • 数据保证有序到达
  • 使用了流量控制

适用情况

  • 对于处理大量客户端请求并返回的情况, UDP服务器实现起来更简单
  • TCP更适合处理网络的问题

参考资料

原文地址:https://www.cnblogs.com/cyyljw/p/9075847.html