项目描述:
一个帮助大家找到志同道合的伙伴的网站,包含移动端以及pc端,包括用户登录注册、更新个人信息、按标签搜索用户、推存相似用户、组队等功能。独立开发完整后端。
工作内容:
- 用户登录注册:使用 Redis 实现分布式 Session,解决集群间登录态同步问题。利用AOP和自定义注解,声明接口调用权限,避免重复编写权限校验代码。使用阿里云oss对象存储,注册上传用户头像。
- 使用Easy Excel读取收来的基础用户信息,并通过自定义线程池+CompletableFuture并发编程提高批量导入数据库的性能。实测导入100万行的时间从330秒缩短至120秒。
- 为解决首次访问系统的用户主页加载过慢的问题,使用Spring Scheduler 定时任务来实现缓存预热,并通过分布式锁保证多机部署时定时任务不会重复执行。
- 使用Redis缓存首页高频访问的用户信息列表,将接口响应时长从2.01秒缩短至76.92毫秒。且通过自定义Redis 序列化器来解决数据乱码、空间浪费的问题。
- 为解决用户重复加入队伍、入队人数超限,使用 Redisson 分布式锁实现操作互斥,保证接口幂等性。
- 使用编辑距离算法实现匹配标签最相似用户,并通过优先队列減少TOP N运算过程中的内存占用。
点击空白处退出提示












评论