面向对象
构造器参数太多怎么办?
1 不需要实例化的类应该构造器私有
2 不要创建不必要的对象
3 避免使用终结方法
4 使类和成员的可访问性最小化
5 使可变性最小化 ü 优先使用复合
6 接口优于抽象类
方法
1 可变参数要谨慎使用
2 返回零长度的数组或集合,不要返回null
3 优先使用标准的异常 n 通用程序设计
通用
1 用枚举代替int常量
2 将局部变量的作用域最小化
3 精确计算,避免使用float和double
4 当心字符串连接的性能
5控制方法的大小
关注并发数,吞吐量,响应时间,吞吐量和响应时间的关系
避免过早优化
进行系统性能测试
找到瓶颈再进行优化
1.浏览器/App
减少请求数;
使用客户端缓冲;
启用压缩
资源文件加载顺序
减少Cookie传输
2.CDN加速
3. 反向代理缓存
4. WEB组件分离
缓存 优先考虑缓存,缓存离用户越近越好
集群
异步 多线程,消息队列,servlet异步
程序 代码优化,并发编程,资源复用(池化技术,单例模式),JVM调优(jit相关技术:方法内联,逃逸分析)