一个基于微服务架构的前后端分离、精美的博客系统

2026-03-14 0 997

项目介绍

蘑菇博客是一个基于微服务架构的前后端分离博客系统。Web端使用Vue + ElementUi,移动端使用uniapp和ColorUI。后端使用SpringCloud + SpringBoot + Mybatis-plus进行开发,采用Jwt + SpringSecurity进行登录验证和权限校验,使用ElasticSearch和Solr作为全文检索服务,利用Github Actions完成博客的持续集成,使用ELK收集博客日志,文件支持上传至七牛云和Minio,支持Docker Compose脚本一键部署。

应用场景

蘑菇博客适用于个人博客、技术分享、学习笔记记录等多种场景。其前后端分离的设计使得系统更加灵活,易于扩展和维护。同时,微服务架构使得各个服务可以独立部署和升级,提高了系统的可用性和可伸缩性。

功能模块

核心功能

 

  • 博客管理: 博客的增删改查、分类管理、标签管理、推荐管理、链接管理。
  • 用户管理: 用户注册、登录、权限管理、个人信息管理。
  • 评论管理: 评论的增删改查、邮件通知、表情评论。
  • 文件管理: 文件上传下载、七牛云存储、Minio存储。
  • 搜索服务: 支持ElasticSearch和Solr全文检索,支持SQL搜索。
  • 日志收集: 使用ELK搭建日志收集系统。

附加功能

  • 第三方登录: 支持Gitee、Github账号登录。
  • 消息通知: 邮件和短信发送。
  • 监控服务: 集成SpringBootAdmin用于管理和监控SpringBoot应用程序。
  • 链路追踪: 使用Zipkin聚合各业务系统调用延迟数据。

功能特点

  • 前后端分离: 通过Json进行数据交互,前端无需关注后端技术。
  • 友好的代码结构: 代码结构清晰,注释详细,便于阅读及二次开发。
  • 页面交互高效: 使用Vue2.x极大提高了开发效率。
  • API文档支持: 引入Swagger文档支持,方便编写API接口文档。
  • 消息队列: 引入RabbitMQ消息队列,用于邮件发送、更新Redis和Solr。
  • 全文检索: 引入ElasticSearch和Solr作为全文检索服务,并支持可插拔配置。
  • 持续集成: 引入Github Actions工作流,完成蘑菇博客的持续集成、持续部署。
  • 权限管理: 引入RBAC权限管理设计,实现按钮级别的细粒度权限控制。
  • 链路追踪: 采用Zipkin链路追踪,聚合各业务系统调用延迟数据。
  • 参数校验: 采用自定义参数校验注解,轻松实现后端参数校验。
  • 限制访问: 采用AOP + 自定义注解 + Redis实现限制IP接口访问次数。
  • 评论模块: 自研评论模块,实现评论邮件通知。
  • 服务发现: 采用Nacos作为服务发现和配置中心。
  • 流量控制: 采用Sentinel流量控制框架,防止网站被爆破。
  • 移动端支持: 使用uniapp和ColorUi完成蘑菇博客的移动端门户页面搭建。
  • 文本编辑器: 支持Markdown编辑器(Vditor)和富文本编辑器(CKEditor)随心切换。
  • 日志收集: 采用ElasticStack搭建蘑菇博客日志收集系统。
  • 一键部署: 采用Docker Compose完成容器编排,支持一键部署线上环境。

项目技术栈

后端技术

技术
说明
SpringBoot
MVC框架
SpringCloud
微服务框架
SpringSecurity
认证和授权框架
MyBatis-Plus
ORM框架
Swagger-UI
文档生产工具
Kibana
分析和可视化平台
Elasticsearch
搜索引擎
Beats
轻量型数据采集器
Logstash
用于接收Beats的数据并处理
Solr
搜索引擎
RabbitMQ
消息队列
Redis
分布式缓存
Docker
容器化部署
Druid
数据库连接池
七牛云
对象储存
JWT
JWT登录支持
SLF4J
日志框架
Lombok
简化对象封装工具
Nginx
HTTP和反向代理web服务器
JustAuth
第三方登录的工具
Hutool
Java工具包类库
阿里大于
短信发送平台
Github Actions
自动化部署
Zipkin
链路追踪
Flexmark-java
Markdown转换Html
Ip2region
离线IP地址定位库
Minio
本地对象存储服务
Docker Compose
Docker容器编排
Portainer
Docker可视化管理

前端技术

技术
说明
Vue.js
前端框架
Vue-router
路由框架
Vuex
全局状态管理框架
Nuxt.js
创建服务端渲染 (SSR) 应用
Element
前端ui框架
Axios
前端HTTP框架
Echarts
图表框架
CKEditor
富文本编辑器
Highlight.js
代码语法高亮插件
Vditor
Markdown编辑器
vue-cropper
图片裁剪组件
vue-image-crop-upload
vue图片剪裁上传组件
vue-emoji-comment
Vue Emoji表情评论组件
clipboard.js
现代化的拷贝文字
js-beautify
美化JavaScript代码
FileSaver.js
保存文件在客户端
SortableJS
功能强大的JavaScript 拖拽库
vue-side-catalog
目录导航栏
uniapp
移动端跨平台语言
colorUi
专注视觉的小程序组件库
showdown
用Javascript编写的Markdown 到Html转换器
turndown
用JavaScript编写的HTML到Markdown转换器

系统架构图

一个基于微服务架构的前后端分离、精美的博客系统

功能演示

一个基于微服务架构的前后端分离、精美的博客系统
一个基于微服务架构的前后端分离、精美的博客系统
一个基于微服务架构的前后端分离、精美的博客系统
一个基于微服务架构的前后端分离、精美的博客系统
一个基于微服务架构的前后端分离、精美的博客系统
一个基于微服务架构的前后端分离、精美的博客系统
一个基于微服务架构的前后端分离、精美的博客系统
一个基于微服务架构的前后端分离、精美的博客系统
一个基于微服务架构的前后端分离、精美的博客系统
一个基于微服务架构的前后端分离、精美的博客系统
一个基于微服务架构的前后端分离、精美的博客系统
一个基于微服务架构的前后端分离、精美的博客系统

开源地址

https://gitee.com/moxi159753/mogu_blog_v2

收藏 (0) 打赏

感谢您的支持,我会继续努力的!

打开微信/支付宝扫一扫,即可进行扫码打赏哦,分享从这里开始,精彩与您同在
点赞 (0)

免责声明 1、百创网作为第三方中介平台,依据交易合同(商品描述、交易前商定的内容)来保障交易的安全及买卖双方的权益; 2、非平台线上交易的项目,出现任何后果均与百创网无关;无论卖家以何理由要求线下交易的,请联系管理举报。 3. 百创网网站的资源均由店家上传出售,本站无法判断和识别资源的版权等合法性属性。如果您对本网站上传的信息资源的版权存有异议,请您及时联系 我们。如果需要删除链接,请下载下面的附件,正确填写信息后并发给我们,本站核实信息真实性后,在24小时内对商品进行删除处理。 联系邮箱:baicxx@baicxx.com (相关事务请发函至该邮箱)

百创网-源码交易平台_网站源码_商城源码_小程序源码 行业资讯 一个基于微服务架构的前后端分离、精美的博客系统 https://www.baicxx.com/37677.html

常见问题
  • 1、自动:拍下后,点击(下载)链接即可下载;2、手动:拍下后,联系卖家发放即可或者联系官方找开发者发货。
查看详情
  • 1、源码默认交易周期:手动发货商品为1-3天,并且用户付款金额将会进入平台担保直到交易完成或者3-7天即可发放,如遇纠纷无限期延长收款金额直至纠纷解决或者退款!;
查看详情
  • 1、百创会对双方交易的过程及交易商品的快照进行永久存档,以确保交易的真实、有效、安全! 2、百创无法对如“永久包更新”、“永久技术支持”等类似交易之后的商家承诺做担保,请买家自行鉴别; 3、在源码同时有网站演示与图片演示,且站演与图演不一致时,默认按图演作为纠纷评判依据(特别声明或有商定除外); 4、在没有”无任何正当退款依据”的前提下,商品写有”一旦售出,概不支持退款”等类似的声明,视为无效声明; 5、在未拍下前,双方在QQ上所商定的交易内容,亦可成为纠纷评判依据(商定与描述冲突时,商定为准); 6、因聊天记录可作为纠纷评判依据,故双方联系时,只与对方在百创上所留的QQ、手机号沟通,以防对方不承认自我承诺。 7、虽然交易产生纠纷的几率很小,但一定要保留如聊天记录、手机短信等这样的重要信息,以防产生纠纷时便于百创介入快速处理。
查看详情
  • 1、百创作为第三方中介平台,依据交易合同(商品描述、交易前商定的内容)来保障交易的安全及买卖双方的权益; 2、非平台线上交易的项目,出现任何后果均与百创无关;无论卖家以何理由要求线下交易的,请联系管理举报。
查看详情
  • 免责声明 1、百创网作为第三方中介平台,依据交易合同(商品描述、交易前商定的内容)来保障交易的安全及买卖双方的权益; 2、非平台线上交易的项目,出现任何后果均与百创网无关;无论卖家以何理由要求线下交易的,请联系管理举报。 3. 百创网网站的资源均由店家上传出售,本站无法判断和识别资源的版权等合法性属性。如果您对本网站上传的信息资源的版权存有异议,请您及时联系 我们。如果需要删除链接,请下载下面的附件,正确填写信息后并发给我们,本站核实信息真实性后,在24小时内对商品进行删除处理。 联系邮箱:baicxx@baicxx.com (相关事务请发函至该邮箱)
查看详情

相关文章

猜你喜欢
发表评论
暂无评论
官方客服团队

为您解决烦忧 - 24小时在线 专业服务

  • 0 +

    访问总数

  • 0 +

    会员总数

  • 0 +

    文章总数

  • 0 +

    今日发布

  • 0 +

    本周发布

  • 0 +

    运行天数

你的前景,远超我们想象