Re: Concurrency testing
От | Dimitri Fontaine |
---|---|
Тема | Re: Concurrency testing |
Дата | |
Msg-id | 87d44yi916.fsf@hi-media-techno.com обсуждение исходный текст |
Ответ на | Re: Concurrency testing (Greg Smith <gsmith@gregsmith.com>) |
Ответы |
Re: Concurrency testing
(David Fetter <david@fetter.org>)
Re: Concurrency testing (Greg Smith <gsmith@gregsmith.com>) Re: Concurrency testing (Markus Wanner <markus@bluegap.ch>) |
Список | pgsql-hackers |
Greg Smith <gsmith@gregsmith.com> writes: > The stuff I've been building lately takes "how many sessions at once?" as an > input, and the useful range on that (particularly as we wander further > toward multi-core land) is much higher than you'd want to manage one at a > time manually. I'd rather see a "session simulator" program that picks > among several types of behaviors and executes them, and then you can throw > as many of those as you want into the mix. You can do something like that > with pgbench right now if you pass it multiple files, the tricky part is > figuring out what regression output you should expect. That tool exists and do support PostgreSQL. It's called Tsung and is Open Source: http://tsung.erlang-projects.org/ http://tsung.erlang-projects.org/user_manual.htmlhttp://archives.postgresql.org/pgsql-admin/2008-12/msg00032.php It can handle thousands of connections per node and as many nodes as you like, and already includes OS monitoring (adding to its own session / transaction monitoring, of course). It also support SNMP here. Oh, and thinktime too `randomize using a probability distribution (currently exponential)'. I even started a DBT2 implementation as tsung modules, back when returning from pgcon 2006: http://tapoueh.org/misc.html#sec7 darcs get http://pgsql.tapoueh.org/dbt2-tsung/ The thing that tsung isn't made for is tracking the results themselves to validate against regressions. This would have to be done by other means, maybe server side. So Tsung ain't a direct answer to OP [waves to david], or only if we want to add it the checking capability. I'll talk about it with tsung main author. But it answers a lot of the content of this thread, so I figured I'd better talk about it before it's being poorly rewritten in perl. Regards, -- dim PS: erlang is damn easy to learn. PPS: sorry guys, perl is not made for concurrent programming, it's not going to be easy reaching current tsung level (years of work with ad-hoc tools) using a general hobbyist programming language.
В списке pgsql-hackers по дате отправления: