Rust编程实践:系统设计与实现.pdfVIP

  • 3
  • 0
  • 约8.26万字
  • 约 62页
  • 2026-09-30 发布于北京
  • 举报

第

20

章

异步编程(2)|end▁of▁

sentence|

吉姆•布兰迪

・

Rust程序设计(第2版)|end▁of▁

sentence|

20.2

异步客户端与服务器|end▁of▁

sentence|

现在,我们要把这些已讨论过的关键思想组合成一个真正可用的程序。在很大程度上,异步应

用程序和普通的多线程应用程序非常相似,但在某些需要紧凑而且富有表现力的场合,异步编

程可以大显身手。|end▁of▁sentence|

本节的示例是服务器和客户端。真正的系统是很复杂的,涉及从安全、重新连接到隐

私和审核的各种问题,但我们已将此系统缩减为一组非常基础的特性,来把注意力聚焦于

少数我们感兴趣的要点上。|end▁of▁sentence|

特别是,我们希望能好好处理背压。也就是说,即使一个客户端的网络连接速度较慢或完全断开连

接,也绝不能影响其他客户端按照自己的节奏交换消息。由于“龟速”客户端不应该让服务器花

费无限的内存来保存其不断增长的积压消息,因此我们的服务器应该丢弃那些发给掉队客户端的

消息,但也有义务提醒他们其信息流不完整。(一个真正的服务器会将消息记录到磁盘并允许

客户端检索他们错过的消息,但这里不考虑那样做。

文档评论(0)

1亿VIP精品文档

相关文档