我的程序是要测试看看在5分钟内可以做多少遍某个task,该task涉及到更新数据库。
一个进程,做5分钟,可以大概做211遍;
如果这个进程开两个线程,那么各自可以做145遍;
如果是开两个进程,那个各自也是210遍。
(服务器是同样的机器,但是不同进、线程访问不同的数据库)我看过,服务器端肯定不是瓶颈,程序中也没有锁,CPU,内存占用也比较小,想请问大家,还有什么原因会导致这种ThroughPut掉得如此之快?谢谢大家!
一个进程,做5分钟,可以大概做211遍;
如果这个进程开两个线程,那么各自可以做145遍;
如果是开两个进程,那个各自也是210遍。
(服务器是同样的机器,但是不同进、线程访问不同的数据库)我看过,服务器端肯定不是瓶颈,程序中也没有锁,CPU,内存占用也比较小,想请问大家,还有什么原因会导致这种ThroughPut掉得如此之快?谢谢大家!
需要的话,我想可能是你的本地CPU是多核导致的,如果在多线程中分别设置线程的Affinity CPU,可能就会快点了。