本文允许转载,但请标明出处:http://blog.csdn.net/wanghantong/article/details/40786455, 版权所有
这里说的架构,指的是在大型网站中常用的分布式架构模式
如果横向来分割我们的系统,一般我们把它分为应用层,服务层,数据层
如果纵向来分割我们的系统,一般我们是按照模块来划分
在提供服务的时候,我们会分布式的架构我们的系统,因为分布式可以给我们带来如下的好处:
CPU数量增多,处理速度加快、
内存在变大,数据交换速度加快、
存储资源,存储能力在变大,可以存储更多的信息、
能处理的并发访问和数据量也变大
在分布式带来优点的同时,也带来了一些缺点:
1.分布式服务必须通过网络,会对性能造成影响。
2.服务器越多,宕机的概率越大,也就造成了应用不可访问,可用性降低。
3.分布式数据环境的数据一致性。
4.分布式事务难以保证
说到了分布式,离不开的一个词就是集群,集群就是更多的服务器通过负载均衡提供相同的服务
简单的了解了架构,我们来说性能,到底要怎么理解这个性能?这个时候我们要从不同的角度去理解这个词
用户视觉的网站性能:
用户感官的网站响应速度,其包含了用户计算机和网站服务器的通信时间、网站服务器的处理时间、用户计算机浏览器构造请求解析响应数据的时间
开发人员视觉的性能:
应用程序本身和其先关子系统的性能,包括响应延迟、系统吞吐量、并发处理能力、系统稳定性
运维人员视角的网站性能:
基础设施性能和资源利用率,包括运营商的带宽、服务器硬件配置、数据中心网络架构
性能测试的方法: 性能测试、负载测试、压力测试、稳定性测试
在浏览器端:浏览器缓存、页面压缩(计算机的能力)、合理布局页面、减少cookie传输、使用CDN在网络供应商处缓存
在应用服务器端:服务器本地缓存、分布式缓存、异步消息队列、集群(应用服务器集群、缓存服务器集群、数据服务器缓存)
在数据库服务器端:索引、缓存、SQL优化、NOSQL
在代码层面:多线程、改善内存管理
性能测试的指标: 响应时间、并发数、吞吐量、性能计数器
如何排查性能瓶颈:
1.对 从用户发出请求到数据库完成事务操作 的各个环节进行分析,定位问题。
2.依赖检查日志进行排查
3.检查监控数据,从内存、磁盘、网络、cpu、代码、架构、系统资源不足多方面排查。
本文允许转载,但请标明出处:http://blog.csdn.net/wanghantong/article/details/40786455, 版权所有