PostgreSQL正在考虑将基于进程的模型迁移到线程模型
💡
原文中文,约1400字,阅读约需4分钟。
📝
内容提要
PostgreSQL的扩展性受限于基于进程的模型,开发人员考虑迁移到线程模型以提升共享状态和降低成本,但面临全局变量处理和性能损失的挑战。讨论结果显示大多数开发人员认为这种变化是好的,但目前没有人愿意投入时间来推动这一努力,因此在可预见的未来内不会转向线程模型。
🎯
关键要点
-
PostgreSQL的扩展性受限于基于进程的模型,资源消耗较大。
-
PostgreSQL历史悠久,根本性架构更改困难。
-
开发人员考虑将PostgreSQL迁移到线程模型以提升共享状态和降低成本。
-
迁移到线程模型面临全局变量处理和性能损失的挑战。
-
全局变量在进程模型中有效,但在线程模型中会失效,PostgreSQL使用约2000个全局变量。
-
将全局变量整合到会话状态结构中难度大,不太可能实施。
-
将全局变量放入线程本地存储简单有效,但可能导致性能损失。
-
大多数开发人员认为迁移到线程模型是好的,但缺乏推动这一努力的意愿。
-
在可预见的未来,PostgreSQL不会转向线程模型。
➡️