tcb db pg realtime set
修改 PG 模式环境的 Realtime 配置:挂起/恢复服务、频道访问策略、Presence 开关、限流阈值与连接池大小。
版本
tcb db pg realtime 系列命令自 v3.9.0 起提供。
语法
tcb db pg realtime set -e <envId> [options]
只修改显式指定的配置项,其余保持当前值。不传任何配置项时命令不做修改,也不会报错。
参数
| 参数 | 必填 | 说明 | 默认值 |
|---|---|---|---|
--suspend | 否 | 挂起服务:断开全部连接并拒绝新连接 | — |
--no-suspend | 否 | 恢复服务 | — |
--private-only | 否 | 仅允许私有频道 | — |
--no-private-only | 否 | 允许公开与私有频道 | — |
--presence | 否 | 启用 Presence | — |
--no-presence | 否 | 停用 Presence | — |
--max-concurrent-users <n> | 否 | 最大并发用户数,服务端上限 15000 | — |
--max-events-per-second <n> | 否 | 每秒最大事件数 | — |
--max-joins-per-second <n> | 否 | 每秒最大 Join 数 | — |
--max-bytes-per-second <n> | 否 | 每秒最大消息字节数 | — |
--max-channels-per-client <n> | 否 | 单客户端最大频道数 | — |
--max-presence-events-per-second <n> | 否 | 每秒最大 Presence 事件数 | — |
--max-payload-size-in-kb <n> | 否 | 单条消息最大负载,单位 KB | — |
--connection-pool <n> | 否 | 数据库连接池大小 | — |
--postgres-changes-pool <n> | 否 | Postgres Changes 连接池大小 | — |
-e, --env-id <envId> | 是 | 环境 ID | — |
--yes | 否 | 跳过确认。--json 模式与无法交互的环境(CI、管道)必须传 | — |
--json | 否 | 以 JSON 格式输出结果 | — |
开关类参数成对互斥,同时传 --suspend 与 --no-suspend、--private-only 与 --no-private-only、--presence 与 --no-presence 会直接报错。
数值类参数只接受十进制非负整数,具体上界由服务端校验。
示例
# 调整并发与限流阈值
tcb db pg realtime set -e <envId> --max-concurrent-users 500 --max-events-per-second 200 --yes
# 挂起服务(断开全部连接)
tcb db pg realtime set -e <envId> --suspend --yes
# 关闭 Presence 并限制单条消息负载
tcb db pg realtime set -e <envId> --no-presence --max-payload-size-in-kb 1024 --yes
# 仅允许私有频道
tcb db pg realtime set -e <envId> --private-only --yes
注意事项
- 交互环境下执行前会弹出确认,提示本次修改的配置项数量;已有连接可能断开
Suspend的变化(挂起或恢复)都会断开所有已有 WebSocket 连接,客户端需重连--json模式下必须配合--yes;无法交互确认的环境(CI、管道)同样必须传--yes,否则命令直接报错,避免看似成功但未执行- 数值参数会做整数校验,小数、负数与带单位的写法(如
1KB)都会被拒绝 - 修改前建议先执行
get确认当前值