Похоже, работа для обмена сообщениями в очереди!:)
Некоторые параметры Windows в произвольном порядке:
- MSMQ
- Service Broker
- Пользовательская очередь Sql
- Сторонние продукты организации очередей
При всех этих реализациях вы вставляете сообщение пейджера в очередь, а затем с помощью рабочего процесса извлекаете сообщения из очереди и отправляете в нисходящую службу.Ваш работник будет контролировать скорость потока из очереди.
Если служба пейджера по какой-либо причине не работает, вы не отправляете сообщение - оно остается в очереди для повторной попытки.
Поищите в Google «Начало работы с [Вставьте технологию здесь]», и я уверен, что вы получите достаточно информации и пример кода для начала работы.
MSMQ
MSMQ выравнивает камни и с ними легко работать.Он имеет несколько ограничений, таких как размер сообщения 4 МБ и обеспечение высокой доступности очередей (каждый экземпляр очереди обычно поддерживается локальным хранилищем на сервере).
4 МБ можно легко преодолеть, если вывладеть обоими концами очереди (как отправителем, так и получателем), так как вы можете разделить свои сообщения по очереди (разбить сообщение размером> 4 МБ на более мелкие куски и собрать на приемнике.
Преодоление ограничения HA обычно требует помощиресурсы хранилища и кластера - возможно, легче иметь возможность восстанавливать сообщения из исходной системы, чем дурачить с кластеризацией MSMQ (это звучит неправильно для меня, но это был мой опыт - хотелось бы, чтобы гуру MSMQ писал об успешной HA в блоге).
Service Broker
Service Broker - это отличное решение для организации очередей, встроенное в Sql Server (даже в Sql Express), единственным недостатком которого является отсутствие инструментария, который позволяет конфигурироватьУправление сложное.
Сервис Брoker - хороший выбор, если у вас есть несколько потребителей очереди из одной очереди ... это делает решение для постановки в очередь HA, если Sql Server - HA.
Custom Sql Queue
Это может быть хорошим выбором, если вам удобно управлять пакетированием единиц работы из вашей очереди через T-SQL.То, что Service Broker будет обрабатывать для вас.
Настраиваемая очередь SQL - хороший выбор, если у вас есть несколько потребителей очереди из одной очереди ... это делает решение для постановки в очередь HA с предположением, что Sql Server - HA.
Сторонний поставщикПродукты очередей
Существует ряд сторонних продуктов очередей, которые можно вставить сюда, хотя они могут не относиться к Windows или даже к .NET.Это может быть хорошим решением, если ваша среда стремится реализовать «организацию очереди как службу».Вы можете получить привязки .NET для множества хороших реализаций очереди.Проверьте реализации Advanced Message Queuing Protocol для получения дополнительной информации.