2017-04-14 23 views
1

私は、Swiftのホストあたりの最大同時接続数を増やしたいと考えています。これは、iOSではデフォルトで4に制限されています。ホストごとの最大同時Http接続、Alamofire?

私はアラモファイアを使用しています。

  • 私はループ方式とまだ限らにするために試みた50
  • にHTTPMaximumConcurrentPerHostを増加しようとしました。
  • url要求を操作キューにラップしようとしましたが、依然として接続が制限されています。

Obj-Cで書かれたライブラリは、ホストごとに同時に4つ以上の接続を使用していることがわかりましたが、Obj-Cが実際かどうかをプログラムすることはありません。 Library on Github

ホストあたりの同時接続数が多いソリューションはありますか?

Appleは、この制限はセッションごとなので、この制限は はそれを達成することができますどのようにアプリケーション全体

ごとに複数のセッションを使用して超えることができると言っていますか?

*シミュレータでは、上記の方法を使用すると、それは22必須/秒であったとき、私はチャールズで私のインターネットの速度とサーバの応答をテストしたのだが、250必須/秒でした。

答えて

0

これはthe solutionのようだ:

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

ベアあなたがコアの数でによって制限されているフレームワークは、非同期IOを使用しない限り(と私はNSURLSessionがないとは思わない)ことを念頭に置いて、同時に実行できるスレッドの数はプロセッサによって決まります。上にリンクした答えは、NSOperationの要求をラップし、NSOperationQueueでより詳細に並行性を管理できることを示唆しています。