Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Java Новый топик    Ответить
Топик располагается на нескольких страницах: 1 2 3 4      [все]
 Вопросы по ActiveMQ  [new]
Molasar
Member

Откуда:
Сообщений: 700
Всем привет!

Есть необходимость использовать транспортную шину для обмена сообщениями между приложениями.
Самой простой из всех реализаций стандарта JMS 1.1, показалась ActiveMQ.

Если у кого есть опыт работы с подобными сервисами, прошу поделиться опытом:

1. Оставить ActiveMQ или выбрать другую реализацию, например, RabbitMQ?
2. ActiveMQ запускается как stand-alone, но можно встроить в Tomcat. Какой вариант надежнее, быстрее?
3. Если ActiveMQ и RabbitMQ реализуют один и тот же стандарт, то у них есть универсальный API, который позволяет переключаться с одной реализации на другую без изменения кода приложений?
4. Как ActiveMQ работает в режиме многопоточности?
Есть несколько приложений, использующих одно подключение к ActiveMQ, и генерирующих множество событий, которые будут отправлены в очередь ActiveMQ. Будет ли в этом случае использован полный асинхронный режим, который не будет приостанавливать работу приложений при отправке сообщения в очередь.
15 апр 19, 10:14    [21862024]     Ответить | Цитировать Сообщить модератору
 Re: Вопросы по ActiveMQ  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
Molasar
Есть необходимость использовать транспортную шину для обмена сообщениями между приложениями.
по хорошему надо обосновать, почему не rest.
Так как все переписывать будете.
15 апр 19, 10:21    [21862042]     Ответить | Цитировать Сообщить модератору
 Re: Вопросы по ActiveMQ  [new]
Озверин
Member

Откуда: Ростов-на-Дону
Сообщений: 5183
Molasar, насколько я помню, rabbitmq не имлементит 2 важные вещи для jms1.1 - распределенные транзакции и сессию.

1. Зависит от того, для чего реально вам нужен jms 1.1
2. Зависит от версии томката, тащемто, если не tomcatee, то, насколько я понимаю - тоже нет поддержки распределнных транзакций и все такое
3. код вы будете менять - так не бывает.
4. отлично работает
5. да, асинхронный режим во все поля

Я бы использовал таки rabbit`а, если это просто события, потому что есть быстрый старт со spring amqp и вменяемое описание. Вот если использовать spring amqp поверх всего этого дела - есть шансы на минимальное изменение кода после смены шины. Но, есть риски, что вы будете трахаться со spring amqp некоторое время.
15 апр 19, 10:28    [21862058]     Ответить | Цитировать Сообщить модератору
 Re: Вопросы по ActiveMQ  [new]
Molasar
Member

Откуда:
Сообщений: 700
Petro123
Molasar
Есть необходимость использовать транспортную шину для обмена сообщениями между приложениями.
по хорошему надо обосновать, почему не rest.
Так как все переписывать будете.

А какие готовые решения используют rest?
15 апр 19, 10:31    [21862066]     Ответить | Цитировать Сообщить модератору
 Re: Вопросы по ActiveMQ  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
Molasar,
Проще сказать что тебе нужно.
Из готового синхронность. Так как асинхронность удорожает ПО для заказчика.
15 апр 19, 10:50    [21862098]     Ответить | Цитировать Сообщить модератору
 Re: Вопросы по ActiveMQ  [new]
Partisan M
Member

Откуда:
Сообщений: 1356
Petro123
по хорошему надо обосновать, почему не rest.


совершенно не нужно, так как ваше пожелание не имеет никакого отношения к вопросу. Ну ни малюсенького.

Molasar
1. Оставить ActiveMQ или выбрать другую реализацию, например, RabbitMQ?


Это не реализации. А службы надёжной доставки сообщений. Внутри них сообщения имеют разный формат. В ActiveMQ (классическом) - JMS, в RabbitMQ - AMQP. Для использования сообщений AMQP в ActiveMQ предоставляется соединитель (Connector), аналогично к RabbitMQ есть соединитель для JMS.

автор
2. ActiveMQ запускается как stand-alone, но можно встроить в Tomcat. Какой вариант надежнее, быстрее?


Начать со встроенного. Потом посмотреть. Надёжность не зависит, но может зависеть производительность.

автор
3. Если ActiveMQ и RabbitMQ реализуют один и тот же стандарт, то у них есть универсальный API, который позволяет переключаться с одной реализации на другую без изменения кода приложений?


Вовсе не одинаковый. JMS - это API и протокол (но протокол скрыт от пользователя). AMQP - протокол. Но не API, которое впрочем есть в RabbitMQ.

автор
4. Как ActiveMQ работает в режиме многопоточности?
Есть несколько приложений, использующих одно подключение к ActiveMQ, и генерирующих множество событий, которые будут отправлены в очередь ActiveMQ.


Многопоточность не имеет отношения к работе службы доставки сообщений. Сообщения разных пользователей обрабатываются асинхронно и посещаются в очередь в случайном порядке (при одновременном поступлении).
15 апр 19, 10:56    [21862109]     Ответить | Цитировать Сообщить модератору
 Re: Вопросы по ActiveMQ  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
Partisan M
совершенно не нужно, так как ваше пожелание не имеет никакого отношения к вопросу. Ну ни малюсенького.
а ActiveMQ это шина?
15 апр 19, 10:58    [21862113]     Ответить | Цитировать Сообщить модератору
 Re: Вопросы по ActiveMQ  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
Partisan M,
Получается тема про шину, а вы про мессенджер.
15 апр 19, 10:59    [21862118]     Ответить | Цитировать Сообщить модератору
 Re: Вопросы по ActiveMQ  [new]
mayton
Member

Откуда: loopback
Сообщений: 41027
Molasar, есть старая но актуальная лекция Алименкова по разным технологиями JMS. Можно послушать обзорно.
Он касается и ActiveMQ, RabbitMQ.
+


2. ActiveMQ запускается как stand-alone, но можно встроить в Tomcat. Какой вариант надежнее, быстрее?

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

Про RabbitMQ я ничего не знаю. Не использовал.
15 апр 19, 11:04    [21862132]     Ответить | Цитировать Сообщить модератору
 Re: Вопросы по ActiveMQ  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
mayton
Встраивать в Томкат я-бы не стал
+1
GlassFish +Camel
15 апр 19, 11:07    [21862136]     Ответить | Цитировать Сообщить модератору
 Re: Вопросы по ActiveMQ  [new]
Kachalov
Member

Откуда: Москва
Сообщений: 5632
Petro123
а ActiveMQ это шина?

- само понятие "service bus" было введено разработчиками продукта SonicMQ
15 апр 19, 11:07    [21862137]     Ответить | Цитировать Сообщить модератору
 Re: Вопросы по ActiveMQ  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
Про шину)).
"Большому кораблю - большое плавание)"
15 апр 19, 11:08    [21862139]     Ответить | Цитировать Сообщить модератору
 Re: Вопросы по ActiveMQ  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
Kachalov,
А понятие Ксерокс кем было введено?
15 апр 19, 11:09    [21862140]     Ответить | Цитировать Сообщить модератору
 Re: Вопросы по ActiveMQ  [new]
Kachalov
Member

Откуда: Москва
Сообщений: 5632
Petro123
GlassFish +Camel

- перебор, в GF уже встроен OpenMQ и разумно обойтись JMS. А на Tomcat - да, логично (вместо Camel можно использовать Spring Integration), но все равно нужен MOM
15 апр 19, 11:17    [21862151]     Ответить | Цитировать Сообщить модератору
 Re: Вопросы по ActiveMQ  [new]
Kachalov
Member

Откуда: Москва
Сообщений: 5632
Petro123
Kachalov,
А понятие Ксерокс кем было введено?

- а Вам зачем? потрепаться захотелось?
15 апр 19, 11:20    [21862154]     Ответить | Цитировать Сообщить модератору
 Re: Вопросы по ActiveMQ  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
Kachalov,
Я думаю, что у ТС перебор.
Возможно 3 веб проекта общаются между собой и автор решил что нужно шину предприятия уже внедрять.
Я за плавный переход от 3 Г.. приложений к большой системе предприятия с шиной.
Там есть адаптеры, DSL и много много чего.
15 апр 19, 11:21    [21862160]     Ответить | Цитировать Сообщить модератору
 Re: Вопросы по ActiveMQ  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
Kachalov
Petro123
Kachalov,
А понятие Ксерокс кем было введено?

- а Вам зачем? потрепаться захотелось?
это вы треплетесь. Я про архитектуру.
15 апр 19, 11:22    [21862163]     Ответить | Цитировать Сообщить модератору
 Re: Вопросы по ActiveMQ  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
Kachalov
но все равно нужен MOM
я смотрю еще шире.
Нужен паттерн EIP.
15 апр 19, 11:27    [21862169]     Ответить | Цитировать Сообщить модератору
 Re: Вопросы по ActiveMQ  [new]
Kachalov
Member

Откуда: Москва
Сообщений: 5632
Petro123
это вы треплетесь. Я про архитектуру.

- Про REST Вам уже Partisan M ответил
15 апр 19, 11:31    [21862178]     Ответить | Цитировать Сообщить модератору
 Re: Вопросы по ActiveMQ  [new]
Kachalov
Member

Откуда: Москва
Сообщений: 5632
Petro123
я смотрю еще шире.
Нужен паттерн EIP.

- хоть гуглите внимательно, EIP - это набор паттернов, а не один паттерн. Похоже тема будет полезной для некоторых из участников
15 апр 19, 11:33    [21862181]     Ответить | Цитировать Сообщить модератору
 Re: Вопросы по ActiveMQ  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
Kachalov
Petro123
это вы треплетесь. Я про архитектуру.

- Про REST Вам уже Partisan M ответил
я ему тоже ответил. Воду хватит лить.
15 апр 19, 11:48    [21862203]     Ответить | Цитировать Сообщить модератору
 Re: Вопросы по ActiveMQ  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
Kachalov
хоть гуглите внимательно, EIP - это набор паттернов, а не один паттерн
это принципиально? Хватит воду лить.
15 апр 19, 11:49    [21862206]     Ответить | Цитировать Сообщить модератору
 Re: Вопросы по ActiveMQ  [new]
Petro123
Member

Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
Сообщений: 38643
Зы
Тема будет интересна только тогда, когда ТС созреет до шины.
А не просто, мне или ему захотелось.
Тогда будет как теме про трехзвенку с БЛ в базе.
15 апр 19, 11:52    [21862210]     Ответить | Цитировать Сообщить модератору
 Re: Вопросы по ActiveMQ  [new]
Андрей Панфилов
Member

Откуда: Москва > Melbourne
Сообщений: 3249
Petro123
по хорошему надо обосновать, почему не rest.
Это надо выбор REST обосновывать в случае асинхронного взаимодействия, ниже три причины почему JMS:
  • поддержка транзакций
  • слабая связность
  • время отклика
  • 15 апр 19, 12:05    [21862233]     Ответить | Цитировать Сообщить модератору
     Re: Вопросы по ActiveMQ  [new]
    Petro123
    Member

    Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
    Сообщений: 38643
    Андрей Панфилов
    Это надо выбор REST обосновывать в случае асинхронного взаимодействия
    хм..
    Я думал что в ЯП типа Java синхронная модель программирования. И она как бы сама собой с начала Hello world выходит.
    А вот асинхронность это надо постараться).
    15 апр 19, 12:12    [21862254]     Ответить | Цитировать Сообщить модератору
     Re: Вопросы по ActiveMQ  [new]
    Андрей Панфилов
    Member

    Откуда: Москва > Melbourne
    Сообщений: 3249
    Petro123
    хм..
    Я думал что в ЯП типа Java синхронная модель программирования. И она как бы сама собой с начала Hello world выходит.
    А вот асинхронность это надо постараться).
    Мало ли что вы там себе думали. И вообще причем тут модель программирования, если речь идет о взаимодействии сервисов? а? вам даже никто нигде не обещает что "Hello world" будет работать синхронно.
    15 апр 19, 13:04    [21862369]     Ответить | Цитировать Сообщить модератору
     Re: Вопросы по ActiveMQ  [new]
    Petro123
    Member

    Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
    Сообщений: 38643
    Андрей Панфилов
    Мало ли что вы там себе думали.
    а что делать на второй странице если автор молчит? Только додумывать за него)
    15 апр 19, 13:14    [21862394]     Ответить | Цитировать Сообщить модератору
     Re: Вопросы по ActiveMQ  [new]
    Basil A. Sidorov
    Member

    Откуда:
    Сообщений: 9181
    "Дать отдохнуть фонтану" - не вариант?
    15 апр 19, 13:15    [21862401]     Ответить | Цитировать Сообщить модератору
     Re: Вопросы по ActiveMQ  [new]
    Petro123
    Member

    Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
    Сообщений: 38643
    Basil A. Sidorov
    "Дать отдохнуть фонтану" - не вариант?
    нет)))). Он написал слово "шина")))
    15 апр 19, 13:22    [21862421]     Ответить | Цитировать Сообщить модератору
     Re: Вопросы по ActiveMQ  [new]
    Андрей Панфилов
    Member

    Откуда: Москва > Melbourne
    Сообщений: 3249
    Petro123
    а что делать на второй странице если автор молчит? Только додумывать за него)
    ну, к примеру, прочесть-таки первое сообщение:
    Molasar
    Будет ли в этом случае использован полный асинхронный режим, который не будет приостанавливать работу приложений при отправке сообщения в очередь.
    15 апр 19, 13:29    [21862442]     Ответить | Цитировать Сообщить модератору
     Re: Вопросы по ActiveMQ  [new]
    Petro123
    Member

    Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
    Сообщений: 38643
    Андрей Панфилов,
    Вы мое сообщение читаете?
    Автор написал слово шина. Поэтому вопрос к нему. Он пошутил или есть требование к шине?
    Про мессенджеры это не ко мне. Вы между собой их обсуждайте.
    15 апр 19, 13:41    [21862473]     Ответить | Цитировать Сообщить модератору
     Re: Вопросы по ActiveMQ  [new]
    Андрей Панфилов
    Member

    Откуда: Москва > Melbourne
    Сообщений: 3249
    Petro123
    Вы мое сообщение читаете?
    Да, я прочел первые два сообщения, выжимка выглядит примерно так:
    - Автор: мы рассматриваем возможность слать сообщения через JMS, есть два варианта выбора реализации, какие грабли могут быть?
    - Petro123: автор, ты - лох, нужно через rest слать.
    15 апр 19, 13:47    [21862481]     Ответить | Цитировать Сообщить модератору
     Re: Вопросы по ActiveMQ  [new]
    Petro123
    Member

    Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
    Сообщений: 38643
    Андрей Панфилов,
    )))
    Теперь сравни с тем что я написал:
    Petro123
    по хорошему надо обосновать, почему не rest.
    Так как все переписывать будете.

    Получается что ты натянул сову на глобус.
    ..
    Если автор отвечает, что всё продумано и требования не с потолка, то и вопросов не будет. Тем более что проект новый.
    А так как он молчит, значит ему во сне приснилось, что шина это круто.
    15 апр 19, 14:19    [21862526]     Ответить | Цитировать Сообщить модератору
     Re: Вопросы по ActiveMQ  [new]
    Petro123
    Member

    Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
    Сообщений: 38643
    Андрей Панфилов,
    Вы сами когда выбираете взаимодействие компонентов ИС на основе очередей?
    15 апр 19, 14:23    [21862535]     Ответить | Цитировать Сообщить модератору
     Re: Вопросы по ActiveMQ  [new]
    Molasar
    Member

    Откуда:
    Сообщений: 700
    Здесь ключевое не "шина", а "обмен сообщениями между приложениями".
    Всем гуру спасибо за толковые ответы доступные для понимания начинающим.
    15 апр 19, 14:48    [21862584]     Ответить | Цитировать Сообщить модератору
     Re: Вопросы по ActiveMQ  [new]
    Petro123
    Member

    Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
    Сообщений: 38643
    Ну вот все и разрешилось). Главное автору выдержать паузу).
    15 апр 19, 14:58    [21862600]     Ответить | Цитировать Сообщить модератору
     Re: Вопросы по ActiveMQ  [new]
    Molasar
    Member

    Откуда:
    Сообщений: 700
    Partisan M,

    Есть работающая инструкция по встраиванию ActiveMQ в Tomcat?
    16 апр 19, 17:31    [21864097]     Ответить | Цитировать Сообщить модератору
     Re: Вопросы по ActiveMQ  [new]
    Герой дня
    Member

    Откуда: obmanula.ru
    Сообщений: 30534
    используйте Spring Cloud Stream - там все равно, RabbitMQ, Kaffka и тп
    16 апр 19, 19:28    [21864233]     Ответить | Цитировать Сообщить модератору
     Re: Вопросы по ActiveMQ  [new]
    Sergunka
    Member

    Откуда:
    Сообщений: 1852
    Molasar
    Здесь ключевое не "шина", а "обмен сообщениями между приложениями".
    Всем гуру спасибо за толковые ответы доступные для понимания начинающим.


    Вот хороший обзор сравнения activemq vs kafka vs rabbitmq

    https://stackshare.io/stackups/activemq-vs-kafka-vs-rabbitmq

    Из моего опыта работать с rabbitmq последнее время более проще. Так же там очень много всяких фильтров понатыкали и если нужна какая-та логика в зависимости от контента сообщения, то довольно весело может получится.

    По поводу транзакций будьте осторожны это не том смысле, что базах данных

    RabbitMQs TX support doesn’t do this: transactions are not durable or atomic, so a broker failure might result in the partial application of a transaction.

    https://tech.labs.oliverwyman.com/blog/2016/10/25/rabbitmq-and-transactions/

    Если у Вам не так много приложений, то часто достаточно вебсокет бродкаст применить или как тут советовали и REST вполне может прокатить. Все зависит от объемов сообщений и архитектуры.

    Крайне просто такие вещи решаются и через сервис Redis там тоже есть встроенный JMS в памяти.

    В общем если бы Вы рассказали, что за задача вполне можно было бы пофантазировать как там чего сдизайнить и имплементировать.
    16 апр 19, 21:06    [21864266]     Ответить | Цитировать Сообщить модератору
     Re: Вопросы по ActiveMQ  [new]
    Sergunka
    Member

    Откуда:
    Сообщений: 1852
    Molasar
    Partisan M,

    Есть работающая инструкция по встраиванию ActiveMQ в Tomcat?


    Вот пример из последнего на спринг буте

    https://spring.io/guides/gs/messaging-jms/

        <dependencies>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-activemq</artifactId>
            </dependency>
            <dependency>
                <groupId>org.apache.activemq</groupId>
                <artifactId>activemq-broker</artifactId>
            </dependency>
    
            <dependency>
                <groupId>com.fasterxml.jackson.core</groupId>
                <artifactId>jackson-databind</artifactId>
            </dependency>
        </dependencies>
    


    Без спринг бута типа те же библиотеки код должен быть тот же. Ну или поищите более ранние примеры до спринг бута
    16 апр 19, 21:11    [21864269]     Ответить | Цитировать Сообщить модератору
     Re: Вопросы по ActiveMQ  [new]
    Molasar
    Member

    Откуда:
    Сообщений: 700
    Sergunka
    Molasar
    Partisan M,

    Есть работающая инструкция по встраиванию ActiveMQ в Tomcat?


    Вот пример из последнего на спринг буте

    https://spring.io/guides/gs/messaging-jms/

        <dependencies>
            <dependency>
                <groupId>org.springframework.boot</groupId>
                <artifactId>spring-boot-starter-activemq</artifactId>
            </dependency>
            <dependency>
                <groupId>org.apache.activemq</groupId>
                <artifactId>activemq-broker</artifactId>
            </dependency>
    
            <dependency>
                <groupId>com.fasterxml.jackson.core</groupId>
                <artifactId>jackson-databind</artifactId>
            </dependency>
        </dependencies>
    


    Без спринг бута типа те же библиотеки код должен быть тот же. Ну или поищите более ранние примеры до спринг бута

    Это настройки клиента. Мой вопрос о том, как настроить сервер Tomcat, чтобы к нему можно было обращаться так же как и к Stand Alone приложению ActiveMQ
    17 апр 19, 09:41    [21864473]     Ответить | Цитировать Сообщить модератору
     Re: Вопросы по ActiveMQ  [new]
    Petro123
    Member

    Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
    Сообщений: 38643
    Molasar,
    Ну расшифруй врпрос на пару абзацев.
    Томкат это просто приложение висящее на 80 порту.
    Как ты хочешь обращатся на 80 порт?
    17 апр 19, 09:50    [21864486]     Ответить | Цитировать Сообщить модератору
     Re: Вопросы по ActiveMQ  [new]
    mayton
    Member

    Откуда: loopback
    Сообщений: 41027
    Molasar, почитай вот тут http://activemq.apache.org/how-do-i-embed-a-broker-inside-a-connection.html

    Но я не уверен что это то что тебе надо по смыслу.
    17 апр 19, 09:56    [21864495]     Ответить | Цитировать Сообщить модератору
     Re: Вопросы по ActiveMQ  [new]
    Kachalov
    Member

    Откуда: Москва
    Сообщений: 5632
    Molasar
    Мой вопрос о том, как настроить сервер Tomcat, чтобы к нему можно было обращаться так же как и к Stand Alone приложению ActiveMQ

    - плохо отвечать вопросом на вопрос, но не понятно зачем что то надо настраивать, когда можно взять уже настроенное? Если использовать TomEE, то там связка Tomcat + ActiveMQ уже настроена.
    17 апр 19, 10:25    [21864533]     Ответить | Цитировать Сообщить модератору
     Re: Вопросы по ActiveMQ  [new]
    Kachalov
    Member

    Откуда: Москва
    Сообщений: 5632
    - вот старенькое руководство по настройке (не факт, что спустя 8 лет все так же): How to embed ActiveMQ in Tomcat
    17 апр 19, 10:31    [21864546]     Ответить | Цитировать Сообщить модератору
     Re: Вопросы по ActiveMQ  [new]
    Petro123
    Member

    Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
    Сообщений: 38643
    Kachalov
    - вот старенькое руководство по настройке (не факт, что спустя 8 лет все так же): How to embed ActiveMQ in Tomcat

    Действительно.
    broker = new BrokerService();
    broker.addConnector("tcp://localhost:61616");
    broker.start();
    

    Как всегда, зря мы тут спорили, какой масти лошади лучше.
    Автору тему надо было назвать hello world ActiveMQ
    17 апр 19, 10:42    [21864567]     Ответить | Цитировать Сообщить модератору
     Re: Вопросы по ActiveMQ  [new]
    mayton
    Member

    Откуда: loopback
    Сообщений: 41027
    Может ему надо совокуплять локалные процессы сами с собой. Тогда ему BlockingQueue в помошь.
    17 апр 19, 11:17    [21864631]     Ответить | Цитировать Сообщить модератору
     Re: Вопросы по ActiveMQ  [new]
    Petro123
    Member

    Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
    Сообщений: 38643
    mayton
    совокуплять
    ))
    Есть покруче в unix из коробки - D-Bus.
    17 апр 19, 11:28    [21864652]     Ответить | Цитировать Сообщить модератору
     Re: Вопросы по ActiveMQ  [new]
    mayton
    Member

    Откуда: loopback
    Сообщений: 41027
    D-Bus это всё таки выход в пространство unix-процессов. Я говорю
    просто о том что автор чё-то странное дизайнит. Зачем ему встраивать брокера в Томкат?
    Экономия? Непонятно.
    17 апр 19, 11:50    [21864707]     Ответить | Цитировать Сообщить модератору
     Re: Вопросы по ActiveMQ  [new]
    Petro123
    Member

    Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
    Сообщений: 38643
    mayton,
    Согласен.
    У него интересная тактика - отвечать одним постом в страницу и тремя словами.
    Я думаю, ему нужен hello world, т.к. систем с очередями он вообще не писал.
    Имхо.
    17 апр 19, 12:03    [21864737]     Ответить | Цитировать Сообщить модератору
     Re: Вопросы по ActiveMQ  [new]
    mayton
    Member

    Откуда: loopback
    Сообщений: 41027
    Да. Были такие курсовые проекты. Обычно препод просил "шоб усё из коробки летало".
    Типа $ gradle bootRun и понеслась... И брокер поднялся и веб-контейнер и приложение.

    Ему так проверять удобно.
    17 апр 19, 12:15    [21864763]     Ответить | Цитировать Сообщить модератору
     Re: Вопросы по ActiveMQ  [new]
    Molasar
    Member

    Откуда:
    Сообщений: 700
    Kachalov
    Molasar
    Мой вопрос о том, как настроить сервер Tomcat, чтобы к нему можно было обращаться так же как и к Stand Alone приложению ActiveMQ

    - плохо отвечать вопросом на вопрос, но не понятно зачем что то надо настраивать, когда можно взять уже настроенное? Если использовать TomEE, то там связка Tomcat + ActiveMQ уже настроена.


    По внутренним причинам не могу использовать TomEE, только Tomcat.
    17 апр 19, 15:22    [21865143]     Ответить | Цитировать Сообщить модератору
     Re: Вопросы по ActiveMQ  [new]
    Molasar
    Member

    Откуда:
    Сообщений: 700
    Petro123
    mayton,
    Согласен.
    У него интересная тактика - отвечать одним постом в страницу и тремя словами.
    Я думаю, ему нужен hello world, т.к. систем с очередями он вообще не писал.
    Имхо.

    Извините, что отвечаю редко, но ценю все ваши ответы.

    Есть порядка 20 сервисов, которые генерят события о том, что они (сервисы) делают.
    Часть этих событий должна прилетать в приложение 1, часть в приложение 2, а также все события должны записываться в журнал аудита.
    Вот и тестирую разные JMS для реализации "шины")))
    17 апр 19, 15:33    [21865157]     Ответить | Цитировать Сообщить модератору
     Re: Вопросы по ActiveMQ  [new]
    Molasar
    Member

    Откуда:
    Сообщений: 700
    Kachalov
    - вот старенькое руководство по настройке (не факт, что спустя 8 лет все так же): How to embed ActiveMQ in Tomcat


    У меня нет прав для записи в файл catalina.bat. Где можно еще прописать эти настройки?

    add the following line in the tomcat startup script:
    -Dwebconsole.type=properties
    -Dwebconsole.jms.url=tcp://localhost:61616
    -Dwebconsole.jmx.url=service:jmx:rmi:///jndi/rmi://localhost:1099/Jmxrmi
    17 апр 19, 15:37    [21865161]     Ответить | Цитировать Сообщить модератору
     Re: Вопросы по ActiveMQ  [new]
    Molasar
    Member

    Откуда:
    Сообщений: 700
    mayton
    D-Bus это всё таки выход в пространство unix-процессов. Я говорю
    просто о том что автор чё-то странное дизайнит. Зачем ему встраивать брокера в Томкат?
    Экономия? Непонятно.

    Есть мнение, что это решение будет производительнее (Озверин).
    17 апр 19, 15:44    [21865177]     Ответить | Цитировать Сообщить модератору
     Re: Вопросы по ActiveMQ  [new]
    Kachalov
    Member

    Откуда: Москва
    Сообщений: 5632
    Molasar
    У меня нет прав для записи в файл catalina.bat. Где можно еще прописать эти настройки?

    add the following line in the tomcat startup script:
    -Dwebconsole.type=properties
    -Dwebconsole.jms.url=tcp://localhost:61616
    -Dwebconsole.jmx.url=service:jmx:rmi:///jndi/rmi://localhost:1099/Jmxrmi

    - попробуйте без них. Я не специалист по ActiveMQ, но подозреваю что это настройки веб-консоли для администрирования ActiveMQ (Вам это вроде не нужно). А вообще плохо. Если надо расширить Tomcat, но при этом не иметь возможности его админить, то задача становится бредовой.
    17 апр 19, 15:53    [21865197]     Ответить | Цитировать Сообщить модератору
     Re: Вопросы по ActiveMQ  [new]
    Petro123
    Member

    Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
    Сообщений: 38643
    Kachalov
    Если надо расширить Tomcat, но при этом не иметь возможности его админить, то задача становится бредовой.
    +1
    Задача вроде архитектурная, а не кочегара кодировщика.
    Не иметь прав - не красиво.
    17 апр 19, 16:28    [21865279]     Ответить | Цитировать Сообщить модератору
     Re: Вопросы по ActiveMQ  [new]
    Petro123
    Member

    Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
    Сообщений: 38643
    Molasar
    Есть порядка 20 сервисов, которые генерят события о том, что они (сервисы) делают.
    Часть этих событий должна прилетать в приложение 1, часть в приложение 2, а также все события должны записываться в журнал аудита.
    Вот и тестирую разные JMS для реализации "шины")))
    неужели микросервисы?))
    17 апр 19, 16:29    [21865281]     Ответить | Цитировать Сообщить модератору
     Re: Вопросы по ActiveMQ  [new]
    mayton
    Member

    Откуда: loopback
    Сообщений: 41027
    Petro123
    Molasar
    Есть порядка 20 сервисов, которые генерят события о том, что они (сервисы) делают.
    Часть этих событий должна прилетать в приложение 1, часть в приложение 2, а также все события должны записываться в журнал аудита.
    Вот и тестирую разные JMS для реализации "шины")))
    неужели микросервисы?))

    Welcome to real world, bro!
    17 апр 19, 16:52    [21865331]     Ответить | Цитировать Сообщить модератору
     Re: Вопросы по ActiveMQ  [new]
    Petro123
    Member

    Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
    Сообщений: 38643
    mayton,
    Угу.))) события логирования вместо класса - микросервис и очередь плюс ШИНА.
    Любая ИС сдохнет)
    17 апр 19, 16:59    [21865360]     Ответить | Цитировать Сообщить модератору
     Re: Вопросы по ActiveMQ  [new]
    mayton
    Member

    Откуда: loopback
    Сообщений: 41027
    Ух. Насмеялись. В тему лекции Алименкова. У меня вобщем-то давно лежит задачка побенчмаркать
    и пощупать за вымя этот RabbitMQ и Kafka.

    Подниму тяпничный топик.
    17 апр 19, 17:07    [21865377]     Ответить | Цитировать Сообщить модератору
     Re: Вопросы по ActiveMQ  [new]
    Petro123
    Member

    Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
    Сообщений: 38643
    Molasar
    Вот и тестирую разные JMS
    будь другом, потести REST.
    Будет медленно - сделаем тебе шину.
    17 апр 19, 17:10    [21865385]     Ответить | Цитировать Сообщить модератору
     Re: Вопросы по ActiveMQ  [new]
    Molasar
    Member

    Откуда:
    Сообщений: 700
    Petro123
    mayton,
    Угу.))) события логирования вместо класса - микросервис и очередь плюс ШИНА.
    Любая ИС сдохнет)

    Пиковая нагрузка 20000 - 40000 событий в сек. и важна надежность, что все события будут сохранены.
    17 апр 19, 17:23    [21865417]     Ответить | Цитировать Сообщить модератору
     Re: Вопросы по ActiveMQ  [new]
    Kachalov
    Member

    Откуда: Москва
    Сообщений: 5632
    Molasar
    Пиковая нагрузка 20000 - 40000 событий в сек. и важна надежность, что все события будут сохранены.

    - сохранены куда? Если хранилище в которое производится запись (БД? Elastic?) не будет успевать писать события (предположим что событие это 100 байт - тогда в пике поток 4Мб/сек), то они начнут копиться в очереди ActiveMQ (а он у Вас расположен на Tomcat) - есть риск положить Tomcat или ноду на которой он запущен
    17 апр 19, 17:36    [21865435]     Ответить | Цитировать Сообщить модератору
     Re: Вопросы по ActiveMQ  [new]
    mayton
    Member

    Откуда: loopback
    Сообщений: 41027
    Kachalov
    Molasar
    Пиковая нагрузка 20000 - 40000 событий в сек. и важна надежность, что все события будут сохранены.

    - сохранены куда? Если хранилище в которое производится запись (БД? Elastic?) не будет успевать писать события (предположим что событие это 100 байт - тогда в пике поток 4Мб/сек), то они начнут копиться в очереди ActiveMQ (а он у Вас расположен на Tomcat) - есть риск положить Tomcat или ноду на которой он запущен

    Apache Active MQ использует по умолчанию storage engine. Кажется он называется KahaDb.
    Его собирались переписать на LevelDB но кажется в процессе. Вобщем сообщения
    не должны пропадать. По крайней мере в дефолтной конфигурации.
    17 апр 19, 17:45    [21865447]     Ответить | Цитировать Сообщить модератору
     Re: Вопросы по ActiveMQ  [new]
    Petro123
    Member

    Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
    Сообщений: 38643
    Molasar
    Petro123
    mayton,
    Угу.))) события логирования вместо класса - микросервис и очередь плюс ШИНА.
    Любая ИС сдохнет)

    Пиковая нагрузка 20000 - 40000 событий в сек. и важна надежность, что все события будут сохранены.
    а теперь про БЛ и сколько нагрузка по транзакциям и бизне операциям. А то какой то логировщик...
    17 апр 19, 17:59    [21865465]     Ответить | Цитировать Сообщить модератору
     Re: Вопросы по ActiveMQ  [new]
    Sergunka
    Member

    Откуда:
    Сообщений: 1852
    Molasar
    Есть порядка 20 сервисов, которые генерят события о том, что они (сервисы) делают.


    Тогда чем обычное логирование не подходит? Тот же splunk всю эту канитель подымит на раз-два-три.
    17 апр 19, 20:07    [21865543]     Ответить | Цитировать Сообщить модератору
     Re: Вопросы по ActiveMQ  [new]
    Sergunka
    Member

    Откуда:
    Сообщений: 1852
    Molasar
    Petro123
    mayton,
    Угу.))) события логирования вместо класса - микросервис и очередь плюс ШИНА.
    Любая ИС сдохнет)

    Пиковая нагрузка 20000 - 40000 событий в сек. и важна надежность, что все события будут сохранены.


    Такую нагрузку только кластер Кафка потянет если нужно дюрабилити, то прийдется подымать кластер Кассандры. Начинаем потихоньку осваивать kubernetes
    17 апр 19, 20:11    [21865544]     Ответить | Цитировать Сообщить модератору
     Re: Вопросы по ActiveMQ  [new]
    mayton
    Member

    Откуда: loopback
    Сообщений: 41027
    Какая решается задача? Сохранить любой ценой? - Тогда проще в файловые логи писать.
    И потом в фоновом режиме тихонько синхронизировать через rsync с центральным хранилищем.

    Я серъезно. Любой юниксоид вам быстро напишет скриптики для ротации логов и фонового копирования.
    И за меньшую цену.

    Как парсить - это отдельный вопрос. Может ElasticSearch.

    Вобщем архитектур - миллион.
    17 апр 19, 20:18    [21865549]     Ответить | Цитировать Сообщить модератору
     Re: Вопросы по ActiveMQ  [new]
    Petro123
    Member

    Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
    Сообщений: 38643
    Petro123
    Molasar
    Пиковая нагрузка 20000 - 40000 событий в сек. и важна надежность, что все события будут сохранены.

    Подсказка.
    Например, бизнес транзакция - ВыдачаКредита() длится 0,2сек. Вопрос, что за события MouseMove() 40 штук в сек?
    18 апр 19, 10:15    [21865793]     Ответить | Цитировать Сообщить модератору
     Re: Вопросы по ActiveMQ  [new]
    mayton
    Member

    Откуда: loopback
    Сообщений: 41027
    MQ-это архитектурно асинхронная передача команд. Я не думаю что выдача кредита под
    это определение подходит. Грубо говоря - если вам нужна мгновенная реакция на ошибку - то
    очереди вам не подходят.
    18 апр 19, 10:23    [21865805]     Ответить | Цитировать Сообщить модератору
     Re: Вопросы по ActiveMQ  [new]
    Petro123
    Member

    Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
    Сообщений: 38643
    mayton,
    Да. Согласен. Я пытаюсь понять цифру 40000.
    Я от цифры иду.
    18 апр 19, 10:28    [21865816]     Ответить | Цитировать Сообщить модератору
     Re: Вопросы по ActiveMQ  [new]
    mayton
    Member

    Откуда: loopback
    Сообщений: 41027
    Репликация. Как варианд. Да мильон причин можно придумать.
    18 апр 19, 10:35    [21865828]     Ответить | Цитировать Сообщить модератору
     Re: Вопросы по ActiveMQ  [new]
    Озверин
    Member

    Откуда: Ростов-на-Дону
    Сообщений: 5183
    Molasar
    mayton
    D-Bus это всё таки выход в пространство unix-процессов. Я говорю
    просто о том что автор чё-то странное дизайнит. Зачем ему встраивать брокера в Томкат?
    Экономия? Непонятно.

    Есть мнение, что это решение будет производительнее (Озверин).


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


    Molasar
    Пиковая нагрузка 20000 - 40000 событий в сек. и важна надежность, что все события будут сохранены.


    это событийная архитектура и события пишутся в базу? Или это логгирование?
    18 апр 19, 10:51    [21865843]     Ответить | Цитировать Сообщить модератору
     Re: Вопросы по ActiveMQ  [new]
    Petro123
    Member

    Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
    Сообщений: 38643
    mayton
    Да мильон причин можно придумать.
    да. Автар пугается. Я написал ему пример на пальцах чтобы не пугался. Мы все тут гадаем что за 40 штук.
    18 апр 19, 10:54    [21865848]     Ответить | Цитировать Сообщить модератору
     Re: Вопросы по ActiveMQ  [new]
    Озверин
    Member

    Откуда: Ростов-на-Дону
    Сообщений: 5183
    mayton
    MQ-это архитектурно асинхронная передача команд. Я не думаю что выдача кредита под
    это определение подходит.


    почему нет? Конвеер - типичный шаблон для rabbitmq.
    18 апр 19, 11:00    [21865852]     Ответить | Цитировать Сообщить модератору
     Re: Вопросы по ActiveMQ  [new]
    mayton
    Member

    Откуда: loopback
    Сообщений: 41027
    Озверин
    mayton
    MQ-это архитектурно асинхронная передача команд. Я не думаю что выдача кредита под
    это определение подходит.


    почему нет? Конвеер - типичный шаблон для rabbitmq.

    Да при чем тут кролики? Я говорю про самый верхний уровень в постановке.
    Вы выдаёте кредит. Как вы выдаете? Это запрос на скоринг? Или это уже приказ на выдачу
    в кассу?
    18 апр 19, 11:29    [21865889]     Ответить | Цитировать Сообщить модератору
     Re: Вопросы по ActiveMQ  [new]
    Озверин
    Member

    Откуда: Ростов-на-Дону
    Сообщений: 5183
    mayton, в самом первом приближении, чтобы человек получил кредит, надо
    а) получить выписку из его кредитной истории
    б) получить данные от клиента
    в) получить ответ от службы сб, что человек сейчас не судим, не в розыске и так далее
    г) получить ответ от, допустим, кассы, что есть доступные средства


    короче, событий на самом деле много. И их надо обработать, и можно асинхронно.
    18 апр 19, 11:37    [21865892]     Ответить | Цитировать Сообщить модератору
     Re: Вопросы по ActiveMQ  [new]
    Petro123
    Member

    Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
    Сообщений: 38643
    mayton
    Я говорю про самый верхний уровень в постановке.
    можно упростить в УЧЕБНОМ примере, что вся БЛ внутри выдатьКредит() ;
    18 апр 19, 11:43    [21865895]     Ответить | Цитировать Сообщить модератору
     Re: Вопросы по ActiveMQ  [new]
    mayton
    Member

    Откуда: loopback
    Сообщений: 41027
    40000 кредитов в секунду.
    18 апр 19, 11:49    [21865901]     Ответить | Цитировать Сообщить модератору
     Re: Вопросы по ActiveMQ  [new]
    Petro123
    Member

    Откуда: Загрузочный сектор Москвы (AutoPOI.ru)
    Сообщений: 38643
    mayton
    40000 кредитов в секунду.
    ларёк Быстрые деньги на вокзальной площади))
    18 апр 19, 11:58    [21865914]     Ответить | Цитировать Сообщить модератору
     Re: Вопросы по ActiveMQ  [new]
    mayton
    Member

    Откуда: loopback
    Сообщений: 41027
    Или высокочастотный трейдинг. Хотя... у них там пожёстче технологии.
    Там Апаче-Мкью - это вообще не вариант. Идет борьба за микросекунды.
    18 апр 19, 12:33    [21865962]     Ответить | Цитировать Сообщить модератору
    Топик располагается на нескольких страницах: 1 2 3 4      [все]
    Все форумы / Java Ответить