Когда содержимое файла, который я извлекаю, фактически начинает загрузку с S3?
AmazonS3Client.getObject() S3Object.getContent() S3ObjectInputStream.read()
Из того, что я могу сказать, это первый, но я не нашел ответа в документах
Зависит от того, как вы определяете «начать загрузку».
Технически, это getObject(). В противном случае он не сгенерирует исключения, которые он выбрасывает, некоторые из которых обязательно требуют, чтобы с сервисом связались, а загрузка началась (или произошла ошибка или отказано).
getObject()
Будьте предельно осторожны при использовании этого метода; возвращенный объект Amazon S3 содержит прямой поток данных из HTTP-соединения. https://docs.aws.amazon.com/AWSJavaSDK/latest/javadoc/com/amazonaws/services/s3/AmazonS3Client.html#getObject-com.amazonaws.services.s3.model.GetObjectRequest-
Будьте предельно осторожны при использовании этого метода; возвращенный объект Amazon S3 содержит прямой поток данных из HTTP-соединения.
https://docs.aws.amazon.com/AWSJavaSDK/latest/javadoc/com/amazonaws/services/s3/AmazonS3Client.html#getObject-com.amazonaws.services.s3.model.GetObjectRequest-
Загрузка должна быть начата, чтобы поток был доступен. Байты ждут ... но вы сидите в потоке, из которого вы не читали, за пределами заголовков ответов ... поэтому загрузка не будет продолжена, пока вы не начнете читать.