尧图网络科技YAOTU DIGITAL 获取报价
获取报价
首页 / 资讯中心 / 文章详情

convex-backend 自托管版本演进全解:从初版发布到 MySQL、S3 与 MCP 支持的迭代路线图

发布时间:2026/9/24 9:06:31

资讯中心
01
ARTICLE

convex-backend 自托管版本演进全解:从初版发布到 MySQL、S3 与 MCP 支持的迭代路线图

convex-backend 自托管版本演进全解:从初版发布到 MySQL、S3 与 MCP 支持的迭代路线图
数据库后端【免费下载链接】convex-backendThe open-source reactive database for app developers项目地址https://gitcode.com/gh_mirrors/co/convex-backend点击查看免费下载导读convex-backend是 Convex 开源响应式数据库的官方自托管实现本仓库的 self-hosted/CHANGELOG.md 记录了自托管后端与仪表盘从 2025 年 2 月首次发布至今的完整版本演进史。本文以该变更日志为骨架逐条解读每个里程碑版本引入的功能、修复的关键缺陷与运维注意事项并结合 docker-compose.yml、s3_storage.md、postgres_or_mysql.md 及 config.rs 等仓库源码帮助你快速掌握某个能力从哪个版本开始可用升级时需要注意哪些坑以及当前版本支持哪些环境变量为自托管部署选型与升级提供直接依据。版本发布机制与升级基线在逐条解读版本历史之前先理解这个仓库的发布与升级约定镜像与版本一致性convex-backend与convex-dashboard两个 Docker 镜像必须使用同一版本不同版本之间不保证兼容。镜像从 docker-compose.yml 中可以看到默认拉取ghcr.io/get-convex/convex-backend:latest与ghcr.io/get-convex/convex-dashboard:latest如需固定版本将镜像 tag 改为:${REV}即可锁定到特定 commit。升级说明升级操作详见 README.md 中的软件升级章节具体两种升级路径原地迁移与导出/导入在 upgrading.md 中有完整步骤。发布节奏变化CHANGELOG 在 2025-09-17 明确说明此后版本发布更频繁因此不再逐条维护该变更日志查看更详细的变更请使用git log。这意味着对于 2025-09-17 之后的版本本文件只提供基线参考精确的提交级变更应以仓库 git 历史为准。一、2025 年 2 月初版发布与稳定性修复期自托管能力在 2025 年 2 月密集落地这一阶段的核心主题是从能用走向稳定其中包括一次被明确警告不可用于生产的初版。1.1 初版发布2025-02-12commit4499dd4fd7f2148687a7774599c613d052950f46这是自托管后端与仪表盘的初始发布版本。CHANGELOG 用醒目的警告框提示⚠️警告不要在生产环境使用此版本该初版包含一个会填满磁盘空间的关键缺陷每次 node action 请求都会写入临时文件且从不清理请使用 commit6c974d219776b753cd23d26f4a296629ff7c2cad或更高版本。对刚接触自托管的用户这意味着不要直接拉取最早的镜像 tag 部署生产务必选择后续修复版本。1.2 修复临时文件泄漏2025-02-13commit6c974d219776b753cd23d26f4a296629ff7c2cad首个稳定性修复此前每一个 node action 请求都会写入临时文件且从未清理导致 Docker volume 磁盘空间被逐步占满。此版本修复了该问题也是官方建议的最低可用版本。1.3 本地 Postgres 支持2025-02-18commit62ef09aa604b0c5f873b59e0944b5e89f84b66b2支持使用DO_NOT_REQUIRE_SSL环境变量运行 Docker 镜像并连接本地 Postgres。从源码看该标志在 config.rs 中被定义为do_not_require_ssl设置后持久层在与数据库通信时不再强制要求 SSL但仍会优先使用 SSL官方注释说明它主要用于本地/测试场景。1.4 MySQL 支持与查询性能优化2025-02-19commit663640f5a01018914dc4314145f23a31f3afdca6这是自托管历史上一个重要的能力节点新增 MySQL 支持DATABASE_URL环境变量被拆分为POSTGRES_URL或MYSQL_URL两者按需二选一。查询性能优化优化了数据库查询使得运行在 Postgres 或 MySQL 上的简单 mutation 在跨数据中心/跨区域场景下提速约 4 倍。已知问题当时 MySQL 连接未校验证书官方承诺下一版本修复。1.5 MySQL 证书校验修复2025-02-19commit86ae5d34c8164075b66fa0c52beabd19212d8df7紧接上一版本修复了 MySQL 证书未校验的问题修复后本地运行时必须设置DO_NOT_REQUIRE_SSL否则连接会因证书校验失败而中断。这也印证了 postgres_or_mysql.md 中本地 MySQL 连接的标准写法mysql -e CREATE DATABASE convex_self_hosted; export MYSQL_URLmysql://your-usernamehost.docker.internal:3306 export DO_NOT_REQUIRE_SSL1 docker compose up二、2025 年 23 月S3 存储与 Node Actions 性能跃迁这一阶段把自托管的数据与代码资产从容器本地文件系统扩展到了对象存储并大幅提升了 Node Actions 的执行性能。2.1 S3 存储支持2025-02-26commit161e32648a971fb8ef591e61212f7b9fb7ff4f2c新增 S3 存储支持覆盖五类数据exports导出快照、snapshots快照导入、modules函数模块、files用户文件、search indexes搜索索引。配置方式见 s3_storage.md设置AWS_REGION、AWS_ACCESS_KEY_ID、AWS_SECRET_ACCESS_KEY再为五类数据分别指定 bucket 环境变量S3_STORAGE_EXPORTS_BUCKET、S3_STORAGE_SNAPSHOT_IMPORTS_BUCKET、S3_STORAGE_MODULES_BUCKET、S3_STORAGE_FILES_BUCKET、S3_STORAGE_SEARCH_BUCKET。默认情况下后端将文件数据存放在容器文件系统内Docker volumedata:/convex/data切换到 S3 存储后迁移存储提供方需要执行npx convex export导出、再在全新后端上npx convex import --replace-all导入。2.2 R2 兼容与 sourcemap 容错2025-03-06commitbe8a4f397810ce3d04dc3cb32bc81969fe64685a新增 R2 兼容通过设置S3_ENDPOINT_URL环境变量可以使用 Cloudflare R2 或其他兼容 AWS S3 API 的替代实现具体说明见 s3_storage.md。容错改进容忍缺失或畸形的 sourcemap例如来自ainpm 库的场景避免因此导致部署/执行失败。2.3 Node Actions 提速 50 倍2025-03-10commit5143fec81f146ca67495c12c6b7a15c5802c37e2Node Actions 性能跃迁消除了每次请求的冷启动开销整体提速约50 倍是自托管 Node 执行链路的关键优化。结合 docker-compose.yml 可以看到NODE_ACTION_USER_TIMEOUT_SECS、APPLICATION_MAX_CONCURRENT_NODE_ACTIONS等并发与超时控制项用于调控 Node Actions 的资源占用。三、2025 年 5 月MCP、外部包与部署配置的开放这一阶段把自托管的能力向开发者生态全面开放包括 MCP 支持、Node Actions 外部包、灵活的前端/后端地址配置以及 Postgres CA 证书。3.1 MCP 自托管支持2025-05-23commit478d197d54ee6e873f06cf9e9deae1eb4aa35bb5MCPModel Context Protocol可与自托管后端配合使用前提是安装的 npm 包convex版本≥ 1.24.1。该版本同时包含大量后端改进并针对旧部署尤其是存在 cron 任务的自托管实例修复了一个升级阻断问题——这正是下一条 2025-05-29 修复所针对的场景。3.2 Node Actions 外部包加速支持通过 external packages 机制加速向 Node Actions 推送代码将公共依赖标记为外部包避免每次推送都打包进 bundle是减少部署体积与推送耗时的直接手段。3.3 地址与域名配置下沉到 .env感谢 natac13自托管部署的地址配置从此可以写在与 docker-compose.yml 同级的.env文件中CONVEX_CLOUD_ORIGIN后端主服务对外地址默认http://127.0.0.1:${PORT:-3210}CONVEX_SITE_ORIGINHTTP actions 站点代理地址默认http://127.0.0.1:${SITE_PROXY_PORT:-3211}NEXT_PUBLIC_DEPLOYMENT_URL仪表盘dashboard 容器访问后端所用的地址默认http://127.0.0.1:${PORT:-3210}。从 config.rs 的实现看convex_origin与convex_site均允许为空以便后端在未知自身 URL 时也能启动但一旦设置必须以http://或https://开头否则启动报错。3.4 Postgres CA 证书支持感谢 tahvane1支持为 Postgres 连接配置 CA 证书文件适配使用私有 CA 签发的托管数据库。同版本还合并了 DevContainer 指南感谢 iamfj便于在容器化开发环境中一键拉起自托管环境。3.5 Cron 用户的升级阻断修复2025-05-29commitc1a7ac393888d743e704de56cf569a154b4526d4修复了已有 cron 任务的旧自托管部署无法升级到478d197d54ee6e873f06cf9e9deae1eb4aa35bb5的迁移阻断问题。对运维的启示如果你的实例使用过 cron 调度从更早版本跨版本升级时需要特别注意迁移日志详见 upgrading.md 中Executing Migration 114/115形式的日志行。四、2025 年 79 月集成生态与 S3 兼容性深化4.1 可观测性与数据集成2025-07-01commit6efab6f2b6c182b90255774d747328cfc7b80dd9新增集成支持自托管后端正式支持Axiom、Datadog、Sentry、Fivetran、Airbyte五类外部集成日志、错误监控与数据管道方向。Node Actions 并发修复修复了本地 node executor 下多个并发请求互相干扰的缺陷。性能优化后端整体缓存、内存占用与 CPU 占用均有改善。4.2 配置标志修复与 AWS 凭证多来源2025-09-03commit00bd92723422f3bff968230c94ccdeb8c1719832修复命令行 / 环境变量配置标志解析问题部分配置项此前无法通过 env 正确覆盖 CLI 参数本版本统一修复。AWS 凭证多来源支持感谢 HeathHopkins除静态AWS_ACCESS_KEY_ID/AWS_SECRET_ACCESS_KEY外还支持IAM 角色等标准 AWS 凭证链来源适配运行在 EC2/ECS/EKS 上的后端容器。禁用 S3 SSE 与校验和感谢 jovermier新增AWS_S3_DISABLE_SSE与AWS_S3_DISABLE_CHECKSUMS两个开关用于兼容部分对 SSE/校验和有特殊要求的 AWS 兼容服务。从源码 crates/aws_utils/src/lib.rs 可以看到这三个 S3 相关开关的读取逻辑它们均为LazyLockOptionbool形式的环境变量解析并在构建 S3 客户端时生效S3_ENDPOINT_URL用于自定义 endpointAWS_S3_FORCE_PATH_STYLE决定是否强制 path-style 寻址。上述开关均已透传到 docker-compose.yml 的 backend 环境变量列表中。4.3 索引回填进度与并行建索引2025-08-27commit08139ef318b1898dad7731910f49ba631631c902索引回填进度与 staged indexes支持索引回填进度的可视化与暂存索引机制便于大数据量下安全构建索引。全文搜索修复修复了全文搜索中部分过滤器被忽略的缺陷。并行构建数据库索引多个数据库索引可以并行构建缩短大规模数据集的索引就绪时间。4.4 仪表盘 Schema 校验与错误信息2025-09-12commit4d3b0a5de955a258e70e3813bbff486051d88820仪表盘 Schema Validation 进度在 dashboard 侧推进了数据表 schema 校验能力。错误信息改进与多项杂项优化整体提升自托管开发体验。五、当前版本配置全景环境变量与源码印证将 CHANGELOG 中的演进结果汇总到 docker-compose.yml当前自托管后端支持的环境变量分为几大类类别环境变量默认值 / 说明数据库POSTGRES_URL/MYSQL_URL二选一指定 Postgres 或 MySQL不设置则使用本地 SQLite数据库 SSLDO_NOT_REQUIRE_SSL本地连接 Postgres/MySQL 时跳过强制 SSL地址配置CONVEX_CLOUD_ORIGIN、CONVEX_SITE_ORIGIN、NEXT_PUBLIC_DEPLOYMENT_URL后端主地址、HTTP actions 地址、dashboard 回连地址S3 存储S3_ENDPOINT_URL、AWS_REGION、AWS_ACCESS_KEY_ID、AWS_SECRET_ACCESS_KEY、AWS_SESSION_TOKEN、S3_STORAGE_{EXPORTS,SNAPSHOT_IMPORTS,MODULES,FILES,SEARCH}_BUCKET五类数据的 bucket 配置S3 兼容开关AWS_S3_FORCE_PATH_STYLE、AWS_S3_DISABLE_SSE、AWS_S3_DISABLE_CHECKSUMSMinIO/DO Spaces/R2 等兼容服务并发与超时APPLICATION_MAX_CONCURRENT_MUTATIONS、APPLICATION_MAX_CONCURRENT_QUERIES、APPLICATION_MAX_CONCURRENT_V8_ACTIONS、APPLICATION_MAX_CONCURRENT_NODE_ACTIONS默认 16、V8_ACTION_USER_TIMEOUT_SECS、NODE_ACTION_USER_TIMEOUT_SECS各类函数执行的并发上限与超时运维INSTANCE_NAME、INSTANCE_SECRET、DISABLE_BEACON、DISABLE_METRICS_ENDPOINT默认 true、REDACT_LOGS_TO_CLIENT、DOCUMENT_RETENTION_DELAY默认 172800即 2 天、RUST_LOG默认 info、RUST_BACKTRACE实例标识、遥测与日志控制其中INSTANCE_NAME的意义在 postgres_or_mysql.md 有明确说明后端使用的数据库名等于实例名-替换为_未设置时 Docker 镜像默认实例名为convex-self-hosted对应数据库convex_self_hosted。DISABLE_BEACON对应的disable_beacon参数在 config.rs 中定义自托管后端会周期性向远程 beacon 服务器上报匿名信息以帮助产品改进设置后关闭该上报。REDACT_LOGS_TO_CLIENT对应redact_logs_to_clientconfig.rs生产环境建议开启以防止服务端堆栈信息泄露给客户端。六、升级实操两种路径与数据安全升级是自托管运维的高频动作upgrading.md 提供了两种方案且都强烈建议先执行npx convex export备份方案一原地升级零停机优先升级前执行npx convex export备份便于失败时回滚直接替换后端镜像并重启观察日志中的迁移行如Executing Migration 114/115. MigrationComplete(115)逐条确认迁移完成。每个迁移都会指示等待哪条日志行以判定完成极少数情况下原地迁移不顺畅可退回方案二。方案二导出 / 导入停机换取确定性切断后端外部流量npx convex export导出数据库npx convex env list或经 dashboard保存环境变量升级后端 Docker 镜像npx convex import --replace-all导入备份npx convex env set恢复环境变量恢复外部流量。方案二的开销与数据量成正比导出/导入是快照时刻的拷贝必须在停止负载后再做最终导出否则会丢失停机窗口内的写入。对于大数据量实例可在停机前先做一次试导出评估耗时。结合 CHANGELOG 的历史教训跨版本升级还应特别注意两点cron 用户从旧版本升级时确认迁移日志正常推进对应 2025-05-29 修复避免使用初版镜像4499dd4其临时文件泄漏缺陷会直接打满磁盘。七、结语与查阅建议从 2025-02-12 初版到 2025-09-17 切换为高频发布自托管 Convex 在半年内完成了数据库后端抽象SQLite/Postgres/MySQL、对象存储接入AWS S3/R2/MinIO/DO Spaces、Node Actions 性能跃迁50 倍提速、开发者生态MCP、外部包、集成等关键能力建设。对于 2025-09-17 之后的版本CHANGELOG 明确不再逐条更新精确的提交级变更以git log为准而镜像版本选择与升级操作则始终遵循 README.md 与 upgrading.md 的指引并保持 backend 与 dashboard 镜像版本一致。赞分享数据库后端【免费下载链接】convex-backendThe open-source reactive database for app developers项目地址https://gitcode.com/gh_mirrors/co/convex-backend点击查看免费下载相关推荐YARP 版本路线图与支持策略全解从发布周期到自建发行版YARP 版本路线图与支持策略全解从发布周期到自建发行版 本文是 YARPYet Another Reverse Proxy README.md http后端API网关网络Escrcpy 版本演进全解析从 v1.0 到 v3.0 的 scrcpy 图形化工具迭代路线图Escrcpy 版本演进全解析从 v1.0 到 v3.0 的 scrcpy 图形化工具迭代路线图 本文以 CHANGELOG.md https://link.桌面应用移动开发Ruffle Flash 模拟器实测老 SWF 文件不用重写不装插件也能跑Ruffle Flash 模拟器实测老 SWF 文件不用重写不装插件也能跑 点进一个老网页浏览器只留下一句『该内容需要 Flash』页面中央是个灰色方框音视频创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
02
RELATED NEWS

相关资讯

更多网站建设与数字化升级内容

03
WHY YAOTU

想打造同款高转化官网?

懂行业、懂生意,从建站到增长一站式陪跑

场景化定制

不做模板站,围绕你的业务场景量身设计,小众不撞款。

营销型架构

以转化目标组织内容与路径,让官网真正带来询盘。

全周期服务

设计、开发、运营、运维一体,上线只是开始。

免费获取你的建站方案

留下需求,专属顾问 24 小时内为你输出方案建议。