[[modules-thrift]]
== Thrift

The https://thrift.apache.org/[thrift] transport module allows to expose the REST interface of
elasticsearch using thrift. Thrift should provide better performance
over http. Since thrift provides both the wire protocol and the
transport, it should make using Elasticsearch more efficient (though it has limited
documentation).

Using thrift requires installing the `transport-thrift` plugin, located
https://github.com/elastic/elasticsearch-transport-thrift[here].

The thrift
https://github.com/elastic/elasticsearch-transport-thrift/blob/master/elasticsearch.thrift[schema]
can be used to generate thrift clients.

[cols="<,<",options="header",]
|=======================================================================
|Setting |Description
|`thrift.port` |The port to bind to. Defaults to 9500-9600

|`thrift.frame` |Defaults to `-1`, which means no framing. Set to a
higher value to specify the frame size (like `15mb`).
|=======================================================================

