4.2. 数据库连接池


Red Hat Quay 由很多不同的进程组成,它们都在同一个容器中运行。其中许多进程与数据库交互。

默认启用数据库连接池,与数据库交互的每个进程都包含连接池。这些每个进程连接池配置为最多维护 20 个连接。在负载过重时,可以填写 Red Hat Quay 容器中每个进程的连接池。在某些部署和负载下,这可能需要分析以确保 Red Hat Quay 不会超过配置的数据库的最大连接数。

overtime,连接池释放闲置连接。要立即释放所有连接,Red Hat Quay 需要重启。

对于独立 Red Hat Quay 部署,在启动部署时可以关闭数据库连接池。例如:

$ sudo podman run -d --rm -p 80:8080 -p 443:8443  \
   --name=quay \
   -v $QUAY/config:/conf/stack:Z \
   -v $QUAY/storage:/datastorage:Z \
   -e DB_CONNECTION_POOLING=false
   registry.redhat.io/quay/quay-rhel8:v3.12.1

对于 OpenShift Container Platform 上的 Red Hat Quay,可以通过修改 QuayRegistry 自定义资源定义(CRD)来配置数据库连接池。例如:

QuayRegistry CRD 示例

spec:
  components:
  - kind: quay
    managed: true
    overrides:
      env:
      - name: DB_CONNECTION_POOLING
        value: "false"

表 4.2. 数据库连接池配置
变量类型描述

DB_CONNECTION_POOLING

字符串

是否要启用或禁用数据库连接池。默认值为 true。接受的值是 "true""false"

如果启用了数据库连接池,可以更改连接池的最大大小。这可以通过以下 config.yaml 选项完成:

config.yaml

...
DB_CONNECTION_ARGS:
  max_connections: 10
...

Red Hat logoGithubRedditYoutubeTwitter

学习

尝试、购买和销售

社区

关于红帽文档

通过我们的产品和服务,以及可以信赖的内容,帮助红帽用户创新并实现他们的目标。

让开源更具包容性

红帽致力于替换我们的代码、文档和 Web 属性中存在问题的语言。欲了解更多详情,请参阅红帽博客.

關於紅帽

我们提供强化的解决方案,使企业能够更轻松地跨平台和环境(从核心数据中心到网络边缘)工作。

© 2024 Red Hat, Inc.