gpt4 book ai didi

ios - 每个主机的最大并发 Http 连接数,Alamofire?

转载 作者:行者123 更新时间:2023-11-28 08:12:10 24 4
gpt4 key购买 nike

我想增加 Swift 中每个主机的最大并发连接数,在 iOS 中默认限制为 4 个。

我正在使用 Alamofire

  • 我已尝试将 HTTPMaximumConcurrentPerHost 增加到 50。
  • 我已经尝试了 for in loop 方法,但仍然有限。
  • 还尝试将 url 请求包装到操作队列中,但连接仍然有限。

我看到一个用 Obj-C 编写的库告诉他们每个主机同时使用超过 4 个连接,但我没有编写 Obj-C 程序来知道它是否真实。 Library on Github

是否有一种解决方案可以使每个主机使用更多并发连接?

Apple says that this limit is per session, so this limit can be exceeded using multiple session per whole application

如何实现?

*I've tested my internet speed and server response by Charles and it was 250 Req/Second, when using above methods in simulator it was 22 Req/Second.

最佳答案

这好像是the solution :

let configuration = NSURLSessionConfiguration.defaultSessionConfiguration()
configuration.HTTPMaximumConnectionsPerHost = 50
configuration.timeoutIntervalForRequest = 30
let manager = Alamofire.Manager(configuration: configuration)

请记住,除非框架使用异步 IO(我认为 NSURLSession 不会),否则您会受到处理器内核数量的限制,因为您可以同时执行多少个线程。我上面链接的答案建议将请求包装在 NSOperation 中,以便您可以使用 NSOperationQueue 更精细地管理并发。

关于ios - 每个主机的最大并发 Http 连接数,Alamofire?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43411203/

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