Java 冬眠“;连接。池“U大小”;使用数据源时的属性

Java 冬眠“;连接。池“U大小”;使用数据源时的属性,java,hibernate,websphere,Java,Hibernate,Websphere,我在部署在Websphere application server上的Portlet应用程序中使用hibernate 4.0.1,我指的是从hibernate配置在应用程序服务器上配置的数据源,我的问题是我应该使用“connection.pool_size”属性还是“c3p0”来设置连接池大小还是否,因为服务器上的数据源已具有10的连接池大小 换言之,对于连接池,Hibernate配置或数据源配置哪个优先,哪个更好 提前感谢。数据源对传入连接进行限制。 如果您将CP用于例如20个连接,则最多可从

我在部署在Websphere application server上的Portlet应用程序中使用hibernate 4.0.1,我指的是从hibernate配置在应用程序服务器上配置的数据源,我的问题是我应该使用“connection.pool_size”属性还是“c3p0”来设置连接池大小还是否,因为服务器上的数据源已具有10的连接池大小

换言之,对于连接池,Hibernate配置或数据源配置哪个优先,哪个更好


提前感谢。

数据源对传入连接进行限制。 如果您将CP用于例如20个连接,则最多可从20个连接中获得10个连接。
因此,您的数据源池大小应为20或更多。

数据源对传入连接进行限制。 如果您将CP用于例如20个连接,则最多可从20个连接中获得10个连接。
因此,您的数据源池大小应为20或更大。

当使用在WebSphere Application Server中配置的数据源时,您可以通过JNDI名称直接访问该数据源,也可以通过向Hibernate配置提供JNDI名称来访问该数据源,默认情况下,应用服务器将连接池化。除了连接池,您还可以获得事务登记、连接共享、语句缓存和其他附加值。应用程序服务器未检测到备用连接池的存在并禁用其自己的连接池。关于你关于优先权的问题,两人都不优先。如果数据源或其他实现提供了自己的连接池,那么最终将在两个层上进行池,这可能是不可取的。如果需要或更愿意,可以手动禁用应用程序服务器的连接池和语句缓存,同时保留应用程序服务器提供的其他功能(事务登记等)通过将连接池的过期超时设置为立即,将数据源的statementCacheSize设置为0。这将允许您尝试实现,并自行判断在特定场景中哪个性能更好。

当使用WebSphere Application Server中配置的数据源时,您可以直接或通过向Hibernate配置提供JNDI名称来访问该数据源,默认情况下,应用服务器将连接池化。除了连接池,您还可以获得事务登记、连接共享、语句缓存和其他附加值。应用程序服务器未检测到备用连接池的存在并禁用其自己的连接池。关于你关于优先权的问题,两人都不优先。如果数据源或其他实现提供了自己的连接池,那么最终将在两个层上进行池,这可能是不可取的。如果需要或更愿意,可以手动禁用应用程序服务器的连接池和语句缓存,同时保留应用程序服务器提供的其他功能(事务登记等)通过将连接池的过期超时设置为立即,将数据源的statementCacheSize设置为0。这将允许您尝试其中一种实现,并自行判断在您的特定场景中哪个性能更好。

谢谢您的回答,所以您的意思是我只能依靠Datasource进行连接池,只需增加其池大小。不,听着,如果您想使用hibernate dbcp,它非常简单,不推荐用于生产。至于c3p0,它是一个扩展生产dbcp。你应该用一个。我错误地认为您正在谈论的是数据源连接大小:)很抱歉,没问题,非常感谢,所以您看到我必须使用c3p0,因为我看到一些应用程序没有使用c3p0或connection.pool\u大小,并且只依赖于数据源,我需要知道避免生产中出现任何连接问题的最佳做法。您不仅可以使用c3p0,还可以使用多个dbcp为您管理连接(例如:apache dbcp/hikaricp等)。你们可以在互联网上找到他们的对比。至于早期版本中的c3p0,它甚至可能陷入死锁,听说它已修复。但是无论如何,任何生产dbcp都比hibernate内置的要好。谢谢你的回答,所以你的意思是我只能依靠Datasource进行连接池,只需增加其池大小。不,听着,如果你想使用hibernate dbcp,它非常简单,不推荐用于生产。至于c3p0,它是一个扩展生产dbcp。你应该用一个。我错误地认为您正在谈论的是数据源连接大小:)很抱歉,没问题,非常感谢,所以您看到我必须使用c3p0,因为我看到一些应用程序没有使用c3p0或connection.pool\u大小,并且只依赖于数据源,我需要知道避免生产中出现任何连接问题的最佳做法。您不仅可以使用c3p0,还可以使用多个dbcp为您管理连接(例如:apache dbcp/hikaricp等)。你们可以在互联网上找到他们的对比。至于早期版本中的c3p0,它甚至可能陷入死锁,听说它已修复。但无论如何,任何生产dbcp都比hibernate内置的要好。非常感谢您的回复,因此我可以从您的回答中得知,依赖于App server上数据源的连接池是一种很好的做法,无需定义其他替代连接池感谢您的回复,因此,我可以从您的回答中了解到,依赖于App server上数据源的连接池是一种很好的做法,无需定义其他替代连接池