gpt4 book ai didi

c++ - 异步套接字输入输出

转载 作者:行者123 更新时间:2023-11-28 00:31:47 24 4
gpt4 key购买 nike

为了更新和扩展我的 C++ 知识,我正在尝试实现一个 fcgi 应用程序并自己实现 fcgi 接口(interface)。但是,我没有使用套接字的经验。研究使我找到了 Boost.asio,但由于缺乏套接字知识,我发现很难通过教程使用该库,这些教程有时只是代码示例,当您不知道要查找什么时浏览 apireference 是困难。

问题:

  1. 您会推荐哪本教程(除了 boost.asio 附带的那本)/书籍来阅读有关套接字/异步 IO 的内容?
  2. 对于fcgi,我很难理解AsyncIO的好处,必须先解码header,然后才能接收数据,异步I/O如何获得好处?
  3. 是否有一些启发式方法可以知道哪些参数(线程数、每个线程的套接字、套接字多路复用(是(有多少个连接?)/否、异步 IO、缓冲区大小)为 fcgi 接口(interface)产生最佳性能?

最佳答案

我会推荐(免费)BeeJs networking guide或(付费)W Richard Stevens book在套接字上。

AIO(在本例中)是一种多路复用多个连接的方法。如果您没有多个连接,您将看不到任何好处。这也是完成此任务最快但最难的方法。这个想法是,任何个人对连接的读取或写入都可能需要时间来等待资源可用。 AIO 允许您的应用程序在等待这些资源的同时转移到另一个连接和服务。简而言之,您的应用在多个连接上花费更多的时间工作,更少的等待时间。

没有。这取决于您的体系结构和您的预期负载。真正聪明的网络服务器会根据配置和测量的使用情况调整所有这些。

关于c++ - 异步套接字输入输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22604751/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com