我使用TPC-C测试PG的性能时, PG有时会停止工作,但进程都活着,表页都能访问,没有找到死锁。
请问:这是什么原因呢?
测试的客户端应该没有问题,因为用它测试Mysql没问题。
谢!!!!!!!!
max_connections = 500
shared_buffers = 512MB
work_mem = 80MB
maintenance_work_mem = 512MB
work_mem = 80MB
maintenance_work_mem = 512MB
fsync = on
synchronous_commit = off
wal_sync_method = fsync
full_page_writes = off
checkpoint_segments = 256
checkpoint_timeout = 60min
autovacuum = off
=============
work_mem = 80MB ?? it is so large, Please set it to 1M
Please set effective_cache_size to 3/4 of your physical memory.
and shared_buffers to 1/5 of your physical memory
restart your PG, and test again.
================
Hi Shawn
simply to say, PostgreSQL is a REAL RDBMS, and have perfect design and qualify code and implementation, and also it's free;
there are lots of parameters needs to be set to get best performance; if you think it's really useful for you, Please put it to work for your business, and if possible, Please do a donate to help this project. the link is at http://www.postgresql.org/about/donate,
work_mem which is the memory allocated for each connection, since there are huge concurrent connect for your test. so it needs huge memory too, it is not acceptable set for the tests; you might read the manual for further details for this parameter.
I have sent you private message for my contact.
=============
work_mem 看文档是每个连接用来排序用的。设置的太小了,是否有问题?
这有一些关于pgsql调优的文章,简单,很好。
http://www.westnet.com/~gsmith/content/postgresql/