Introducere

O componenta Apache Camel care va comunica nativ cu un broker RabbitMQ. Acest lucru este implementat folosind proiectul AMQP al Spring, deci ar trebui sa devina in cele din urma agnostic pentru furnizori.

Utilizare

Cel mai simplu schimb Fanout poate fi definit ca:

spring-amqp: <Nume schimb>

spring-amqp: <Nume schimb>: <Nume coada>

Aici, un simplu producator de mesaje va trimite un mesaj catre Exchange Name, iar un simplu consumator va lega numele Exchange la numele de coada.

Daca doriti sa utilizati o cheie de rutare, URI-urile au structura:

spring-amqp: <Nume schimb>: <Nume coada>: <Cheie de rutare>? type = <Tip schimb>

Cheia de rutare este optionala, dar numele cozii si numele schimbului sunt necesare pentru consumatori. Doar numele de schimb este necesar pentru producatori.

De asemenea, producatorii pot amana cheia de rutare la antetul mesajului, unde antetul ROUTING_KEY ar putea fi setat la cheia de rutare corespunzatoare.

Producatorii pot inlocui numele de schimb specificat in URI setand antetul mesajului Camel EXCHANGE_NAME.

Optiunile pentru URI includ tipul de schimb, care implicit este directionat daca nu este specificat niciunul.

Pentru schimburile bazate pe antet, URI este similar, dar perechile de nume / valoare pot fi specificate in locul cheii de rutare. De exemplu:

spring-amqp: myExchange: qName: cheese = gouda? type = headers

Acest exemplu va prelua toate mesajele in care un antet numit „branza” are valoarea „gouda”. De asemenea, puteti adauga perechi suplimentare de nume / valoare:

spring-amqp: myExchange: qName: cheese = gouda & fromage = jack? type = headers

Ceea ce va crea o legatura pentru anteturile in care „branza” are valoarea „gouda” SI „fromage” are valoarea „jack”. De asemenea, puteti alege sa creati o relatie SAU:

spring-amqp: myExchange: qName: cheese = gouda | fromage = jack? type = headers

Setari si proprietati suplimentare

Proprietati suplimentare pot fi adaugate la punctul final ca parametri URI. De exemplu, pentru a crea un schimb de subiecte care nu este exclusiv si nu durabil:

spring-amqp: myExchange_10: writeQueue: write. *? type = topic & durable = false & autodelete = true & exclusive = false

Parametrii disponibili includ:

prefetchCount Cate mesaje ar trebui sa pre-preia un consumator concurrentConsumers Numarul de fire concurente care vor consuma mesaje dintr-o coada tranzactionala Marcati mesajele catre / de la acest punct final ca stergere automata tranzactionala Permiteti ca acest punct final sa fie sters automat de la broker odata ce a devenit durabil Faceti cozi si schimburi create de acest tip de punct de reper persistent Unul dintre tipurile de schimb AMQP: direct, fanout, anteturi sau subiect. Implicit pentru a directiona. exclusiv Marcati acest punct final ca punct exclusiv pentru schimbul de mesaje Modul de confirmare Seteaza conexiunea modului de confirmare (NICIUNA, AUTO) Configurati o fabrica de conexiuni specifice (pentru sistemele cu mai multi brokeri AMQP) AutoReply Consumatorul trimite inapoi un mesaj de raspuns atunci cand antetul Raspunsul este prezent in mesaj. Valori implicite la true.

Integrarea primaverii

Componenta camel-spring-amqp va incerca sa aduca cat mai multe informatii din contextul aplicatiei in care se afla. De exemplu, daca folosim Spring, am putea emite urmatoarele:

<bean id = “messageConverter” class = “amqp.spring.converter.XStreamConverter” /> <rabbit: connection-factory id = “connectionFactory” /> <rabbit: template id = “amqpTemplate” connection-factory = “connectionFactory” mesaj -converter = “messageConverter” /> <rabbit: admin connection-factory = “connectionFactory” />

Convertorul de mesaje amqp.

videos porno trios español hombres masturbando a mujeres
peliculas porno castellano torrent porno
orgias de maduros madres viciosas
videos de zofilia gratis sexporn
fotos de poyas video sexo gratis
videos heroticos abuelas folladas por el culo
pollas arabes sexo maduras españolas
manoseadas en el cine mamadas españolas
porno incesto asiatico sexo muy duro
maduras sex tias cachondas
viejas con jovenes follando porno gay trios
chupame las tetas tetonas españolas
comicxxx comicxxx
porno español trios castin porno
incestos jovencitas españolas guarras
abuela española follando mamasxxx
porno incesto italiano pareja española follando
trio por sorpresa mamadas gay
pilladas pajeandose porno online
porno trans mamadas en la playa

spring.converter.XStreamConverter este furnizat de componenta camel-spring-amqp; ofera Marshalling JSON utilizand bibliotecile XStream. Daca preferati sa folositi marshalling-ul Jackson JSON (sau o alta metoda de conversie) oferita de cadrul Spring AMQP, puteti schimba clasa de conversie a mesajelor corespunzatoare in exemplul de mai sus.

Conversie avansata a mesajelor

Poate doriti sa utilizati marshalling-ul JSON pentru majoritatea comunicarii dvs. inter-proces, dar poate fi necesar sa efectuati marshalling XML pentru apelurile API REST sau altele asemenea. Daca doriti, puteti specifica mai multe tipuri de conversie a mesajelor pe baza tipului de continut al mesajului. De exemplu, este posibil sa avem mesaje trimise in mod implicit la JSON, dar dorim ca tipurile de continut de aplicatie / text sa fie tiparite doar ca siruri. In cadrul Spring XML DSL puteti defini:

<bean id = “jsonMessageConverter” class = “amqp.spring.converter.XStreamConverter” /> <bean id = “textMessageConverter” class = “amqp.spring.converter.StringConverter” /> <bean id = “messageConverter” class = ” amqp.spring.converter.ContentTypeConverterFactory “> <property name =” converters “> <map> <entry key =” application / json “value-ref =” jsonMessageConverter “/> <entry key =” application / xml “value-ref = “textMessageConverter” /> </map> </property> <property name = “fallbackConverter” ref = “jsonMessageConverter” /> </bean>

Acest lucru ar permite ca mesajele cu un „Content-Type” de aplicatie / json sa fie grupate cu convertorul XStream, in timp ce mesajele cu un tip de continut de aplicatie / xml vor fi structurate intr-un sir de caractere simplu. Daca nu este specificat niciun tip de continut, va fi utilizat convertorul de mesaje XStream JSON.

Descarcari si depozit Maven

Versiunile de lansare ale componentei AMQP Camel Spring sunt gazduite in depozitul Sonatype. Puteti include aceasta componenta in POM-ul dvs. Maven ca:

<dependency> <groupId> com.bluelock </groupId> <artifactId> camel-spring-amqp </artifactId> <version> 1.6.3 </version> </dependency>

Limitari

  • In prezent, tranzactiile nu sunt acceptate
  • Evenimentele ciclului de viata (de exemplu, oprire, oprire) trebuie sa fie rafinate
  • Testele unitare necesita un broker AMQP care ruleaza. S-ar putea sa ajung sa creez o instanta Qpid locala VM ca broker AMQP …

A face

  • Validati cu alti brokeri AMQP (cum ar fi Qpid)

Licenta

Acest pachet, componenta Camel Spring AMQP este licentiat sub licenta publica Mozilla v2.0. Consultati LICENTA pentru detalii.