负载均衡#HAPROXY#003#编译选项说明

使用如下命令查看HAProxy支持的编译选项

1
$ make help

输出如下图:

由于内容较多,这里就不全部展示了,请读者自己去实验,或者使用这份输出示例( 右键另存为 )。

编译选项

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
USE_EPOLL            : enable epoll() on Linux 2.6. Automatic.
USE_KQUEUE           : enable kqueue() on BSD. Automatic.
USE_EVPORTS          : enable event ports on SunOS systems. Automatic.
USE_NETFILTER        : enable netfilter on Linux. Automatic.
USE_PCRE             : enable use of libpcre for regex. Recommended.
USE_PCRE_JIT         : enable JIT for faster regex on libpcre >= 8.32
USE_PCRE2            : enable use of libpcre2 for regex.
USE_PCRE2_JIT        : enable JIT for faster regex on libpcre2
USE_POLL             : enable poll(). Automatic.
USE_THREAD           : enable threads support.
USE_STATIC_PCRE      : enable static libpcre. Recommended.
USE_STATIC_PCRE2     : enable static libpcre2.
USE_TPROXY           : enable transparent proxy. Automatic.
USE_LINUX_TPROXY     : enable full transparent proxy. Automatic.
USE_LINUX_SPLICE     : enable kernel 2.6 splicing. Automatic.
USE_LINUX_CAP        : enable Linux capabilities.
USE_LIBCRYPT         : enable encrypted passwords using -lcrypt
USE_CRYPT_H          : set it if your system requires including crypt.h
USE_GETADDRINFO      : use getaddrinfo() to resolve IPv6 host names.
USE_OPENSSL          : enable use of OpenSSL. Recommended, but see below.
USE_OPENSSL_WOLFSSL  : enable use of wolfSSL with the OpenSSL API
USE_QUIC             : enable use of QUIC with the quictls API (quictls, libressl, boringssl)
USE_ENGINE           : enable use of OpenSSL Engine.
USE_LUA              : enable Lua support.
USE_ACCEPT4          : enable use of accept4() on linux. Automatic.
USE_CLOSEFROM        : enable use of closefrom() on *bsd, solaris. Automatic.
USE_PRCTL            : enable use of prctl(). Automatic.
USE_PROCCTL          : enable use of procctl(). Automatic.
USE_ZLIB             : enable zlib library support and disable SLZ
USE_SLZ              : enable slz library instead of zlib (default=enabled)
USE_CPU_AFFINITY     : enable pinning processes to CPU on Linux. Automatic.
USE_TFO              : enable TCP fast open. Supported on Linux >= 3.7.
USE_NS               : enable network namespace support. Supported on Linux >= 2.6.24.
USE_DL               : enable it if your system requires -ldl. Automatic on Linux.
USE_MATH             : enable use of -lm. Automatic.
USE_RT               : enable it if your system requires -lrt. Automatic on Linux.
USE_BACKTRACE        : enable backtrace(). Automatic on Linux.
USE_PROMEX           : enable the Prometheus exporter
USE_DEVICEATLAS      : enable DeviceAtlas api.
USE_51DEGREES        : enable third party device detection library from 51Degrees
USE_WURFL            : enable WURFL detection library from Scientiamobile
USE_SYSTEMD          : enable sd_notify() support.
USE_OBSOLETE_LINKER  : use when the linker fails to emit __start_init/__stop_init
USE_THREAD_DUMP      : use the more advanced thread state dump system. Automatic.
USE_OT               : enable the OpenTracing filter
USE_MEMORY_PROFILING : enable the memory profiler. Linux-glibc only.
USE_LIBATOMIC        : force to link with/without libatomic. Automatic.
USE_PTHREAD_EMULATION: replace pthread's rwlocks with ours
USE_SHM_OPEN         : use shm_open() for the startup-logs