系统层面优化
ulimit -n调整文件描述符限制(如设置为65535),避免连接数过多导致资源耗尽;优化网络参数,如调整net.core.somaxconn(建议设为1024以上)提升网络连接队列长度,启用TCP连接复用(net.ipv4.tcp_tw_reuse=1),降低连接建立开销;禁用不必要的系统服务(如蓝牙、打印服务等),减少后台进程对CPU和内存的占用。PostgreSQL数据库配置优化
shared_buffers设置为物理内存的25%-40%(如64GB内存设为16GB),用于缓存数据和索引,减少磁盘I/O;work_mem按max_connections*2估算(如max_connections=100,则设为200MB),用于排序、哈希等操作,避免临时文件写入磁盘;maintenance_work_mem设置为2GB(适用于32GB内存服务器),提升VACUUM、索引创建等维护任务的效率;effective_io_concurrency针对NVMe SSD设为200,提高并行I/O性能。max_parallel_workers_per_gather(如16核服务器设为8),启用并行查询,加速复杂查询执行;wal_buffers设置为shared_buffers的1/32(如16GB shared_buffers设为512MB),优化WAL(预写日志)缓冲区性能。VACUUM清理表中的“死元组”(deleted/updated记录的残留数据),释放存储空间;ANALYZE更新表和索引的统计信息,帮助查询优化器生成更优的执行计划;对大表(如千万行以上)按时间或范围分区(如PARTITION BY RANGE (sale_date)),减少单次查询扫描的数据量。pgAdmin自身配置优化
Pool Size(如10-20)、Min Connections(如2-5)、Max Connections(如50-100)和Timeout(如30秒),降低连接建立和关闭的开销;禁用不常用的pgAdmin插件(如日志分析、第三方扩展),减少内存占用;限制同时打开的连接数(如不超过10个),避免资源过度消耗。~/.pgadmin/cache),提升界面响应速度。网络与监控优化
其他优化建议