The http module allows to expose elasticsearch API over HTTP.
The http mechanism is completely asynchronous in nature, meaning that there is no blocking thread waiting for a response. The benefit of using asynchronous communication for HTTP is solving the C10k problem.
When possible, consider using HTTP keep alive when connecting for better performance and try to get your favorite client not to do HTTP chunking.
The following are the settings the can be configured for HTTP:
Setting | Description |
---|---|
http.port | A bind port range. Defaults to 9200-9300. |
http.max_content_length | The max content of an HTTP request. Defaults to 100mb |
http.compress | Support for compression when possible (with Accept-Encoding). Defaults to true. |
It also shares the uses the common network settings.
The http module can be completely disabled and not started by setting http.enabled to false. This make sense when creating non data nodes which accept HTTP requests, and communicate with data nodes using the internal transport.