Amazon S3: Что считается запросом PUT / COPY / POST / LIST? - PullRequest
9 голосов
/ 11 февраля 2012

Пожалуйста, подтвердите, если это правильно:

  • PUT , вероятно, загрузка файлов на S3?
  • COPY , вероятно, копирует файлы в S3?

Как насчет POST и LIST ?

Дополнительный вопрос, считаются ли get_bucket_filesize () и get_object_filesize () (из PHP SDK) запросом LIST?

Ответы [ 3 ]

8 голосов
/ 13 февраля 2012

Из моего опыта использования S3 (а также из основ протокола HTTP и REST), POST - это создание нового объекта (в S3 это будет загрузка нового файла), а PUT - созданиеновый объект или обновление существующего объекта (т. е. создание или обновление файла).Каждый раз, когда вы, например, получаете содержимое данного сегмента S3, вы выполняете операцию LIST.Вы не спрашивали, но GET - это загрузка файла с S3, а DELETE - это, очевидно, удаление файла.Конечно, эти предположения зависят от того, какой SDK вы используете (кажется, вы используете PHP) и его реализацию.Мой аргумент заключается в том, что можно реализовать загрузку с помощью GET, загрузку с использованием PUT или POST и т. Д.

Однако, взглянув на S3 REST API ,Я предполагаю, что get_bucket_filesize () реализована в виде LIST (операция GET над корзиной, наряду с некоторыми другими данными, дает размер каждого объекта в ответе), а get_object_filesize () реализована как GET (с использованием операции HEADодин файл также приносит свой размер, включенный в метаданные).

1 голос
/ 06 июня 2017

Между PUT и POST нет большой разницы.Следующее было скопировано из документации AWS S3.

POST - это альтернативная форма PUT , которая позволяет загружать данные из браузера как способ помещения объектов в корзины. Параметры, которые передаются в PUT через HTTP-заголовки, вместо этого передаются в виде полей формы в POST в теле сообщения, закодированном в виде нескольких частей / данных формы.1013 * Как указали другие, LIST предназначен для перечисления объектов.Вы можете найти все операции по следующей ссылке.

http://docs.aws.amazon.com/AmazonS3/latest/API/RESTBucketOps.html

0 голосов
/ 15 мая 2017

Да, вы правы. PUT загружается (в частности, один файл - это один PUT). Я наблюдал, был ли PUT для файла или для некоторого размера пакета, который усложнил бы оценку. Это помещает файл (без ссылки на размер).

ТАКЖЕ, COPY действительно копирует файлы в S3, но это еще не все. Увидеть ниже. Я также нашел ссылки на POST и LIST; см. ниже.

Итак, что я узнал о запросах PUT / COPY / POST / LIST и GET при копании, чтобы оценить наши затраты. Я также включаю ГДЕ, где я обнаружил это (хотел получить все это от Амазонки). Все исправления приветствуются.

FAQ Амазонки здесь: https://aws.amazon.com/s3/faqs/, и я буду ссылаться на это ниже.

COPY может быть несколькими вещами, одна из которых копирует между регионами, что стоит. Например, если вы храните в Западном Вирджинии и копируете в северный регион ЦА, это несет затраты. Копирование из EC2 в S3 (в том же регионе, который я предполагаю) не требует затрат на передачу. См. Часто задаваемые вопросы Amazon в разделе Q: Сколько стоит Amazon S3?

ПРИМЕЧАНИЕ. При записи файла, а затем при перезаписи этого же файла сохраняются обе версии (если только вы что-то не удалите). Я предполагаю, что с вас не взимается больше, если файлы точно такие же, но не отправляйте мне счет, если я ошибаюсь. :-) Кажется, средний размер (за месяц) - это то, что выставлено. Смотрите FAQ (ссылка выше)

Для PUT, GET и DELETE, похоже, один файл - это одна транзакция. Это отвечает на большой вопрос для меня (я не хотел, чтобы их минимальный размер 128 КБ был PUT для каждого пакета по 128 КБ… да, я параноик). Смотрите раздел «Вопрос» следующим образом:

В: Как с меня будет взиматься плата за использование Amazon S3?

Пример запроса:

Предположим, вы передаете 10 000 файлов в Amazon S3 и переносите 20 000 файлов из Amazon S3 каждый день в течение марта месяца. Затем вы удалите 5000 файлов 31 марта.

Всего запросов PUT = 10 000 запросов x 31 день = 310 000 запросов

Всего запросов GET = 20 000 запросов x 31 день = 620 000 запросов

Общее количество запросов DELETE = 5000 × 1 день = 5000 запросов

СПИСОК упоминается под вопросом: Вопрос: Можно ли использовать API-интерфейсы Amazon S3 или Консоль управления для отображения объектов, которые я заархивировал в Amazon Glacier? По сути, это получение списка файлов ... каталога, если хотите.

POST упоминается в RESTObjectPost.html здесь: http://docs.aws.amazon.com/AmazonS3/latest/API/RESTObjectPOST.html

Надеюсь, это поможет. Это, конечно, сделало меня более удобным с тем, что мы будем взимать.

...