我的应用程序只触发Oracle DB上的SELECT查询。我有多个模式,我有一个线程可以从每个模式读取。每个线程创建自己的连接来连接到数据库。应用程序中的最佳线程数应该是多少?
当我运行三个测试时,我观察到性能最适合8-10个线程,然后在单核机器上降级。有谁知道是否有任何理由?
我的应用程序只触发Oracle DB上的SELECT查询。我有多个模式,我有一个线程可以从每个模式读取。每个线程创建自己的连接来连接到数据库。应用程序中的最佳线程数应该是多少?
当我运行三个测试时,我观察到性能最适合8-10个线程,然后在单核机器上降级。有谁知道是否有任何理由?
对此没有一般规则或简单的数学公式。通常最好的是每个核心有一个线程,但这取决于。要告诉的唯一方法就是测试你的应用程序。在你的情况下,在一台核心机器上有8-10个线程是不好的,这些线程将花更多的时间来处理彼此,而不是做实际的工作。
你有多少个磁盘后端数据库方案? – 2013-04-25 07:55:49
只有一个磁盘在后端 – Jack 2013-04-25 09:29:58