> -----Mensaje original----- > De: BeMoN!o > > Me gustaría obtener ayuda y documentación sobre la > configuración "Tunning" del Postgresql para la versión 8.1. > ya que he jugado con algunos de los valores y ha mejorado su > desempeño, pero aun considero que por falta de conocimientos > no es lo óptimo (si la documentación es en español mejor). > > características: > Linux - Debian kernel 2.6.18. > 2 procesadores Dual Core 3.4, 4GB, 1.5Gb de Swap. > > max_connections = 200 > shared_buffers = 131072 #representa el 25% de la RAM > work_mem = 167772 #representa 4% RAM >
Pareciera tenés un error en la interpretación de shared buffers. El valor asignado no se corresponde con el porcentaje de memoria que aduces. Dado que el servidor es dedicado, shared_buffers puedes incrementarlo tranquilamente a 1GB (1048576). Revisa work_mem porque lo tienes en 167 MB. No es que esté mal, pero es un valor atípicamente alto y si tienes muchas conexiones paralelas es probable te esté consumiendo toda la memoria (fácil de corroborar con vmstat). Dependiendo del tipo de consultas que se ejecuten y la cantidad de conexiones simultáneas sugeriría jueges con valores más razonables para work-mem, entre 1024 y 16384 (KB). Ten presente que reducir work_mem puede hacer más lentas consultas que requieran varios sorts, hashs o merge joins con muchos registros. Las recomendaciones en líneas generales suelen ser las siguientes: 1. Identifica los cuellos de botella antes de actuar (Monitorear el sistema c/ vmstat, queries lentos con log_min_duration_statement) 2. Asegura que autovacuum este corriendo o vacuum croneado regularmente. 3. Haz un tunning de los queries más problemáticos 4. Habilita un pool de conexiones (pgpool2, pgbouncer) 5. Planifica el upgrade a una versión más reciente. 8.4 está en puerta. Las nuevas versiones dan un salto importante en performance sobre 8.1. 6. Mejora el hardware. Los principales items donde mirar son: - Agregar discos y migrar a RAID 10. - Agregar una controladora con BBU caché - Agregar más memoria. Saludos, Fernando. -- TIP 10: no uses HTML en tu pregunta, seguro que quien responda no podrá leerlo