我有一个在8 GB RAM上运行的Ubuntu盒子。规格是 Jave:java版本1.6.0_34 Glassfish版本= GlassFish Server开源版3.1.2.2(版本5) 最大堆大小为1024。
JDBC设置都设置为默认值
初始和最小池大小:8个连接
最大池大小:32个连接
池调整大小数量:2个连接
空闲超时:300
秒最长等待时间:60000毫秒
我期待高峰 1000 并发用户提交表单。在低端至少有300个并发用户。 我的典型数据库操作使用PreparedStatement和Resultset,它们在Finally块中与Connection一起关闭。该项目使用JSP,Servlet和Pojo。我还没有进入EJB和JPA。
问题1:JDBC连接 初始和最小池大小:300个连接 最大池大小:1000个连接 池调整大小数量:? 空闲超时:300秒(保持默认值?) 最长等待时间:60000毫秒(保持默认值?)
问题2:代码是否应该手动提交?这会改善性能吗?
问题3:由于数据库服务器SQL 2012是共享的,因此有两个项目共享同一个JDBC连接池。我应该把它分开来改进,因为我知道每个人都会运行自己的线程吗?
问题4:如何计算堆的大小?这是一个好习惯吗? -server -XX:+ AggressiveHeap -Xmx3500m -Xms3500m -Xss? -XX:+ DisableExplicitGC
很抱歉让它很长。
我只想了解如何扩展服务器?
答案 0 :(得分:0)
我对Glassfish服务器所做的更改。