Minor network docs fixes (#60905)

Followup to #60216, fixing the formatting of
`transport.tcp.reuse_address` and clarifying some wording around the
distinction between the transport and HTTP layers.
This commit is contained in:
David Turner 2020-08-13 13:06:09 +01:00 committed by GitHub
parent 186e8b865d
commit 0549c40ac1
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 21 additions and 24 deletions

View File

@ -2,18 +2,14 @@
=== HTTP
[[modules-http-description]]
// tag::modules-http-description-tag[]
The HTTP layer exposes {es}'s REST APIs over HTTP.
The HTTP layer exposes {es}'s REST APIs over HTTP. Clients send HTTP requests
to a node in the cluster which either handles it locally or else passes it on
to other nodes for further processing using the <<modules-transport,Transport
layer>>.
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
{wikipedia}/C10k_problem[C10k problem].
When possible, consider using
{wikipedia}/Keepalive#HTTP_Keepalive[HTTP keep alive]
when connecting for better performance and try to get your favorite
client not to do
{wikipedia}/Chunked_transfer_encoding[HTTP chunking].
When possible, consider using {wikipedia}/Keepalive#HTTP_Keepalive[HTTP keep
alive] when connecting for better performance and try to get your favorite
client not to do {wikipedia}/Chunked_transfer_encoding[HTTP chunking].
// end::modules-http-description-tag[]
[http-settings]

View File

@ -163,18 +163,19 @@ The size of the TCP receive buffer (specified with <<size-units,size units>>).
By default not explicitly set.
[discrete]
=== Transport and HTTP protocols
=== HTTP and transport network communication
An Elasticsearch node exposes two network protocols which inherit the above
settings, but may be further configured independently:
Each {es} node uses the network for two different methods of communication:
TCP Transport::
* it exposes an <<modules-http,HTTP interface>> for use by clients.
Used for communication between nodes in the cluster, by the Java
{javaclient}/transport-client.html[Transport client].
See <<modules-transport>>.
* it exposes a <<modules-transport,transport interface>> for communication
between nodes within a cluster, for communication with a
<<modules-remote-clusters,remote cluster>>, and for the
{javaclient}/transport-client.html[Java Transport client] to communicate with a
cluster.
HTTP::
Exposes the JSON-over-HTTP interface used by all clients.
See <<modules-http>>.
The network settings described above apply to both methods of communication,
and you can also configure each interface separately if needed. See the
<<modules-http,HTTP>> and <<modules-transport,transport>> pages for more
details on their respective configurations.

View File

@ -11,7 +11,7 @@ remote cluster connections: <<sniff-mode,sniff mode>> and
<<proxy-mode,proxy mode>>.
Communication with a remote cluster uses the <<modules-transport,transport
layer>> to establishe a number of <<long-lived-connections,long-lived>> TCP
layer>> to establish a number of <<long-lived-connections,long-lived>> TCP
connections from the coordinating nodes of the local cluster to the chosen
nodes in the remote cluster.

View File

@ -86,7 +86,7 @@ sent on a connection before it is dropped. Defaults to `network.tcp.keep_count`
if set, or the system default otherwise. Only applicable on Linux and macOS, and
requires Java 11 or newer.
transport.tcp.reuse_address::
`transport.tcp.reuse_address`::
Should an address be reused or not. Defaults to `network.tcp.reuse_address`.
`transport.tcp.send_buffer_size`::