Czy Amazon S3 ma pulę połączeń?
Użyłem kiedykolwiek kodu
public static AmazonS3Client s3 = null;
...
BasicAWSCredentials c = new BasicAWSCredentials("absadgwslkjlsdjgflwa");
s3 = new AmazonS3Client(c);
Tworzona jest tylko jedna instancja s3, podczas gdy dziesiątki wątków przesyłają obrazy przez s3.putObject (). W informacjach o zrzucie widziałem, że jeden wątek zablokuje jedyną instancję s3, podczas gdy inni będą czekać.
Myślę, że może będzie szybciej, jeśli użyję poniższego kodu:
BasicAWSCredentials c = new BasicAWSCredentials("absadgwslkjlsdjgflwa");
for(int i = 0; i < 10; i++)
amazonS3[i] = new AmazonS3Client(c);
Za każdym razem, gdy system otrzyma przypadkową instancję s3, a następnie prześle obraz.
private static AmazonS3 getS3(){
int i = (int)(Math.random() * 10);
return amazonS3[i];
}
Ale wydaje się, że system zwalnia. Dlaczego tak się stało? Może jedyna instancja s3 używa już puli połączeń? Jestem zdezorientowany.