项目介绍:基于Vue3 + Spring Boot +Redis 的 移动端网站,实现了用户管理、按标签检索用户、推荐相似用户、组队等功能。主要工作:对于项目中复杂的集合处理,使用Java8 Stream API和 Lambda表达式来简化编码。为解决首次访问系统的用户主页加载过慢的问题,使用Spring Scheduler定时任务来实现缓存预热,并通过分布式锁保证多机部署时定时任务不会重复执行。为解决同一用户重复加入队伍、入队人数超限的问题,使用Redisson分布式锁来实现操作互斥,保证了接口幂等性。Redis 如果是集群,分布式锁的数据不同步问题,使用红锁来解决问题。使用编辑距离算法实现了根据标签匹配最相似用户的功能,并通过优先队列来减少TOP N运算过程中的你内存占用。对于项目中数据查询的操作,分为SQL查询和内存查询两种,SQL查询(实现简单,可以通过拆分查询进一步优化),内存查询(灵活,可以通过并发进一步优化)。如果参数可以分析,根据用户的参数去选择查询方式,比如标签数;如果参数不可分析,并且数据库连接足够、内存空间足够,可以并发同时查询,谁先返回用谁;还可以SQL查询与内存计算相结合,比如先用SQL过滤掉部分tag。声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!

下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态
评论