作者:Lululingling2002_886 | 来源:互联网 | 2024-10-17 12:18
一个基于微服务架构的前后端分离博客系统。前台使用Vue + Element , 后端使用spring boot + spring cloud + mybatis-plus进行开发,使用 Jwt + Spring Security做登录验证和权限校验,使用ElasticSearch和Solr作为全文检索服务,使用Github Actions完成博客的持续集成,文件支持上传七牛云。
项目特点
友好的代码结构及注释,便于阅读及二次开发
实现前后端分离,通过Json进行数据交互,前端再也不用关注后端技术
页面交互使用Vue2.x,极大的提高了开发效率。
引入swagger文档支持,方便编写API接口文档。
引入RabbitMQ 消息队列,用于邮件发送、更新Redis和Solr
引入JustAuth第三方登录开源库,支持Gitee、Github账号登录。
引入ElasticSearch 和 Sol r作为全文检索服务,并支持可插拔配置
引入Github Actions工作流,完成蘑菇博客的持续集成、持续部署。
引入七牛云对象存储,同时支持本地文件存储
引入RBAC权限管理设计,灵活的权限控制,按钮级别的细粒度权限控制,满足绝大部分的权限需求
引入Zipkin链路追踪,聚合各业务系统调用延迟数据,可以一眼看出延迟高的服务
采用自定义参数校验注解,轻松实现后端参数校验
采用AOP+自定义注解+Redis实现限制IP接口访问次数
采用自研的评论模块,实现评论邮件通知
目录介绍
MoguBlog 是一款基于最新技术开发的多人在线、简洁的博客系统。
mogu_admin: 提供admin端API接口服务;
mogu_web:提供web端API接口服务;
mogu_eureka: 服务发现和注册
mogu_picture: 图片服务,用于图片上传和下载;
mogu_sms:消息服务,用于更新ElasticSearch、Solr索引、邮件和短信发送
mogu_monitor:监控服务,集成SpringBootAdmin用于管理和监控SpringBoot应用程序
mogu_spider:爬虫服务(目前还未完善)
mogu_spider:网关服务(目前还未完善)
mogu_zipkin:链路追踪服务,目前使用java -jar的方式启动
mogu_search:搜索服务,ElasticSearch和Solr作为全文检索工具,支持可插拔配置,默认使用SQL搜索
mogu_commons:公共模块,主要用于存放Entity实体类、Feign远程调用接口、以及公共config配置
mogu_utils: 是常用工具类;
mogu_xo: 是存放 VO、Service,Dao层的
mogu_base: 是一些Base基类
doc: 是蘑菇博客的一些文档和数据库文件
vue_mogu_admin:VUE的后台管理页面
vue_mogu_web:VUE的门户网站
nuxt_mogu_web:Nuxt的门户网站,主要用于支持SEO搜索引擎优化(目前还未完善)
技术选型
系统架构图
后端技术
前端技术
相关截图
Web端
项目最新源码学习获取方式:关注转发之后私信回复关键字【源码】即可免费获取到~
项目最新源码学习获取方式:关注点赞之后私信回复关键字【源码】即可免费获取到~