Какие лимиты на загрузку файлов через API?

Avatar
  • обновлен
  • Отвечен

Планируем сделать загрузку логов/screenshot-ов к тикету. Интересуют лимиты:

- максимальный размер одного файла

- общий лимит хранилища

- rate limits (частота обращения к API)

- как долго хранятся файлы


А также:

- можно ли добавить мета-данные к файлу (указать тикет, например)?

- можно ли удалить файл через API?


Прикрепленные ответы
Avatar
Vladimir Mullagaliyev
  • Ответ
  • Отвечен

Здравствуйте,

У нас нет четких ограничений, но мы не позиционируем себя, как зранилище файлов. Если Вы планируете заливать множество файлов, лучше это делать в файлообменниках. 

Наш аплоад реализован для того, чтобы удобно прикрепить файл к топику или комментарию.

Ниже текущие ограничения. Но они могут меняться в любой момент и при большом количестве занимаемого места возможно ввежение дополнительного ограничения или тарифа.

- общий лимит хранилища - не ограничен жестко, но мониторится и может быть лимитирован вручную или тарифом.

- rate limits = 5 в секунду

- как долго хранятся файлы = не онраничено, пока проект оплачен и файл ИСПОЛЬЗУЕТСЯ в каком-то топике (есть ссылка на файл в одном из топиков).

- можно ли добавить мета-данные к файлу (указать тикет, например)? - Если указать линк на файл в топике или коммента, файл привязывается к нему. Отдельно метаданные не передаются.

- можно ли удалить файл через API? - нет, периодически происходит чистка файлов, которые не связаны с объектами (например, топик удален). Теоретически можно добавить.

Avatar
Vladimir Mullagaliyev
  • Ответ
  • Отвечен

Здравствуйте,

У нас нет четких ограничений, но мы не позиционируем себя, как зранилище файлов. Если Вы планируете заливать множество файлов, лучше это делать в файлообменниках. 

Наш аплоад реализован для того, чтобы удобно прикрепить файл к топику или комментарию.

Ниже текущие ограничения. Но они могут меняться в любой момент и при большом количестве занимаемого места возможно ввежение дополнительного ограничения или тарифа.

- общий лимит хранилища - не ограничен жестко, но мониторится и может быть лимитирован вручную или тарифом.

- rate limits = 5 в секунду

- как долго хранятся файлы = не онраничено, пока проект оплачен и файл ИСПОЛЬЗУЕТСЯ в каком-то топике (есть ссылка на файл в одном из топиков).

- можно ли добавить мета-данные к файлу (указать тикет, например)? - Если указать линк на файл в топике или коммента, файл привязывается к нему. Отдельно метаданные не передаются.

- можно ли удалить файл через API? - нет, периодически происходит чистка файлов, которые не связаны с объектами (например, топик удален). Теоретически можно добавить.

Avatar
sumkin senya

Что насчет максимального размера одного файла?

Avatar
Vladimir Mullagaliyev
Цитата от sumkin senya

Что насчет максимального размера одного файла?

На текущий момент 20MB.

Avatar
sumkin senya

> - rate limits = 5 в секунду

Как именно считаются эти 5 rps?


У нас установлены виджеты на 3-x сайтах и еще в 2-x местах используется API. Как не нарваться на блокировку?

Avatar
Vladimir Mullagaliyev
Цитата от sumkin senya

> - rate limits = 5 в секунду

Как именно считаются эти 5 rps?


У нас установлены виджеты на 3-x сайтах и еще в 2-x местах используется API. Как не нарваться на блокировку?

Здравствуйте,

Лимиты у нас выставлены достаточно высокие. Рассчитаны на лимитирование атак. Если лимитирование срабатывает на реальныз клиентах мы пересмотрим схему. Пока такого нет.

Текущая настройка для сайтов: На каждый IP по 5 в секунду. Если больше, то до 20 будет отдавать (не блокировать), но с задержкой по 5 в секунду. После начнет блокировать. 

Для API отдельные настройки и они еще более щедящие. Т.е. Вам не очем переживать.

Avatar
sumkin senya

На создание одного тикета в Helpdesk уходит до 7 API запросов:

- создание/получение пользователя

- загрузка от 0 до 4 файлов

- создание тикета

- обновление тикета


После запуска беты-версии одного из продуктов, очень вероятно получение большого количества фидбека со стороны пользователей. Поэтому с нашей стороны настраиваем свой ограничитель кол-ва исходящих запросов.

Под какие цифры его подгонять: 20 RPS или выше?

Avatar
Vladimir Mullagaliyev
Цитата от sumkin senya

На создание одного тикета в Helpdesk уходит до 7 API запросов:

- создание/получение пользователя

- загрузка от 0 до 4 файлов

- создание тикета

- обновление тикета


После запуска беты-версии одного из продуктов, очень вероятно получение большого количества фидбека со стороны пользователей. Поэтому с нашей стороны настраиваем свой ограничитель кол-ва исходящих запросов.

Под какие цифры его подгонять: 20 RPS или выше?

API лимиты 20 в секунду.

Настраивайте 20 в секунду, проблем не будет. На самом вы не учитываете время ответа, т.к. запросы идут последоветельно. т.е. эти 7 запросов не пройдут в секунду, они распределятся, скажем, на 3 секунды. Так что не переживайте по этому поводу.

Avatar
sumkin senya

Да, так и есть - на 7 запросов уходит примерно 1-2 секунды. Обработку очереди сообщений могут выполнять параллельно 3-4 обработчика (worker-a). В результате получим те самые 7x3=21 запрос в 1-2 секунды.


И еще один вопрос:

20 RPS на каждый ресурс или всего 20 запросов к вашему API?

Avatar
Vladimir Mullagaliyev
Цитата от sumkin senya

Да, так и есть - на 7 запросов уходит примерно 1-2 секунды. Обработку очереди сообщений могут выполнять параллельно 3-4 обработчика (worker-a). В результате получим те самые 7x3=21 запрос в 1-2 секунды.


И еще один вопрос:

20 RPS на каждый ресурс или всего 20 запросов к вашему API?

20 на один IP. Реально API обработает даже больше, 100 запросов в секунду, но будет обрабатывать их 5 секунд. Т.е. в пик до 100.

Поставьте 20, не ошибетесь.