ElasticSearch Golang

Is it possible to identify multiple hosts with elastigo? I can't seem to find anything specific to that. Anyone using elastigo in a PROD setting? I would really like to attempt using a go based app for our web services, but we have a requirement with ElasticSearch, Redis and possibly a few others. Just not sure that the drivers for go are ready yet.

Any suggestions / info would be appreciated.

Thanks,

S

elastigo is working very well in a production setting for us. As far as detecting 'hosts' my best suggestion is to read the elasticsearch documentation which describes their cluster management scheme - most of that work is handled by elasticsearch itself. In our (rather straightforward) usage I've never had to think about anything beyond the server host address:port - nodes self-connect to a named cluster when brought online (with proper configuration parameters) and load balancing is handled within elasticsearch itself.

My answer could be a bit late, but still... I have recently (mid 2016) chosen olivere/elastic over elastigo as Elasticsearch Go client for our production application.

Reasons for the choice were:

  • olivere/elastic is under active development for the last year, while elastigo gets updated less and less regularly
  • As of 2016, developers recommend olivere/elastic more on the Internet

I would highly recommend you to have a look at olivere/elastic if you haven't made decision yet. Also there is a blog post Working With Elasticsearch in Go, which demonstrates on example how to use olivere/elastic to index and search documents. (In case you want to get a flavour of how the code looks like.)