【本文版权归微信公众号"代码艺术"(ID:onblog)所有,若是转载请务必保留本段原创声明,违者必究。若是文章有不足之处,欢迎关注微信公众号私信与我进行交流!】
一:前端优化
暴露接口,按钮防重复(点击一次按钮后就变成禁用,禁止重复提交)
采用CDN存储静态化的页面和一些静态资源(css,js等)
二:Redis后端缓存优化
Redis 是完全开源免费的,遵守BSD协议,是一个高性能的key-value数据库。
Redis支持数据的持久化,可以将内存中的数据保存在磁盘中,重启的时候可以再次加载进行使用。
性能极高 – Redis能读的速度是110000次/s,写的速度是81000次/s 。
原子 – Redis的所有操作都是原子性的,意思就是要么成功执行要么失败完全不执行。
利用Redis可以减轻MySQL服务器的压力,减少了跟数据库服务器的通信次数。
2.1 Redis服务端下载以及安装
注:以下pom.xml为Maven项目配置文件,若非Maven项目,百度相应名称包导入即可。
2.2 在pom.xml中配置Redis客户端
redis.clients
jedis
2.7.3
由于Jedis并没有实现内部序列化操作,而Java内置的序列化机制性能又不高,我们需要考虑高并发优化,在这里我们采用开源社区提供的更高性能的自定义序列化工具protostuff。
2.3 在pom.xml中配置protostuff依赖
com.dyuproject.protostuf