2011-02-22 70 views
0

jk_connector worker基本上是一個等待處理來自Web服務器的請求的tomcat實例。爲什麼有多個tomcat工作者?

apache文檔告訴你,如果你有多個應用程序,你應該有多個工人,但並不真正解釋爲什麼。

對於多個應用程序,每個Web應用程序有1個工作人員還是1個工作人員有什麼優點/缺點?

回答

1

一個處理器親和力。如果工作集綁定到一個執行單元,則其內置高速緩存將得到更有效的利用。分享空間的應用程序越多,競爭越激烈。

今天的大多數系統都基於多個CPU核心,其中線程可以在每個核心上獨立執行。這意味着如果有多線程(例如,1個線程/ cpu),對於多核(SMP)和多線程(SMT)系統,繁忙的服務器可以更好地利用系統資源。服務器的一種常見方式是提供一個可以使用和重用的工作進程/線程池,以便同時處理多個請求。

+0

但這似乎暗示着這個系統會使用更多的資源嗎? – mkoryak 2011-02-22 22:06:54

+0

是的,它會利用更多的_hardware_組件來更有效地執行處理,這是我們通常所期望的效果。如果只有一個線程,會在繁忙系統上發生大量[上下文切換](http://en.wikipedia.org/wiki/Context_switch),從而降低性能。 – 2011-02-22 22:26:28

相關問題