Планирование событий на Azure - PullRequest
2 голосов
/ 12 июня 2019

Мне известно о множестве различных способов планирования системных -центрических событий в Azure. Например. Планировщик Azure, приложения логики и т. Д. Они могут использоваться для таких вещей, как резервное копирование, отправка пакетных сообщений электронной почты или другие функции обслуживания.

Однако я не совсем понимаю, какие технологии доступны для событий, связанных с большим объемом документов или записей.

Например, представьте, что у меня есть 100 000 документов в Космосе, и некоторые свойства даты и времени в этих документах относятся к событиям: например, срок действия, напоминания, эскалации, тайм-ауты и т. д. Каждая запись имеет различный набор дат и времени.

Какие существуют способы запуска кода при достижении одного из этих значений времени?

Материал, о котором я до сих пор думал:

  1. Иметь запланированное задание, которое запускается раз в минуту и ​​ищет что-либо, относящееся к этой конкретной минуте в Космосе, затем выполняет "вещи".

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

Но есть ли лучшие способы сделать это? Есть ли готовый сервис Azure, который бы забрал большую часть работы фоновой инфраструктуры и позволил бы мне запланировать одно разовое событие в определенный момент времени и запустить веб-крючок или что-то в этом роде?

Я неправильно классифицирую Планировщик Azure как то, что вы будете использовать для небольшого числа регулярно запланированных задач, а не для смешанного пакета дат и времени, который вы найдете в 100 000 записей Cosmos?

FWIW, в моем случае использования не существует проблемы с точностью - вещи, запланированные на 10:05:00, происходящие в 10:05:32, будут вполне приемлемы, например.

Цените ваши мысли.

1 Ответ

0 голосов
/ 13 июня 2019

Прежде всего, Azure Schedular будет заменен Azure Logic Apps:

Azure Logic Apps заменяет Azure Scheduler, который удаляется.Чтобы запланировать задания, следуйте этой статье, чтобы перейти к Azure Logic Apps.

( source )

Тем не менее, Azure Logic Apps - один из ваших вариантов.поскольку вы можете определить приложения логики, которые запускают одноразовое задание, используя операцию задержки.См. документы для подробностей.

Он очень хорошо масштабируется, и вы можете платить за то, что вы используете (или использовать модель с фиксированной ценой) .

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

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

Теперь, учитывая ваше заявление

Я знаю о множестве различных способов планирования системных событий вAzure.Например, планировщик Azure, приложения логики и т. Д. Они могут использоваться для таких вещей, как резервное копирование, отправка пакетных сообщений электронной почты или другие функции обслуживания.

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

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...