2013-08-23 66 views

回答

3

只要配置類似,不應該有任何性能差異。他們都會連接連接,並根據需要返回預連接的實例。

您會在哪裏看到配置差異。通常JNDI數據源在測試死連接時更好,並關閉並重新創建它們。不過,在Grails中使用DataSource很容易,因爲您可以配置properties塊,以指定是定期測試連接,還是從池中檢索連接等等。較新版本的Grails配置了示例塊,因此很容易改變設置。

唯一的問題是池供應商在屬性名稱中幾乎沒有一致性。有時密碼設置爲password屬性,有時它的編號爲pass。對於諸如testOnBorrowtestWhileIdle等的設置也是如此。但是這對於JNDI池和Grails數據源都是一個問題。在這兩種情況下,您都需要知道如何配置您正在使用的池。

我的首選是在應用程序中進行配置,因爲我更喜歡自包含的WAR。您始終可以更改池提供程序以使用更強大的實現。請注意,較新版本的Grails使用Tomcat JDBC Pool(與您是否使用Tomcat作爲服務器無關),它們的基準測試表明它比其他大多數實現的性能更好。你可以隨時安裝jdbc-pool插件。