建设个人网站赚钱最好的互联网公司

张小明 2026/1/8 20:01:09
建设个人网站赚钱,最好的互联网公司,天元建设集团有限公司六大板块,wordpress 扫描PostgreSQL 以固定大小的数据块#xff08;Page#xff09;存储数据#xff0c;默认大小为 8 KB。当客户端执行更新或插入操作时#xff0c;PostgreSQL 并不会立即将变更写入磁盘#xff0c;而是先将相关数据页加载到共享内存#xff08;Shared Buffers#xff09;中Page存储数据默认大小为 8 KB。当客户端执行更新或插入操作时PostgreSQL 并不会立即将变更写入磁盘而是先将相关数据页加载到共享内存Shared Buffers中在内存中完成修改并将该页面标记为“脏页”。所谓“脏页”是指内存中的页面版本已经新于磁盘上的对应版本。在向客户端返回操作结果之前PostgreSQL 会先将变更记录写入预写日志Write-Ahead LogWAL以保证即使数据库发生崩溃也能恢复数据一致性。但实际的数据文件并不会立刻更新只有在检查点Checkpoint触发或后台写进程执行刷新时脏页才会被写回磁盘。在此之前脏页会持续累积在内存中直到通过以下三种机制之一被刷新后台写进程Background WriterBGWriter一个常驻后台进程在可用的干净缓冲区数量下降时持续将脏页写入磁盘。检查点进程Checkpointer在触发检查点时如达到checkpoint_timeout或 WAL 超过max_wal_size将所有脏页刷新到磁盘。后端进程Backend在紧急情况下如共享缓冲区几乎全部为脏页普通后端进程会自行写脏页可能导致用户查询阻塞。理解并合理控制脏页的刷新时机与方式是优化 PostgreSQL 性能的关键。脏页为何影响性能脏页会从多个方面影响数据库性能1. 检查点期间的 I/O 峰值检查点发生时所有脏页都必须被刷新到磁盘。如果脏页数量较多会在短时间内产生大量磁盘 I/O影响其他查询性能。checkpoint_timeout、checkpoint_completion_target和max_wal_size等参数决定了检查点触发的频率以及刷新脏页的节奏。2. 后端写入带来的查询阻塞当共享缓冲区被大量脏页占满而 BGWriter 无法及时清理时后端进程将被迫自行写盘直接阻塞正在执行的用户查询。为避免此类情况应通过合理的内存与刷新参数配置让 BGWriter 承担绝大多数写入工作。实践中通常包括为shared_buffers分配足够内存调整bgwriter_delay、bgwriter_lru_maxpages、bgwriter_lru_multiplier、bgwriter_flush_after等参数使脏页持续、平稳地写入磁盘通过增大checkpoint_timeout、提高checkpoint_completion_target以及增大max_wal_size减少检查点引发的突发写入。3. 吞吐量与崩溃恢复时间的权衡较少的刷新频率如较大的checkpoint_timeout可以降低 I/O 开销但会增加数据库崩溃后需要回放的 WAL 数量更频繁的刷新可以加快恢复速度但可能降低运行时性能。合理的参数配置需要根据实际业务负载在两者之间取得平衡。PostgreSQL 管理脏页的核心机制后台写进程Background WriterBGWriterBGWriter 是一个独立进程其目标是在后台持续写出脏页保持一定数量的干净缓冲区可用。根据官方文档描述当共享缓冲区中可用的干净页面数量低于阈值时BGWriter 会写出部分脏页并将其标记为干净。若同一页面在一个检查点周期内被多次修改可能会被多次写盘从而增加总体 I/O。BGWriter 的主要配置参数位于postgresql.conf包括调优建议如果在pg_stat_bgwriter中观察到后端进程写盘较多应适当提高bgwriter_lru_maxpages和bgwriter_lru_multiplier若 BGWriter 本身导致 I/O 过高则可适当降低相关参数。通过调整bgwriter_delay在写入频率与 CPU 开销之间取得平衡。检查点Checkpointer检查点触发时PostgreSQL 会将所有脏页写入磁盘并在 WAL 中记录检查点位置。合理调整检查点参数有助于平滑 I/O 压力通过增大checkpoint_timeout和checkpoint_completion_target可以将写入分散到更长时间窗口内max_wal_size决定了自动检查点的触发时机从而间接影响脏页刷新频率。共享缓冲区Shared Buffersshared_buffers决定了 PostgreSQL 可用于缓存数据页和存放脏页的内存大小。该参数直接影响页面在内存中的停留时间以及写盘频率。在专用数据库服务器上通常建议将其设置为物理内存的 25% 40%。当shared_buffers较大时往往需要相应提高max_wal_size以避免检查点过于频繁。shared_buffers 过小会导致脏页频繁被淘汰引发后端写盘设置过大则可能在检查点时一次性刷新大量页面造成 I/O 峰值。合理的 shared_buffers 配合 BGWriter 调优可以显著减少后端写入。自动清理Autovacuum 与 冻结清理Vacuum Freeze自动清理Autovacuum在更新可见性信息或冻结元组Freeze时也会产生脏页。应确保 Autovacuum 运行频率足以防止表膨胀但又不过于激进以免产生不必要的写入。可根据业务负载调整autovacuum_vacuum_cost_limit和autovacuum_vacuum_scale_factor。在 SSD 环境下适当提高 Autovacuum 强度通常是有益的。面向性能的调优实践1. 先监控再调优通过pg_stat_bgwriter重点关注以下指标buffers_checkpoint检查点写出的脏页数量。buffers_cleanBGWriter 写出的页面数量。buffers_backend后端进程写出的页面数量。目标是将buffers_backend控制在接近 0 的水平。2. 合理配置共享缓冲区大小以物理内存的 25% 作为起点根据负载特征调整若业务场景以读操作为主可适当增大共享缓冲区。若写操作导致检查点产生大幅性能波动则需调小共享缓冲区。3. 调整 BGWriter 参数降低bgwriter_delay参数值如设置为 100 毫秒提高后台写入器的唤醒频率。针对高写入负载场景增大bgwriter_lru_maxpages建议取值范围 200–1000与bgwriter_lru_multiplier建议取值范围 3–4参数提升单次周期内的脏页处理能力。将bgwriter_flush_after参数设为与存储系统最佳写入粒度匹配的值对于固态硬盘512KB–1MB 为推荐取值区间。4. 优化检查点行为增大checkpoint_timeout参数降低检查点触发频率建议取值范围 15–60 分钟。将checkpoint_completion_target参数提升至 0.7–0.9使检查点的写入操作均匀分布。增大 max_wal_size 参数避免检查点被过度频繁触发。5. 避免后端写入当buffers_backend持续增长时应优先增加 shared_buffers 或增强 BGWriter 的写盘能力。后端写盘往往是查询延迟的主要来源。6. 操作系统层面优化Linux 系统中应避免vm.dirty_background_ratio和vm.dirty_ratio设置过高以免内核长时间累积脏页造成突发写回。关闭透明大页THP并在内存充足的服务器上启用静态大页Huge Pages以提升整体性能。7. 持续评估与迭代不同业务负载差异较大应结合pg_stat_activity、pg_stat_bgwriter以及 PostgreSQL 17 引入的pg_stat_io等视图持续评估调优效果并逐步调整参数。总结“脏页”本质上是 PostgreSQL 内存中等待写回磁盘的已修改数据页。通过脏页机制PostgreSQL 能够合并写入操作并借助 WAL 保证崩溃安全性。但如果相关参数配置不当脏页处理可能引发 I/O 峰值和查询延迟。深入理解共享缓冲区、后台写进程、检查点与 WAL 的协同机制并合理调优bgwriter_delay、bgwriter_lru_maxpages、bgwriter_lru_multiplier、checkpoint_timeout、shared_buffers等关键参数有助于在保障数据可靠性的同时实现平稳、可预测的数据库性能。原文链接https://stormatics.tech/blogs/what-are-dirty-pages-in-postgresql作者Umair Shahid
版权声明:本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!

广告商网站建设做毕设的网站万

YOLOv8训练过程中如何保存最佳模型?best.pt生成机制 在深度学习目标检测的实际项目中,一个看似简单却至关重要的问题常常困扰开发者:训练了100个epoch,到底该用哪个checkpoint进行部署? 是最后一个?还是手动…

张小明 2026/1/7 5:38:25 网站建设

黄南州wap网站建设公司外网搭建

虚拟环境搭建与操作系统安装指南 在当今的技术领域,虚拟环境的搭建和操作系统的安装是非常重要的技能。本文将详细介绍在 VirtualBox 和 VMware 中进行相关操作的步骤,帮助你轻松完成虚拟环境的配置和操作系统的安装。 一、在 VirtualBox 中安装 Fedora 13 操作系统 创建用…

张小明 2026/1/7 5:37:51 网站建设

东丰在线网站建设鲜花销售管理系统

Expo 项目性能监控实战:从埋点到优化的全链路实践你有没有遇到过这样的场景?App 发布后,用户反馈“打开慢”、“滑动卡顿”,但本地测试一切正常。日志里没有报错,崩溃率也低得可怜——可体验就是不行。问题出在哪&…

张小明 2026/1/7 5:36:35 网站建设

做一个宣传网站要多少钱便宜网站建设公司哪家好

在Windows应用开发过程中,性能瓶颈往往成为困扰开发者的"隐形障碍"。当应用程序响应迟缓、CPU占用率异常飙升时,传统调试手段往往力不从心。这就是为什么专业的Windows性能分析工具变得至关重要,而Very Sleepy作为一款优秀的抽样CP…

张小明 2026/1/7 5:35:20 网站建设

自己接私单网站开发wordpress 4.7 主题

魔兽争霸III性能优化完全指南:让经典游戏在新电脑上焕发新生 【免费下载链接】WarcraftHelper Warcraft III Helper , support 1.20e, 1.24e, 1.26a, 1.27a, 1.27b 项目地址: https://gitcode.com/gh_mirrors/wa/WarcraftHelper 还在为魔兽争霸III的卡顿问题…

张小明 2026/1/7 5:34:12 网站建设

网站开发什么方式wordpress gstatic

YOLO 镜像支持 WebAssembly 前端推理尝试 在智能摄像头、自动驾驶和工业质检等场景中,目标检测早已不是实验室里的概念。但你有没有想过,一个能识别猫狗、车辆甚至人体姿态的 AI 模型,可以直接运行在你的浏览器里,不依赖任何服务…

张小明 2026/1/7 5:33:38 网站建设