一、提高页面访问速度
1.减少页面大小,启用gzip压缩
Nginx配置如下:
gzip on;
gzip_min_length 1k;
gzip_buffers 4 16k;
gzip_comp_level 6;
gzip_types text/plain application/javascript application/x-javascript text/javascript text/css application/xml;
2.减少资源请求数量,合并和压缩css、js
3.设置浏览器缓存,利用CDN(节点)加速
浏览器缓存:Nginx 配置如下
location ~ .*\.(gif|jpg|jpeg|png|bmp|swf)$ #指定缓存文件类型
{
expires 30d; #图片资源保留30d
}
llocation ~ .*\.(js|css)?$
{
expires 12h; #js、css资源保留12小时
}
二、提高秒杀接口速度
1.接口静态化(在活动开始前、结束后,不再走入秒杀逻辑接口,跳转到定制好的静态页面)。
2.快速终止的逻辑放在前面。
3.增加冗余的定制化的数据(使用redis等缓存技术、减少IO、减少MySQL压力、减少不必要的程序执行等),保证程序更快速。
4.前端增加异步的提前验证。
三、提高数据处理速度
1.数据库索引(对常用查询字段建立索引)。像用户ID这样的数据有限的推荐BTREE 检索节点。
2.减少数据规模(分表、单次活动的表)。
3.把数据库的数据放到redis缓存中。
4.对数据的操作也可以在预存在redis拿出来操作。(用于验证、存储等操作)
四、总结
1.减少页面资源大小(html/js/css)、请求数量。
2.利用Nginx,开启浏览器缓存(缓存图片、js/css文件)减少更新频率。
3.使用CDN区域节点缓存,达到加速效果。
4.接口静态化、逻辑(验证)优化、减少IO、利用redis。
5.数据库索引(为常用的字段添加索引)、减少数据规模、分表、缓存数据。