当数据库服务器(postgres 9.3)花费很长时间返回查询数据时,我需要测试我的应用程序(用c#.net编写)行为。
我不想更改应用程序代码或查询或数据库架构。
有没有办法模拟加载数据库服务器并模拟返回数据的延迟?
答案 0 :(得分:1)
您可以使用具有大量客户端的pgbench
程序在服务器上施加较高的实际负载。这将创建新表,但它们可以进入不同的模式,甚至是数据库集群中的不同数据库。 (或者,如果您甚至无法将表添加到不同的数据库中,您甚至可以在同一台计算机服务器上的不同端口上运行单独的数据库实例,并加载该数据库实例。)
如果使用大比例因子初始化pgbench架构,因此数据不适合RAM,这将产生高IO负载。如果使用小比例因子,则会产生高CPU负载。