【IT168 技术文章】
主要考虑的Servlet版运行方式有:
一:Servlet在Web容器中的运行机制
1. 单独一个无状态的Servlet实例运行
即Web容器里的多个线程调用一个Servlet实例的运行方式
2. 多个Servlet实例
在Web容器中有多个Servlet实例的对象池,并有多个Web容器线程来分别调用执行
二:Servlet 连接数据库的方式
1. 一对一
即可每个Servlet实例都有直接的数据库连接。
具体方式有:
1> 在Servlet实例的每个处理方法中每次都调用数据库连接,然后用此连接进行数据库的查询等操作,最后关闭并释放此连接。
2> 在Servlet实例的初始化操作时就连接一个“长”的数据库连接,直到Servlet实例在destroy时关闭并释放此数据库连接。
因为现在的数据库操作主要是查询,没有对数据库的增加、修改等操作,多用户业务查询、Web容器多线程同时对一个Servlet的同一个数据库连接进行操作应该会没有数据操作同步等问题。
2. 使用Web容器的数据源
这里主要是使用Web容器的数据源-数据库连接池。
在理论上这种方式能提供非常好的的性能。这是也是测试各种Web容器产品在数据库连接池上实现的性能情况。
这里主要看Web容器的在各种应用情况下的最优化配置。
Servlet与数据源连接的实现方式:
Servlet直接从Web容器配置中取得数据源及其连接对象,然后通过此连接对象来操作数据库。对于数据库连接对象的管理由Web容器来管理。
三:要考虑的问题:
1. 大数据量传输问题
大数据量通过Servlet实例从数据库中取得并整理后,如何有效的传输到客户端IE,并且Servlet实例如何有效在Web容器中处理这些大数据量。
2. 对各种JDBC版本的测试
即不同的数据库使用其自己专用的JDBC来连接,在性能上应该要好一些。
这里也可比较Weblogic Server中实现JDBC与各种数据库(MSSQL、Oracle)专用的差别,从测试的结果看出Weblogic Server的技术实例以及是否真正做到了数据库连接等处理的优化了吗。
3. Weblogic Server的优化配置
3.1 对象池配置
包括应用逻辑处理对象的对象池化以及使用数据源时的数据库连接对象池在各种具体应用环境下的优化配置。
3.2 线程池配置
以上两个方面涉及到对象池化和串行化处理的策略。
3.3 Weblogic Server 的配置的各种参数的相应情况下的配置
1> JAVA VM (JAVA 虚拟机)参数在各种应用情况下的配置。
2> Weblogic Server 本身的各种参数配置。