Frage

I have a Worker Role in Windows Azure where I run a Java application. In order to do not affect the SLA, we need to have at least two instances of this worker role. I'm using Hibernate Search 3.4 in this Java application and the lucene indexes are being saved in filesystem, so when one instance modifies an index the other is not aware of that. What do you recommend to have synchonized indexes? I guess I can save indexes in the blob storage or use a JMS Master/slave configuration but I do not know how I can do it.

War es hilfreich?

Lösung

I used 'Infinispan' as Hibernate Search directory provider. I decided not to use Master/Slave because it requires a shared drive.

Infinispan uses JGroups that for default employs UDP multicasting as instance discovery. Because Azure doesn't support UDP multicasting, I used TCPPing as discovery method.

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top