找伙伴-寻找志同道合的朋友

我要开发同款
ROOKIE2024年09月15日
19阅读
开发技术mysqltypescript、缓存、java
所属分类SNS社交

作品详情

项目描述:

一个帮助大家找到志同道合的伙伴的网站,包含移动端以及pc端,包括用户登录注册、更新个人信息、按标签搜索用户、推存相似用户、组队等功能。独立开发完整后端。

工作内容:

- 用户登录注册:使用 Redis 实现分布式 Session,解决集群间登录态同步问题。利用AOP和自定义注解,声明接口调用权限,避免重复编写权限校验代码。使用阿里云oss对象存储,注册上传用户头像。

- 使用Easy Excel读取收来的基础用户信息,并通过自定义线程池+CompletableFuture并发编程提高批量导入数据库的性能。实测导入100万行的时间从330秒缩短至120秒。

- 为解决首次访问系统的用户主页加载过慢的问题,使用Spring Scheduler 定时任务来实现缓存预热,并通过分布式锁保证多机部署时定时任务不会重复执行。

- 使用Redis缓存首页高频访问的用户信息列表,将接口响应时长从2.01秒缩短至76.92毫秒。且通过自定义Redis 序列化器来解决数据乱码、空间浪费的问题。

- 为解决用户重复加入队伍、入队人数超限,使用 Redisson 分布式锁实现操作互斥,保证接口幂等性。

- 使用编辑距离算法实现匹配标签最相似用户,并通过优先队列減少TOP N运算过程中的内存占用。
声明:本文仅代表作者观点,不代表本站立场。如果侵犯到您的合法权益,请联系我们删除侵权资源!如果遇到资源链接失效,请您通过评论或工单的方式通知管理员。未经允许,不得转载,本站所有资源文章禁止商业使用运营!
下载安装【程序员客栈】APP
实时对接需求、及时收发消息、丰富的开放项目需求、随时随地查看项目状态

评论