文章目录
- 基于 SpringCloud + SpringCloud Alibaba 开发的“小贴吧”网站
-
- 一、项目介绍
- 二、项目重难点
-
- 2.1、gateway 网关处理
- 2.2、nacos 服务注册和服务发现
- 2.3、使用 nacos 统一配置文件管理
- 2.4、OpenFeign 实现服务的远程调用(最佳实践版)
- 2.5、jwt 令牌 + redis 实现用户信息鉴权
- 2.6、手写加盐加密算法,保证用户密码安全性
- 2.7、在 redis 上缓存访问量、点赞量、收藏量、评论量,并通过 rabbitmq 实现异步数据同步
- 2.8、通过 redis 中 set 类型的特点实现缓存 点赞 和 收藏 功能,并使用 rabbitmq 异步提速
- 2.9、在 redis set 缓存恢复时,通过一条 redis 指令解决,减轻网络开销
- 2.10、通过 redis 的 set + list 类型统计站内消息列表,通过 rabbitmq 实现异步消息推送
- 2.10 拓展问题:如何控制 redis 的 list 中每一个元素的声明周期(体现优化业务)
- 2.11、分页数据泛型处理,减少代码冗余
- 2.12、通过 elasticsearch 实现文章、用户的搜索、分页.
- 2.13、通过 rabbitmq 实现 elasticsearch 文章,用户信息同步
- 2.14、基于 ik 分词器 + 拼音分词器 实现自定义分词器,进一步实现搜索框的自动补全功能
- 2.15、实现统一返回数据类型和统一异常处理
- 2.16、WebSocket 实时通讯 - 私信功能
- 2.17、使用 Sentinel 实现限流、授权
- 三、花费时间比较长的几个 BUG 记录
基于 SpringCloud + SpringCloud Alibaba 开发的“小贴吧”网站
一、项目介绍
1.1、简介
实现了一个网页版的贴吧平台,提供了一个技术文章论坛,同时也提供了用户之间在线交流的平台,类似于 百度贴吧、优快云、掘金 这样的网站.
1.2、技术选型与技术栈
整个项目采用基于 SpringCloud + SpringCloud Alibaba 构建的微服务项目,整体采用前后端分离架构.
技术栈:SpringCloud、SpringCloud Alibaba、Nacos、OpenFeign、Gateway、Sentinel、Redis、RabbitMQ、ElasticSearch、WebSocket、MySQL、MyBatis、Vue、ElementUI
1.3、项目中含有哪些功能模块
用户模块、文章模块、搜索模块、Feign 客户端模块、模组模块、网关模块、私信模块
1.4、主要负责
我(陈亦康):后端系统的独立开发,以及前端网页的部分开发.