1.动静分离。css
将网站中的静态资源单独拆分出来, 好比 css, js, 图片, 视频资源单独存储在一台服务器上, 或者直接使用云存储平台, 七牛云或者阿里云之类的, 这样能有效的下降主服务器的运行压力前端
2.CDN加速。webpack
云平台提供 CDN 加速, 能够对资源进行全国服务器节点的分发, 提升全国各地的访问速度。nginx
3.反向代理,负载均衡。web
反向代理就是将用户的请求, 分发到不一样的 web 服务器上, 进行处理, 下降单台服务器的压力, 负载均衡则是根据 web 服务器的性能进行请求的分配, 负载较小的多分配一些请求, 负载较大的小分配一下请求. nginx 就能够实现反向代理和负载均衡。redis
4.使用数据缓存。数据库
数据缓存能够使用 memcache 和 redis 这样的内存缓存系统来实现, 将一些经常使用数据写入到内存中, 从而提高响应的速度。缓存
5.数据库优化。服务器
分库分表,主从复制读写分离,中文分词。负载均衡
6.压缩合并js css。
过多的 js 和 css 请求会消耗服务器的资源. 能够借助前端工具 webpack 来进行打包。
7.分布式集群搭建。
将业务拆分到不一样的服务器下, 下降单台服务器压力.例如用户和商品功能拆分开。
8.页面静态化。
页面静态化实际上是缓存的一种实现, 将要返回的 HTML 内容预先写入到一个文件中, 访问的时候能够直接返回该文件中的内容。
9.防止外部盗链。
盗链是其余网站引用当前服务器的资源, 好比css, js 和图片,主要是图片. 能够使用 refer 进行限制。
10.使用消息队列。
将请求的内容压入到队列中, 用另外的脚本异步处理请求, Redis 的列表结构就能够实现这个效果。