У меня есть приложение для приложений. У меня есть пользователи, которые обновляют токены (чтобы иметь доступ к Google Drive) в моей базе данных., в какой очереди я должен использовать (App Engine)
Теперь я хочу, чтобы создать это:
Каждую неделю (я имею в виду каждый 7-й день), я хочу временый загрузить пользователей PDF документы Google Диске и работать с ними. Я отправляю письма каждому пользователю о своих pdf-документах.
Основная проблема заключается в том, что может быть много пользователей. и у каждого пользователя может быть много документа. Я должен делать эту работу для каждого пользователя один раз в неделю. Но для каждого пользователя требуется много времени.
ВОПРОС: Итак, теперь я думаю, какое время я должен использовать? Cron или Task Queue. и почему? и если Task Queue, какой из них. который будет быстрее и гибким? Я также могу отправить почту пользователю позже (нет необходимости отправлять письма сразу, когда он/она запрашивает)
QUESTION2: Можно ли запускать Task Queue, например, раз в неделю?
Например если я хочу, чтобы запустить его каждый день, когда я могу использовать что-то вроде этого:
<rate>1/d</rate>
, но как я могу сделать это один раз в неделю?
QUESTION3: потому что может быть много пользователей (и из-за того, что каждому пользователю нужно много времени), могу ли я использовать что-то подобное?
CRON job будет еженедельно (раз в неделю). И CRON для вызова TASK QUEUSE для каждого пользователя. Каждый пользовательский файл будет загружен на сервере движка приложения временно (я думаю, если я сохраню его в памяти, это будет очень сложно для сервера). Затем я увижу документы PDF и отправлю письма каждому пользователю. Это хороший способ? или я должен использовать только CRON? у меня есть ограничение здесь? На сервере хранения или в очередях или что-то в этом роде.
Один пользователь может иметь 10 или 50 PDF-документов. Должен ли я разделять задачи для каждого PDF-файла, чтобы пресечь или отдельные задачи для PDF-файлов для каждого пользователя? – grep
Я должен отправить электронное письмо каждому пользователю, об их данных в формате pdf ... – grep
Это во многом зависит от того, что вы делаете с PDF-файлами, но я думаю, что более надежный подход состоял бы в том, чтобы иметь отдельную задачу для каждого PDF-файла. Для этого вам потребуется задача монитора, чтобы следить за ходом других задач. API-интерфейс Pipeline API имеет такой тип встроенных функций -> https://code.google.com/p/appengine-pipeline/ –