1、优化设计
小心使用继承,继承会导致递归,同时由于父类的构造器将会被遍历,继承嵌套的过深,会产生很大的创建开销,因此推荐尽量使用组合方法来代替继承方式。
封装和重用常用的业务方法及相关工具,避免在其他类中重复编写;
简化类结构
面向接口编程
尽量使用主要类型
避免对象的过度使用,不要为了使用一个方法就创建对象,应尽可能使用静态方法或使用将业务组件实例化后共享的方法等
2、尽可能的使用数据库连接池
建立数据库连接是耗时的工作,如果频繁建立与数据库的连接将会导致系统性能的急剧下降,因此在实际开发系统的时候,经常使用数据库连接池可以提高系统性能,具体来说,就是应用服务器维护着数据库连接池,这样就不需要在每个事务处理开始就创建一个数据库连接了,此外,由于PreparedStatement 有缓存功能,会有更高的效率,因此JDBC 的方式访问数据库时,尽可能的使用它。
3、给Web容器配置合理的线程数量来处理客户端的HTTP请求,一般而言,最小的数量设置为容器处理请求的平均数,最大值设置为系统在高峰期处理的请求数,同时web容器中线程的个数最好不要多于web服务器中线程的个数。
4、根据实际情况设置ava虚拟机中的堆空间的大小,
合理的设置能使垃圾回收器运行的时间间隔被控制在一个合理的范围内,从而减少许多不必要的系统开销,
5、使用框架(如hibernate)来提高系统的效率
6、把一些经常使用的servlet和jsp等缓存起来,能减少响应时间和提高系统的性能,缓存并非越多越好,无规则的使用缓存也可能会导致系统的崩溃。
7、优化IO性能
IO使用不当会造成资源竞争,降低系统性能,所以,应该尽可能的减少适用system.out打印调试信息,推荐使用缓冲
8、优化查询
在模型设计时应该考虑冗余相对不会变化的数据,如果数据量大,可以考虑分区设计
9、对session进行合理的管理和配置,根据实际情况对内存中可能存在的session个数配置一个合理的值。
尽量减少session的大小,以降低对内存的使用
尽量不要启用对session的持久化
对session设置一个合理的超时时间来回收较长时间不适用的session,也可以有效的提高系统的性能。