Комментарии 17
Все выше написанное настоль пространственное, что я не понял о чем речь.
std::queue my_queue; тоже очередь и хорошо работает, но читая дальше и дальше я понял это какие то сервисы межпрограммного взаимодействия.
Если возможно уточните о чем именно вы желаете поведать миру.
std::queue my_queue; тоже очередь и хорошо работает, но читая дальше и дальше я понял это какие то сервисы межпрограммного взаимодействия.
Если возможно уточните о чем именно вы желаете поведать миру.
+1
std::queue — это тупо двухсвязный список. А очереди сообщений, это отдельная инфраструктура, которая позволяет общаться как между процессами в пределах одного сервера, так и между серверами, да и между датацентрами. Позволяют организовать полноценную асинхронную работу сложнейших IT систем.
+1
Пожалуй, я приложу картинку.
Как видно из изображения есть часть приложения, процесс, отдельное приложение которому требуется обработать сообщение (к примеру отослать email клиенту), второй компонент это непосредственно очередь сообщений в которую помещается сообщение (например запрос на отправку email), и в правой части изображения расположены обработчики сообщений (например email отправщики). В данном случае очередь сообщений позволяет связать различные компоненты системы, внеся при этом асинхронность и возможность сгладить нагрузку (например теперь отправить 1000 email стало гораздо проще)
Как видно из изображения есть часть приложения, процесс, отдельное приложение которому требуется обработать сообщение (к примеру отослать email клиенту), второй компонент это непосредственно очередь сообщений в которую помещается сообщение (например запрос на отправку email), и в правой части изображения расположены обработчики сообщений (например email отправщики). В данном случае очередь сообщений позволяет связать различные компоненты системы, внеся при этом асинхронность и возможность сгладить нагрузку (например теперь отправить 1000 email стало гораздо проще)
+1
Различных сервисов предоставляющих услуги очередей сообщений не так много
Про Azure вы не слышали?
+2
Добавил, спасибо. К сожалению не приходилось использовать.
0
В Windows Azure огромная подсистема сообщений под общим названием Windows Azure Service Bus, это более верное название
Узнать больше можно тут
msdn.microsoft.com/ru-ru/jj663113
Узнать больше можно тут
msdn.microsoft.com/ru-ru/jj663113
+1
Да, побольше бы больше конкретики. Например почему сказали только об облачных решениях. Если приложение не использует какую-либо облачную платформу, но нужны очереди. Только ради этого не всегда стоит менять серверную инфраструктуру.
Я так понял пост задумывался как мотиватор к использованию очередей сообщений в проектах. Тогда наверное стоило больше рассказать о подходах к построению архитектуры, основанной на очередях.
Я так понял пост задумывался как мотиватор к использованию очередей сообщений в проектах. Тогда наверное стоило больше рассказать о подходах к построению архитектуры, основанной на очередях.
+2
Самые простые в использовании/установке/настройке очереди, как по мне, это gearman и rabbitmq, причем последняя имеет плюшки вроде persistent queue, message ttl etc.
+2
Хоть бы классификацию свойств очередей привели — транзакции, coхранение на диск, пересылка по сети, использование координирующего сервера, формат сообщений, дерево топиков, запрос/ответ — или у всех реализаций одни и те же свойства?
+1
А как же всякие MSMQ, RabbitMQ, etc?
+3
pusher.com еще забыли.
0
InterSystems Ensemble тоже предназначена в том числе для построения интеграционных решений с использованием очередей сообщений.
0
Зарегистрируйтесь на Хабре, чтобы оставить комментарий
Очередь сообщений (Message Queue)