2017-04-14 1 views
1

스위프트에서 호스트 당 최대 동시 연결 수를 늘리고 싶습니다. 이는 iOS에서 기본적으로 4로 제한됩니다.호스트 당 최대 동시 Http 연결, Alamofire?

나는 Alamofire을 사용하고 있습니다.

  • 나는 루프 방법과 여전히 제한에 대한 시도했습니다 (50)
  • 에 HTTPMaximumConcurrentPerHost을 높이기 위해 시도했습니다.
  • url 요청을 작업 대기열로 래핑하려고했지만 여전히 제한된 연결을 시도했습니다.

Obj-C로 작성된 라이브러리는 호스트 당 동시에 4 개 이상의 연결을 사용한다는 것을 알았지 만 Obj-C가 실제인지 아닌지를 프로그램하지는 않습니다. Library on Github

호스트 당 더 많은 동시 연결을 사용하는 솔루션이 있습니까?

애플이 제한 세션 당, 그래서이 제한 가 달성 할 수있는 방법 전체 응용 프로그램

당 여러 세션을 사용하여 초과 될 수 있다고? 나는 찰스에 의해 내 인터넷 속도 및 서버 응답을 테스트 한하고 시뮬레이터에 위의 방법을 사용할 때 /이 두 번째로, 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을 사용하여 동시성을보다 세부적으로 관리 할 수 ​​있음을 제안합니다.

관련 문제