1.硬件升级
普通的P4服务器一般最多能支持每天10万独立IP,如果访问量比这个还要大, 那么必须首先配置一台更高性能的专用服务器才能解决问题 ,否则怎么优化都不可能彻底解决性能问题。
2.负载均衡
它是根据某种负载策略把请求分发到集群中的每一台服务器上,让整个服务器群来处理网站的请求。
公司比较有钱的,可以购买专门负责负载均衡的硬件(如:F5),效果肯定会很好。对于大部分公司,会选择廉价有效的方法扩展整个系统的架构,来增加服务器的吞吐量和处理能力,以及承载能力。
3.服务器集群
服务器集群就是指将N台服务器集中起来一起进行同一种服务,它们之间通过网络实现通信。让N台服务器之间相互协作,共同承载一个网站的请求压力。
在客户端看来就像是只有一个服务器。集群可以利用多个计算机进行并行计算从而获得很高的计算速度,也可以用多个计算机做备份,从而使得任何一个机器坏了整个系统还是能正常运行。
4.数据库读写分离
基本的原理是让主数据库处理事务性增、改、删操作(INSERT、UPDATE、DELETE),而从数据库处理SELECT查询操作。
5.数据库分表技术(垂直分割,水平分割)
当一张的数据达到几百万时,你查询一次所花的时间会变多,如果有联合查询的话,很有可能会死在那儿了。分表的目的就在于此,减小数据库的负担,缩短查询时间。
6.表建立相应的索引
使用索引可快速访问数据库表中的特定信息。
7.页面静态化
前台实现完全的静态化最好,可以完全不用访问数据库。
8.缓存技术(MemCache、Redis)
缓存技术就是另一个解决方案,就是将动态数据存储到缓存文件中,动态网页直接调用 这些文件,而不必再访问数据库
9.禁止外部盗链
外部网站的图片或者文件盗链往往会带来大量的负载压力,因此应该严格限制外部对于自身的图片或者文件盗链
10.控制大文件的下载
大文件的下载会占用很大的流量,并且对于非SCSI硬盘来说,大量文件下载会消耗 CPU,使得网站响应能力下降。因此,尽量不要提供超过2M的大文件下载,如果需要提供,建议将大文件放在另外一台服务器上。
架构技术是程序员绕不开的话题,关于分布式,微服务,源码,框架结构,设计模式等这些技术我都分享在群697579751,可免费下载。希望可以帮助在这个行业发展的朋友和童鞋们,在论坛博客等地方少花些时间找资料,把有限的时间,真正花在学习上,我把这些视频分享出来。相信对于已经工作和遇到技术瓶颈的码友,在这个群里一定有你需要的内容。