标签: multithreading operating-system
我的应用程序仅在Oracle DB上触发SELECT查询。我有多个架构,我有一个线程可以从每个架构中读取。每个线程都创建自己的连接以连接到DB。
当我进行三次测试时,我观察到性能最好是8-10个线程,然后在单个核心机器上降级。有谁知道是否有任何理由?
答案 0 :(得分:2)
对此没有通用规则或简单的数学方程式。通常最好的是每个核心一个线程,但这取决于。唯一的方法是测试您的应用程序。在您的情况下,在单个核心机器上有8-10个线程是不好的,线程将花费更多时间相互处理而不是实际工作。