rabbitmq-consistent-hash-exchange с java-клиентом/весенним кроликом

Я хотел бы использовать возможности rabbitmq-consistent-hash-exchange из java-клиента или, что предпочтительнее, с помощью абстракции spring spring-amqp. К сожалению, мне не удалось найти пример, который объясняет использование java и ссылается на зависимость jar для включения, пожалуйста, посоветуйте.


person Haim Raman    schedule 30.06.2015    source источник


Ответы (2)


Для обменов «x-» нет специального тега. Используйте для этого CustomExchange:

   <bean id="requestHashExchangeTest" class="org.springframework.amqp.core.CustomExchange">
        <constructor-arg name="name" value="test.hash.RequestExchange"/>
        <constructor-arg name="type" value="x-consistent-hash"/>
        <constructor-arg name="durable" value="true"/>
        <constructor-arg name="autoDelete" value="false"/>
        <property name="adminsThatShouldDeclare">
            <list>
                <ref bean="rabbitAdminConnectionFactory" />
            </list>
        </property>
    </bean>

    <bean name="binding"  class="org.springframework.amqp.rabbit.config.BindingFactoryBean">
        <property name="exchange" value="test.random.RequestExchange" />
        <property name="destinationQueue" ref="request.queue" />
        <property name="shouldDeclare" value="true" />
        <property name="adminsThatShouldDeclare">
            <list>
                <ref bean="rabbitAdminConnectionFactory" />
            </list>
        </property>
        <property name="routingKey" value="10" />
    </bean>
person juliaro    schedule 01.07.2015

Spring AMQP не поддерживает инициализацию (объявление) обмена плагинами, но вы можете отправлять сообщения в любой тип обмена, настроенный на сервере.

Просто добавьте биржу непосредственно в rabbitmq, а затем отправляйте ей сообщения, как в любую биржу.

См. справочную документацию, чтобы узнать, как использовать Spring AMQP. ; там есть ссылки на образцы и т.д.

person Gary Russell    schedule 30.06.2015