对大流量,高并发,高性能的理解

面试的时候经常会被问题“你是如何解决网站的高并发问题”,据我理解感觉此问题并不是很严格,面试官应该想问的是如何降低服务器压力,提高网站性能,支持网站的大流量访问,不知道理解的是否正确

我的理解是:

大流量:指网站的网问人数巨多,服务器压力过大,优化做得不好的情况下会导致速度慢,访问超时等情况

高并发:指同一时刻访问同一功能的人数巨多,优化做得不好的情况下,可能导致读出/写入脏数据,死锁等问题

高性能:是一个统称,指网站优化做得好,同时可处理大流量与高并发问题

严格来说:

如果仅说如何解决高并发问题,应该从sql读写时防止读出/写入脏数据,程序中资源的保护防止死锁等方面考虑

如果说如何解决大流量问题,或者如何提高网站性能,这个问题就比较宽泛了,因为大流量必定会带来高并发,因此在解决大流量的情况下其实同时也需要解决高并发的问题

解决大流量,提高网站性能的办法有很多,大致整理了一些网上常见的解决办法,如下:

  1. 代码规范化

  2. 尽量使用静态页面

  3. 前端:JS/CSS优化(如文件大小限制,尽量减少加载次数,页面上多个icon使用截取的方式展示等)

  4. 后端:资源的正确使用以避免死锁等,适当使用缓存(甚至可以考虑Memcache等分布式缓存),SQL语句的规范化(如优化sql性能的方法)

  5. 数据库方面:如适当使用索引,数据库的读写分离,甚至可考虑使用NoSql数据库(如MongoDB,redis等)

  6. 运维方面:搭建CDN,搭建集群(高性能,高可用,负载均衡等)

欢迎各位拍砖指导!

——

原文地址:https://www.cnblogs.com/adayywq/p/3957886.html