Skip to content

Commit 8ca6196

Browse files
author
HAProxy Community
committed
Update docs for dev
1 parent 0978a76 commit 8ca6196

File tree

3 files changed

+62
-26
lines changed

3 files changed

+62
-26
lines changed

docs/dev/configuration.html

Lines changed: 54 additions & 18 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
<html lang="en">
33
<head>
44
<meta charset="utf-8" />
5-
<title>HAProxy version 3.1-dev9-21 - Configuration Manual</title>
5+
<title>HAProxy version 3.1-dev9-50 - Configuration Manual</title>
66
<link href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet" />
77
<link href="https://raw.githubusercontent.com/thomaspark/bootswatch/v3.3.7/cerulean/bootstrap.min.css" rel="stylesheet" />
88
<link href="../css/page.css?0.4.2-15" rel="stylesheet" />
@@ -4069,6 +4069,8 @@
40694069

40704070
<a class="list-group-item" href="#tune.h2.be.max-concurrent-streams">tune.h2.be.max-concurrent-streams</a>
40714071

4072+
<a class="list-group-item" href="#tune.h2.be.rxbuf">tune.h2.be.rxbuf</a>
4073+
40724074
<a class="list-group-item" href="#tune.h2.fe.glitches-threshold">tune.h2.fe.glitches-threshold</a>
40734075

40744076
<a class="list-group-item" href="#tune.h2.fe.initial-window-size">tune.h2.fe.initial-window-size</a>
@@ -4077,6 +4079,8 @@
40774079

40784080
<a class="list-group-item" href="#tune.h2.fe.max-total-streams">tune.h2.fe.max-total-streams</a>
40794081

4082+
<a class="list-group-item" href="#tune.h2.fe.rxbuf">tune.h2.fe.rxbuf</a>
4083+
40804084
<a class="list-group-item" href="#tune.h2.header-table-size">tune.h2.header-table-size</a>
40814085

40824086
<a class="list-group-item" href="#tune.h2.initial-window-size">tune.h2.initial-window-size</a>
@@ -4392,7 +4396,7 @@
43924396
You can use <strong>left</strong> and <strong>right</strong> arrow keys to navigate between chapters.<br>
43934397
</p>
43944398
<p class="text-right">
4395-
<small>Converted with <a href="https://github.com/cbonte/haproxy-dconv">haproxy-dconv</a> v<b>0.4.2-15</b> on <b>2024/10/11</b></small>
4399+
<small>Converted with <a href="https://github.com/cbonte/haproxy-dconv">haproxy-dconv</a> v<b>0.4.2-15</b> on <b>2024/10/12</b></small>
43964400
</p>
43974401
</div>
43984402
<!-- /.sidebar -->
@@ -4403,7 +4407,7 @@
44034407
<div class="text-center">
44044408
<h1><a href="http://www.haproxy.org/" title="HAProxy"><img src="../img/HAProxyCommunityEdition_60px.png?0.4.2-15" /></a></h1>
44054409
<h2>Configuration Manual</h2>
4406-
<p><strong>version 3.1-dev9-21</strong></p>
4410+
<p><strong>version 3.1-dev9-50</strong></p>
44074411
<p>
44084412
2024/10/03<br>
44094413

@@ -8608,7 +8612,8 @@ <h2 id="chapter-3.2" data-target="3.2"><small><a class="small" href="#3.2">3.2.<
86088612
not set, the common default value set by tune.h2.initial-window-size applies.
86098613
It can make sense to slightly increase this value to allow faster downloads
86108614
or to reduce CPU usage on the servers, at the expense of creating unfairness
8611-
between clients. It doesn't affect resource usage.
8615+
between clients. It is better to use tune.h2.be.rxbuf instead, which does not
8616+
cause any unfairness. It doesn't affect resource usage.
86128617
</pre><div class="page-header"><b>See also:</b> tune.h2.initial-window-size.</div>
86138618
<a class="anchor" name="tune.h2.be.max-concurrent-streams"></a><a class="anchor" name="3-tune.h2.be.max-concurrent-streams"></a><a class="anchor" name="3.2-tune.h2.be.max-concurrent-streams"></a><a class="anchor" name="tune.h2.be.max-concurrent-streams (Global parameters)"></a><a class="anchor" name="tune.h2.be.max-concurrent-streams (Performance tuning)"></a><div class="keyword"><b><a class="anchor" name="tune.h2.be.max-concurrent-streams"></a><a href="#3.2-tune.h2.be.max-concurrent-streams">tune.h2.be.max-concurrent-streams</a></b> <span style="color: #080">&lt;number&gt;</span></div><pre class="text">Sets the HTTP/2 maximum number of concurrent streams per outgoing connection
86148619
(i.e. the number of outstanding requests on a single connection to a server).
@@ -8622,7 +8627,20 @@ <h2 id="chapter-3.2" data-target="3.2"><small><a class="small" href="#3.2">3.2.<
86228627
clients sharing a connection (keep tune.h2.be.initial-window-size low in this
86238628
case). It is highly recommended not to increase this value; some might find
86248629
it optimal to run at low values (1..5 typically).
8625-
</pre><a class="anchor" name="tune.h2.fe.glitches-threshold"></a><a class="anchor" name="3-tune.h2.fe.glitches-threshold"></a><a class="anchor" name="3.2-tune.h2.fe.glitches-threshold"></a><a class="anchor" name="tune.h2.fe.glitches-threshold (Global parameters)"></a><a class="anchor" name="tune.h2.fe.glitches-threshold (Performance tuning)"></a><div class="keyword"><b><a class="anchor" name="tune.h2.fe.glitches-threshold"></a><a href="#3.2-tune.h2.fe.glitches-threshold">tune.h2.fe.glitches-threshold</a></b> <span style="color: #080">&lt;number&gt;</span></div><pre class="text">Sets the threshold for the number of glitches on a frontend connection, where
8630+
</pre><a class="anchor" name="tune.h2.be.rxbuf"></a><a class="anchor" name="3-tune.h2.be.rxbuf"></a><a class="anchor" name="3.2-tune.h2.be.rxbuf"></a><a class="anchor" name="tune.h2.be.rxbuf (Global parameters)"></a><a class="anchor" name="tune.h2.be.rxbuf (Performance tuning)"></a><div class="keyword"><b><a class="anchor" name="tune.h2.be.rxbuf"></a><a href="#3.2-tune.h2.be.rxbuf">tune.h2.be.rxbuf</a></b> <span style="color: #080">&lt;size&gt;</span></div><pre class="text">Sets the HTTP/2 receive buffer size for outgoing connections, in bytes. This
8631+
size will be rounded up to the next multiple of tune.bufsize and will be
8632+
shared between all streams uploading data (both HEADERS and DATA frames). In
8633+
any case, one buffer will always be granted to each stream, and 7/8 of the
8634+
unused buffers will be shared between streams downloading payload, allowing
8635+
to significantly improve upload performance and avoid head-of-line blocking
8636+
(HoL) on backend connections shared between multiple clients when http-reuse
8637+
is set to &quot;always&quot;. The advertised per-stream window is automatically
8638+
adjusted to reflect the available space so that in practice it should not be
8639+
required to touch tune.h2.be.initial-window-size. If less than the size
8640+
required to deal with all streams is set, this minimum will be used. The
8641+
default value is about 1600k (100 streams with 16kB buffers each).
8642+
</pre><div class="page-header"><b>See also:</b> tune.h2.be.initial-window-size, tune.h2.fe.rxbuf, http-reuse.</div>
8643+
<a class="anchor" name="tune.h2.fe.glitches-threshold"></a><a class="anchor" name="3-tune.h2.fe.glitches-threshold"></a><a class="anchor" name="3.2-tune.h2.fe.glitches-threshold"></a><a class="anchor" name="tune.h2.fe.glitches-threshold (Global parameters)"></a><a class="anchor" name="tune.h2.fe.glitches-threshold (Performance tuning)"></a><div class="keyword"><b><a class="anchor" name="tune.h2.fe.glitches-threshold"></a><a href="#3.2-tune.h2.fe.glitches-threshold">tune.h2.fe.glitches-threshold</a></b> <span style="color: #080">&lt;number&gt;</span></div><pre class="text">Sets the threshold for the number of glitches on a frontend connection, where
86268644
that connection will automatically be killed. This allows to automatically
86278645
kill misbehaving connections without having to write explicit rules for them.
86288646
The default value is zero, indicating that no threshold is set so that no
@@ -8636,11 +8654,12 @@ <h2 id="chapter-3.2" data-target="3.2"><small><a class="small" href="#3.2">3.2.<
86368654
from HAProxy. This setting only affects payload contents (i.e. the body of
86378655
POST requests), not headers. When not set, the common default value set by
86388656
tune.h2.initial-window-size applies. It can make sense to increase this value
8639-
to allow faster uploads. The default value of 65536 allows up to 5 Mbps of
8640-
bandwidth per client over a 100 ms ping time, and 500 Mbps for 1 ms ping
8641-
time. It doesn't affect resource usage. Using too large values may cause
8642-
clients to experience a lack of responsiveness if pages are accessed in
8643-
parallel to large uploads.
8657+
to allow faster uploads. The default value equals tune.bufsize (16384) and
8658+
allows at least 1.25 Mbps of bandwidth per stream over a 100 ms ping time,
8659+
and 125 Mbps for 1 ms ping time. It doesn't affect resource usage. Using too
8660+
large values may cause clients to experience a lack of responsiveness if
8661+
pages are accessed in parallel to large uploads. It is better to use
8662+
tune.h2.fe.rxbuf instead, which does not cause any unfairness.
86448663
</pre><div class="page-header"><b>See also:</b> tune.h2.initial-window-size.</div>
86458664
<a class="anchor" name="tune.h2.fe.max-concurrent-streams"></a><a class="anchor" name="3-tune.h2.fe.max-concurrent-streams"></a><a class="anchor" name="3.2-tune.h2.fe.max-concurrent-streams"></a><a class="anchor" name="tune.h2.fe.max-concurrent-streams (Global parameters)"></a><a class="anchor" name="tune.h2.fe.max-concurrent-streams (Performance tuning)"></a><div class="keyword"><b><a class="anchor" name="tune.h2.fe.max-concurrent-streams"></a><a href="#3.2-tune.h2.fe.max-concurrent-streams">tune.h2.fe.max-concurrent-streams</a></b> <span style="color: #080">&lt;number&gt;</span></div><pre class="text">Sets the HTTP/2 maximum number of concurrent streams per incoming connection
86468665
(i.e. the number of outstanding requests on a single connection from a
@@ -8683,20 +8702,37 @@ <h2 id="chapter-3.2" data-target="3.2"><small><a class="small" href="#3.2">3.2.<
86838702
note that some load testing tools do not support reconnections and may report
86848703
errors with this setting; as such it may be needed to disable it when running
86858704
performance benchmarks. See also &quot;<a href="#tune.h2.fe.max-concurrent-streams">tune.h2.fe.max-concurrent-streams</a>&quot;.
8686-
</pre><a class="anchor" name="tune.h2.header-table-size"></a><a class="anchor" name="3-tune.h2.header-table-size"></a><a class="anchor" name="3.2-tune.h2.header-table-size"></a><a class="anchor" name="tune.h2.header-table-size (Global parameters)"></a><a class="anchor" name="tune.h2.header-table-size (Performance tuning)"></a><div class="keyword"><b><a class="anchor" name="tune.h2.header-table-size"></a><a href="#3.2-tune.h2.header-table-size">tune.h2.header-table-size</a></b> <span style="color: #080">&lt;number&gt;</span></div><pre class="text">Sets the HTTP/2 dynamic header table size. It defaults to 4096 bytes and
8705+
</pre><a class="anchor" name="tune.h2.fe.rxbuf"></a><a class="anchor" name="3-tune.h2.fe.rxbuf"></a><a class="anchor" name="3.2-tune.h2.fe.rxbuf"></a><a class="anchor" name="tune.h2.fe.rxbuf (Global parameters)"></a><a class="anchor" name="tune.h2.fe.rxbuf (Performance tuning)"></a><div class="keyword"><b><a class="anchor" name="tune.h2.fe.rxbuf"></a><a href="#3.2-tune.h2.fe.rxbuf">tune.h2.fe.rxbuf</a></b> <span style="color: #080">&lt;size&gt;</span></div><pre class="text">Sets the HTTP/2 receive buffer size for incoming connections, in bytes. This
8706+
size will be rounded up to the next multiple of tune.bufsize and will be
8707+
shared between all streams uploading data (both HEADERS and DATA frames). In
8708+
any case, one buffer will always be granted to each stream, and 7/8 of the
8709+
unused buffers will be shared between streams uploading payload, allowing to
8710+
significantly improve upload performance. The advertised per-stream window is
8711+
automatically adjusted to reflect the available space so that in practice it
8712+
should not be required to touch tune.h2.fe.initial-window-size. If less than
8713+
the size required to deal with all streams is set, this minimum will be used.
8714+
The default value of 1600k (100 streams with 16kB buffers each) permits
8715+
roughly 130 Mbps of upload speed for a client with a 100ms RTT.
8716+
</pre><div class="page-header"><b>See also:</b> tune.h2.fe.initial-window-size and tune.h2.be.rxbuf.</div>
8717+
<a class="anchor" name="tune.h2.header-table-size"></a><a class="anchor" name="3-tune.h2.header-table-size"></a><a class="anchor" name="3.2-tune.h2.header-table-size"></a><a class="anchor" name="tune.h2.header-table-size (Global parameters)"></a><a class="anchor" name="tune.h2.header-table-size (Performance tuning)"></a><div class="keyword"><b><a class="anchor" name="tune.h2.header-table-size"></a><a href="#3.2-tune.h2.header-table-size">tune.h2.header-table-size</a></b> <span style="color: #080">&lt;number&gt;</span></div><pre class="text">Sets the HTTP/2 dynamic header table size. It defaults to 4096 bytes and
86878718
cannot be larger than 65536 bytes. A larger value may help certain clients
86888719
send more compact requests, depending on their capabilities. This amount of
86898720
memory is consumed for each HTTP/2 connection. It is recommended not to
86908721
change it.
86918722
</pre><a class="anchor" name="tune.h2.initial-window-size"></a><a class="anchor" name="3-tune.h2.initial-window-size"></a><a class="anchor" name="3.2-tune.h2.initial-window-size"></a><a class="anchor" name="tune.h2.initial-window-size (Global parameters)"></a><a class="anchor" name="tune.h2.initial-window-size (Performance tuning)"></a><div class="keyword"><b><a class="anchor" name="tune.h2.initial-window-size"></a><a href="#3.2-tune.h2.initial-window-size">tune.h2.initial-window-size</a></b> <span style="color: #080">&lt;number&gt;</span></div><pre class="text">Sets the default value for the HTTP/2 initial window size, on both incoming
86928723
and outgoing connections. This value is used for incoming connections when
86938724
tune.h2.fe.initial-window-size is not set, and by outgoing connections when
8694-
tune.h2.be.initial-window-size is not set. The default value is 65536, which
8695-
for uploads roughly allows up to 5 Mbps of bandwidth per client over a
8696-
network showing a 100 ms ping time, or 500 Mbps over a 1-ms local network.
8697-
Given that changing the default value will both increase upload speeds and
8698-
cause more unfairness between clients on downloads, it is recommended to
8699-
instead use the side-specific settings tune.h2.fe.initial-window-size and
8725+
tune.h2.be.initial-window-size is not set. This setting is used both as the
8726+
initial value and as a minimum per stream. The default value equals 16384
8727+
(tune.bufsize), which for uploads roughly allows at least 1.25 Mbps of
8728+
bandwidth per stream over a network showing a 100 ms ping time, or 125 Mbps
8729+
over a 1-ms local network. When less receive buffers than the maximum are in
8730+
use, within the limits defined by tune.h2.be.rxbuf and tune.h2.fe.rxbuf,
8731+
unused buffers will be shared between receiving streams. As such there is
8732+
normally no point in changing this default setting. Given that changing this
8733+
default value will both increase upload speeds and cause more unfairness
8734+
between clients on downloads, it is recommended to instead use the side-
8735+
specific settings tune.h2.fe.initial-window-size and
87008736
tune.h2.be.initial-window-size.
87018737
</pre><a class="anchor" name="tune.h2.max-concurrent-streams"></a><a class="anchor" name="3-tune.h2.max-concurrent-streams"></a><a class="anchor" name="3.2-tune.h2.max-concurrent-streams"></a><a class="anchor" name="tune.h2.max-concurrent-streams (Global parameters)"></a><a class="anchor" name="tune.h2.max-concurrent-streams (Performance tuning)"></a><div class="keyword"><b><a class="anchor" name="tune.h2.max-concurrent-streams"></a><a href="#3.2-tune.h2.max-concurrent-streams">tune.h2.max-concurrent-streams</a></b> <span style="color: #080">&lt;number&gt;</span></div><pre class="text">Sets the default HTTP/2 maximum number of concurrent streams per connection
87028738
(i.e. the number of outstanding requests on a single connection). This value
@@ -31119,7 +31155,7 @@ <h2 id="chapter-11.3" data-target="11.3"><small><a class="small" href="#11.3">11
3111931155
<br>
3112031156
<hr>
3112131157
<div class="text-right">
31122-
HAProxy 3.1-dev9-21 &ndash; Configuration Manual<br>
31158+
HAProxy 3.1-dev9-50 &ndash; Configuration Manual<br>
3112331159
<small>, 2024/10/03</small>
3112431160
</div>
3112531161
</div>

docs/dev/intro.html

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
<html lang="en">
33
<head>
44
<meta charset="utf-8" />
5-
<title>HAProxy version 3.1-dev9-21 - Starter Guide</title>
5+
<title>HAProxy version 3.1-dev9-50 - Starter Guide</title>
66
<link href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet" />
77
<link href="https://raw.githubusercontent.com/thomaspark/bootswatch/v3.3.7/cerulean/bootstrap.min.css" rel="stylesheet" />
88
<link href="../css/page.css?0.4.2-15" rel="stylesheet" />
@@ -484,7 +484,7 @@
484484
You can use <strong>left</strong> and <strong>right</strong> arrow keys to navigate between chapters.<br>
485485
</p>
486486
<p class="text-right">
487-
<small>Converted with <a href="https://github.com/cbonte/haproxy-dconv">haproxy-dconv</a> v<b>0.4.2-15</b> on <b>2024/10/11</b></small>
487+
<small>Converted with <a href="https://github.com/cbonte/haproxy-dconv">haproxy-dconv</a> v<b>0.4.2-15</b> on <b>2024/10/12</b></small>
488488
</p>
489489
</div>
490490
<!-- /.sidebar -->
@@ -495,7 +495,7 @@
495495
<div class="text-center">
496496
<h1><a href="http://www.haproxy.org/" title="HAProxy"><img src="../img/HAProxyCommunityEdition_60px.png?0.4.2-15" /></a></h1>
497497
<h2>Starter Guide</h2>
498-
<p><strong>version 3.1-dev9-21</strong></p>
498+
<p><strong>version 3.1-dev9-50</strong></p>
499499
<p>
500500
<br>
501501

@@ -2515,7 +2515,7 @@ <h2 id="chapter-4.4" data-target="4.4"><small><a class="small" href="#4.4">4.4.<
25152515
<br>
25162516
<hr>
25172517
<div class="text-right">
2518-
HAProxy 3.1-dev9-21 &ndash; Starter Guide<br>
2518+
HAProxy 3.1-dev9-50 &ndash; Starter Guide<br>
25192519
<small>, </small>
25202520
</div>
25212521
</div>

docs/dev/management.html

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,7 +2,7 @@
22
<html lang="en">
33
<head>
44
<meta charset="utf-8" />
5-
<title>HAProxy version 3.1-dev9-21 - Management Guide</title>
5+
<title>HAProxy version 3.1-dev9-50 - Management Guide</title>
66
<link href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet" />
77
<link href="https://raw.githubusercontent.com/thomaspark/bootswatch/v3.3.7/cerulean/bootstrap.min.css" rel="stylesheet" />
88
<link href="../css/page.css?0.4.2-15" rel="stylesheet" />
@@ -646,7 +646,7 @@
646646
You can use <strong>left</strong> and <strong>right</strong> arrow keys to navigate between chapters.<br>
647647
</p>
648648
<p class="text-right">
649-
<small>Converted with <a href="https://github.com/cbonte/haproxy-dconv">haproxy-dconv</a> v<b>0.4.2-15</b> on <b>2024/10/11</b></small>
649+
<small>Converted with <a href="https://github.com/cbonte/haproxy-dconv">haproxy-dconv</a> v<b>0.4.2-15</b> on <b>2024/10/12</b></small>
650650
</p>
651651
</div>
652652
<!-- /.sidebar -->
@@ -657,7 +657,7 @@
657657
<div class="text-center">
658658
<h1><a href="http://www.haproxy.org/" title="HAProxy"><img src="../img/HAProxyCommunityEdition_60px.png?0.4.2-15" /></a></h1>
659659
<h2>Management Guide</h2>
660-
<p><strong>version 3.1-dev9-21</strong></p>
660+
<p><strong>version 3.1-dev9-50</strong></p>
661661
<p>
662662
<br>
663663

@@ -5339,7 +5339,7 @@ <h2 id="chapter-13.1" data-target="13.1"><small><a class="small" href="#13.1">13
53395339
<br>
53405340
<hr>
53415341
<div class="text-right">
5342-
HAProxy 3.1-dev9-21 &ndash; Management Guide<br>
5342+
HAProxy 3.1-dev9-50 &ndash; Management Guide<br>
53435343
<small>, </small>
53445344
</div>
53455345
</div>

0 commit comments

Comments
 (0)