Domanda

Ho una conoscenza molto limitata della configurazione di HornETQ, ma cercherò di spiegare il mio problema.

Ecco la configurazione:

Ci sono diversi istanze standalone JBoss (6.1.0Final) in esecuzione su una rete. Ciò significa, non sono raggruppati, hanno schierato l'applicazione diversa, e in generale non dovrebbero interferire tra loro. Ogni JBoss ha configurato HornetQ con un argomento.

Non ci sono ponti fondamentali (o tutti i ponti) configurati in deploy/hornetq/hornetq-configuration.xml, in realtà questo è un file conferente praticamente standard, con poco a nessun cambiamento da quello che viene fornito con JBoss (sono felice di postarlo Se qualcuno chiede a tho).

Durante l'avvio di tutte le istanze JBoss:

07:37:40,489 INFO  [HornetQServerImpl] Server is now live
07:37:40,489 INFO  [HornetQServerImpl] HornetQ Server version 2.2.5.Final (HQ_2_2_5_FINAL_AS7, 121) [7d0a3341-9eb0-11e3-980d-2c768a5d129f] started
.

Ovviamente l'UUID è diverso per ciascun server.

Tuttavia, per alcuni server HorlatQ crea anche ponti (perché?):

07:37:40,764 INFO  [BridgeImpl] Connecting bridge sf.my-cluster.e479de63-9d3b-11e3-b089-2c768a5d0e23 to its destination [7d0a3341-9eb0-11e3-980d-2c768a5d129f]
07:37:40,878 INFO  [BridgeImpl] Connecting bridge sf.my-cluster.f9d193de-5bfa-11e3-9491-2c768a5d129f to its destination [7d0a3341-9eb0-11e3-980d-2c768a5d129f]
07:37:40,980 INFO  [BridgeImpl] Bridge sf.my-cluster.e479de63-9d3b-11e3-b089-2c768a5d0e23 is connected [7d0a3341-9eb0-11e3-980d-2c768a5d129f-> sf.my-cluster.e479de63-9d3b-11e3-b089-2c768a5d0e23]
07:37:40,980 INFO  [BridgeImpl] Bridge sf.my-cluster.f9d193de-5bfa-11e3-9491-2c768a5d129f is connected [7d0a3341-9eb0-11e3-980d-2c768a5d129f-> sf.my-cluster.f9d193de-5bfa-11e3-9491-2c768a5d129f]
.

Prima domanda: Perché questo accade, perché HQ creane questi ponti anche se non viene specificata alcuna configurazione di loro?

Ecco il problema:

Ogni pochi secondi, EarnotQ SPEGS

2014-02-26 08:17:28,379 ERROR [org.hornetq.core.server.management.impl.ManagementServiceImpl] (Thread-3 (group:HornetQ-client-global-threads-903011273)) Failed to call listener: java.lang.IllegalStateException: Cannot find queue info for queue 80ce792b-382b-4d22-99ae-60cf25e305027d0a3341-9eb0-11e3-980d-2c768a5d129f
    at org.hornetq.core.postoffice.impl.PostOfficeImpl.onNotification(PostOfficeImpl.java:278) [:6.1.0.Final]
    at org.hornetq.core.server.management.impl.ManagementServiceImpl.sendNotification(ManagementServiceImpl.java:654) [:6.1.0.Final]
    at org.hornetq.core.postoffice.impl.PostOfficeImpl.removeBinding(PostOfficeImpl.java:511) [:6.1.0.Final]
    at org.hornetq.core.server.cluster.impl.ClusterConnectionImpl$MessageFlowRecordImpl.removeBinding(ClusterConnectionImpl.java:886) [:6.1.0.Final]
    at org.hornetq.core.server.cluster.impl.ClusterConnectionImpl$MessageFlowRecordImpl.doBindingRemoved(ClusterConnectionImpl.java:874) [:6.1.0.Final]
    at org.hornetq.core.server.cluster.impl.ClusterConnectionImpl$MessageFlowRecordImpl.onMessage(ClusterConnectionImpl.java:695) [:6.1.0.Final]
    at org.hornetq.core.client.impl.ClientConsumerImpl.callOnMessage(ClientConsumerImpl.java:866) [:6.1.0.Final]
    at org.hornetq.core.client.impl.ClientConsumerImpl.access$100(ClientConsumerImpl.java:44) [:6.1.0.Final]
    at org.hornetq.core.client.impl.ClientConsumerImpl$Runner.run(ClientConsumerImpl.java:983) [:6.1.0.Final]
    at org.hornetq.utils.OrderedExecutorFactory$OrderedExecutor$1.run(OrderedExecutorFactory.java:100) [:6.1.0.Final]
    at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145) [:1.7.0_25]
    at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615) [:1.7.0_25]
    at java.lang.Thread.run(Thread.java:724) [:1.7.0_25]
.

Ora questo è un po '"casuale", alcuni dei server JBoss non lo registrano affatto, alcuni li registrano più volte con UUID diversi, tutto dipende da quanti ponti creati durante l'avvio ... .

Perché questo mi capita? Cosa posso fare per fermarlo. Voglio che tutti i server funzionino indipendentemente l'uno dall'altro.

Sono felice di fornire maggiori informazioni che potrebbero aiutare a risolvere questo problema.

È stato utile?

Soluzione

I ponti sono creati da un clustering automatico.I tuoi due server probabilmente sono parte della stessa configurazione UDP (guarda il Gruppo UDP IP e la porta sulla configurazione di HornetQ) e stanno formando un cluster.

Probabilmente quando si spegne uno dei nodi che non hai avuto i nodi quando l'hai riavviato e i ponti non sono stati in grado di riconnettersi o qualcosa del genere.

In questo caso non si dovrebbe formare un cluster e i nodi si trovano a vicenda e quindi trovando i ponti per la comunicazione Inter del cluster.

Modificare l'IP e la porta UDP e questi server saranno indipendenti .. o se non è necessario clustering Sostituire le configurazioni da quelle su standalone non raggruppate.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top