Я работаю над приложением Java, используя, среди прочего, Elasticsearch.
До сих пор я использовал клиент узла Java. Затем некоторое время назад я услышал от некоторых коллег, что REST API предпочтительнее по следующим причинам:
- Возможность обновления Elasticsearch без изменения версии транспортного клиента, т. е. версия клиента Java зависит от того, какая версия запущена в кластере ES.
- Клиенты узла/транспорта будут объявлены устаревшими в следующих выпусках?
- Безопасность
Я сейчас пытаюсь выяснить, сколько это держится.
Что касается № 1, состояние документации Elasticsearch что (обычно) достаточно, чтобы клиент и кластер ES имели одну и ту же основную версию. Таким образом, REST API на самом деле не предлагает ничего лучшего.
Затем №3 обрабатывается Shield.
Про №2 ничего не нашел.
Из приведенной выше информации единственная причина, по которой я могу захотеть использовать REST API в своем приложении Java, — это независимость от версии, просто на всякий случай. Кроме этого, не так много; это правда правда? И правда ли, что клиент узла/транспорта будет объявлен устаревшим?