web的优化就是一场阻止http请求最终访问到数据库的战争。
优化的方式就是加缓存
,在各个节点加缓存。前端
熟悉流程及节点,才能定位性能的问题。并且优化的顺序通常也是按请求的流程逐一优化。这里的流程只是作个概要,并不表明全面。nginx
整个流程是以最快的方式让用户看到结果
web
思路是:把看不见的http,具体化、可视化
。算法
定位是优化的前提。没有准确的定位就没法有效的解决问题。sql
例如:
数据库
定位结果浏览器
例如:
缓存
定位结果服务器
给每一个方式添加一个aop,监控期执行时间
例如:网络
long begin = System.currentTimeMillis();
//执行的方法或者代码
long end = System.currentTimeMillis();
System.out.print("一共执行时间:"+(end-begin));
定位结果
定位结果
思路:针对于http请求的节点按顺序解决。暂时不考虑从分布式
和群集
的解决方案入手优化。
优化的方面不只限于上面的方法。有些也没有一一赘述。好比说:加内存也是优化的不错解决方案。还有操做系统级别,io读写,网络请求等问题。