概述
配置 组合式协议
protocols 标签标识:
配置协议 layer
protocols 部分添加一个新的基础模块:
plain_http- 可供另一 layer 引用的名称type- 指定将被实例化以处理数据的协议处理程序。 可使用以下预定义协议处理程序:tcp- 原生 ClickHouse 协议处理程序http- HTTP ClickHouse 协议处理程序tls- TLS 加密 layerproxy1- PROXYv1 layermysql- MySQL 兼容协议处理程序postgres- PostgreSQL 兼容协议处理程序prometheus- Prometheus 协议处理程序interserver- ClickHouse 服务器间处理程序
组合式协议 尚未实现 gRPC 协议处理程序<port> 和可选的 <host> 标签表示。
例如,要在前面添加的 HTTP layer 上配置端点,我们
可以按如下方式修改配置:
<host> 标签,则使用根配置中的 <listen_host>。
配置 layer 序列
<impl> 标签定义,并引用另一个
模块。例如,要在我们的 plain_http 模块之上配置一个 TLS layer,
可以进一步按如下方式修改配置:
将端点绑定到 layer
定义其他端点
<type> 标签,即可定义其他端点。例如,可以为
plain_http 模块定义一个 another_http 端点,如下所示:
每个端点的自定义 HTTP 处理程序
type=http 协议条目共享同一个 <http_handlers>
配置。你可以通过添加一个指向其他配置节的 <handlers> 标签
来覆盖这一默认行为。这样,每个 HTTP 端口都可以提供一组不同的 HTTP 路由规则。
例如,要在 8124 端口上运行一个使用独立处理程序的备用 HTTP API:
<http_handlers> 规则,
而发往 8124 端口的请求使用 <http_handlers_alt> 规则。如果省略 <handlers>,
该端点会回退到默认的 <http_handlers>。
自定义 handlers 部分的格式与
<http_handlers>
相同。重新加载 config 时,会检测到自定义 handlers 部分的更改,并自动重启
相应的端点。
指定额外的 layer 参数
privateKeyFile) 和证书文件 (certificateFile) :