能学到啥?
应对大并发
- 如何利用缓存
- 如何使用异步
- 如何编写优雅的代码
项目框架
- Spring Boot
- 集成 Thymeleaf,Result 结果封装
- 集成 Mybatis+Druid
- 集成 Jedis+redis 安装+通用缓存 Key 封装
环境搭建
- maven
- org.springframework.boot–parent
- spring-boot-starter-web
- spring-boot-starter-thymeleaf
- mybatis-spring-boot-starter
- mysql
- com.alibaba,druid
redis 安装
- download redis.xxx.tar.gz
- linux 服务器(此处可使用虚拟机安装 centos)
tar -zvxf redis.xxx.tar.gz
mv redis.xxx.tar.gz /usr/local/redis
//移动后重命名为 redis 目录cd /usr/local/redis
make -j 4
//用 4 个线程make install
vim redis.conf
//修改 bind ip,daemonize yes 运行后台运行,requirepass 密码,设置密码后使用 redis-cli 需要使用 auth pass 才能 get keyredis-server ./redis.conf
//使用 redis.conf 的配置启动 redis 服务ps -ef | grep redis
//查看 redis 进程redis-cli
//连接 redis 服务cd utils && ./install_server.sh
//生成系统服务 /usr/local/redis/redis.conf,/usr/local/redis/redis.log,/usr/local/redis/data,/usr/local/bin/redis-serversystemctl status redis_6379
//查看 redis 服务状态vim /etc/init.d/redis_6379
// 执行 shell 文件自动生成的,可在其中修改服务名。redis-cli,auth pass,shutdown save
关闭 redis 服务
集成 redis
- 添加 Jedis 依赖
添加 Fastjson 依赖 - 读取配置文件 config –RedisConfig 类
- 配置 JedisPool,写 service,把接口定义好
- 通过 KeyPrefix 把各个模块做一个区分 ⬇️⬇️
通用缓存 key 封装\
接口类 <– 抽象类 <– 实现类
登录功能
数据库设计
明文密码两次 MD5 处理
- 用户端:pass = MD5(明文+固定 salt)
- 服务端:pass = MD5(用户输入+随机 salt)