Przy pierwszym użyciu obiektu AmazonS3
po uruchomieniu aplikacji występuje duże opóźnienie wynoszące około 14 sekund. To duże opóźnienie nie występuje przy wszystkich kolejnych połączeniach.Jak wyłączyć automatyczne wykrywanie proxy w obiekcie `AmazonS3`?
Napotkano ten problem z dokładnym opóźnieniem z innymi klasami związanymi z protokołem HTTP i jest on wywoływany, gdy dana klasa próbuje określić ustawienia serwera proxy lokalnego komputera i czy z nich korzystać, czy też nie.
Aby temu zapobiec z WebClient
, należy ustawić WebClient.Proxy = null;
i nie próbuje automatycznie wykryć ustawień proxy, ale nie mogę się dowiedzieć, jak wyłączyć funkcję wykrywania proxy obiektu AmazonS3
.
mam specjalnie starał ustawienie ProxyHost
do null
:
_s3Client = AWSClientFactory.CreateAmazonS3Client(awsAccessKey, awsSecretAccessKey, new AmazonS3Config { ProxyHost = null });
który nie działa. Obecnie korzystamy z zestawu Amazon .NET SDK "v1.3.17.0".
Czy istnieje sposób wyłączenia wykrywania proxy?
Dzięki za odpowiedź! Doceniam, że poświęcasz czas na przeglądanie kodu. To naprawdę pomaga wiedzieć, jakiej techniki używa SDK pod maską. Opublikowalem te pytanie na forum deweloperów Amazon .NET SDK, jesli otrzymam dodatkowe informacje, opublikuję je tutaj. Biorąc pod uwagę podane informacje, jeśli pakiet SDK nie może obecnie wyłączyć wykrywania proxy, wydaje się, że jest to prosta zmiana, ponieważ używają klasy "WebRequest" dla żądań HTTP. +1 – InvertedAcceleration
@InvertedAcceleration - 'WebRequest.DefaultWebProxy' jest właściwością * public static *, więc powinieneś być w stanie skonfigurować ją samodzielnie w aplikacji bez żadnych zmian w SDK (różni się to od projektu WebClient.Proxy) . Podkreśliłem to teraz w odpowiedzi, przepraszam, że wprowadzam w błąd! –
Awesome, to działa idealnie! Dzięki jeszcze raz! Żałuję, że mogłem +2, a także zaakceptować, ponieważ nacisk kładzie na to teraz wyraźnie (przepraszam, że przegapiłem to w początkowej odpowiedzi!) :) – InvertedAcceleration