Here is my experience. Yours may vary. I also use the TransportClient. And then I wrap our business rules behind another server that offers an HTTP REST API but talks to Elasticsearch on the back end via the TransportClient. This server uses Netty and the LMAX Disruptor to provide low-resource high-throughput processing; it is somewhat like Node.js but in Java instead of JavaScript.
Then I have a bevy of command-line maintenance and test tools that also use the TransportClient. I wrap them inside a shell script (for example, Foobar.main is wrapped inside foobar.sh) and convert command-line options (such as -t person) into Java properties (such as TypeName=person), and also set the classpath to all of the Elasticsearch jars plus all of mine. Whenever there is a compelling change to Elasticsearch, I upgrade, and many times I have watched my Java builds fail with all of the breaking changes. But even with the worst of the breaking changes, it was down for maybe a day or two at the most; the API is rather clean, and this newsgroup is a life saver, and so I never got stuck. And when I was done, I had learned even more about the ES Java API. So it's either a huge pain or it's the joy of learning, depending on your point of view. I have always viewed it as the joy of learning. I just wish the Facets-to-Aggregations migration was smoother. But I sense that there will be another breaking change on my horizon. This will be particularly sad for me, as I had implemented a rather nice hierarchical term frequency combining mvel and facets. Which are now deprecated and on the list to be removed. But again, I'll learn a lot when making the migration. I believe it was Thomas Edison who said that most people miss opportunities because the opportunities come dressed in overalls and look like work. But I digress.... :-) Brian -- You received this message because you are subscribed to the Google Groups "elasticsearch" group. To unsubscribe from this group and stop receiving emails from it, send an email to elasticsearch+unsubscr...@googlegroups.com. To view this discussion on the web visit https://groups.google.com/d/msgid/elasticsearch/40a95f8f-e616-4086-837e-071539078fd4%40googlegroups.com. For more options, visit https://groups.google.com/d/optout.