CodePrometheus / Starry-Blog

Personal-Blog-Project: Based on Spring Boot 3.x,Gin,Vue2.x,Thrift,Redis,Mongodb,RabbitMQ,ElasticSearch,Solr,Lucene,Docker,ELK,JWT and so on.

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Starry-Blog

Starry-Blog | 你的美好,我都记得

Spring Boot 3.x + Gin + Vue.js => Starry-Blog | 你的美好,我都记得

Show

Server

技术 说明 版本 官网
Spring Boot Java web 框架 3.0.2 https://spring.io/projects/spring-boot
Gin Go web 框架 1.8.2 https://gin-gonic.com/
Thrift RPC 0.17.0 https://thrift.apache.org/
Docker 容器引擎 20.10.11 https://www.docker.com/
Docker Compose 容器编排 3.9 https://docs.docker.com/compose/
Portainer Docker可视化管理 1.x https://github.com/portainer/portainer
MySQL 数据库 8.0.28 https://www.mysql.com/
Redis 缓存 6.x https://redis.io/
Mongodb 文档型数据库 6.x https://www.mongodb.com/
RabbitMQ 消息队列 3.9.7 https://www.rabbitmq.com/
Elasticsearch 搜索引擎 8.5.2 https://github.com/elastic/elasticsearch
Canal 数据同步 1.1.5 https://github.com/alibaba/canal/
Solr 搜索引擎 8.9.0 https://solr.apache.org/
Lucene 搜索引擎 8.9.0 https://lucene.apache.org/
Spring Security 认证和授权框架 3.0.2 https://spring.io/projects/spring-security
JWT JSON Web Token 4.2.2 https://github.com/auth0/java-jwt
Quartz 作业调度框架 3.0.2 http://www.quartz-scheduler.org/
Swagger-UI 文档生产工具 3.0.0 https://github.com/swagger-api/swagger-ui
Kibana 分析和可视化平台 8.5.2 https://www.elastic.co/cn/kibana
Beats 轻量型数据采集器 8.5.2 https://www.elastic.co/cn/beats/
Logstash 用于接收Beats的数据并处理 8.5.2 https://www.elastic.co/cn/logstash
MyBatis-Plus ORM框架 3.5.x https://mp.baomidou.com/
Hikaricp 数据库连接池 5.x https://github.com/brettwooldridge/HikariCP
Lombok 简化对象封装工具 1.8.20 https://github.com/rzwitserloot/lombok
Nginx HTTP和反向代理web服务器 1.20.1 http://nginx.org/
Hutool Java工具包类库 5.7.13 https://hutool.cn/docs/
Ip2region 离线IP地址定位库 2.6.6 https://github.com/lionsoul2014/ip2region

Front

技术 说明 官网
Vue.js 前端框架 https://vuejs.org/
Vue-router 路由框架 https://router.vuejs.org/
Vuex 全局状态管理框架 https://vuex.vuejs.org/
Element 后台ui框架 https://element.eleme.io
Vuetify 前台ui框架 https://vuetifyjs.com/
Axios 前端HTTP框架 https://github.com/axios/axios
Echarts 图表框架 www.echartsjs.com
Highlight.js 代码语法高亮插件 https://github.com/highlightjs/highlight.js
clipboard.js 现代化的拷贝文字 http://www.clipboardjs.cn/
animate.css 炫酷的CSS动画库 https://animate.style/
live2d 看板娘 https://www.live2d.com/

项目结构

├── blog-admin # 后台
├── blog-common # 公共
├── blog-core # 博客
├── blog-inf # 前台
├── blog-spider # Go
├── blog-vue # 前端
├── canal
├── docker-compose.yml
├── es
├── images
├── lucene
├── Dockerfile
├── LICENSE
├── README.md
├── pom.xml
└── starry-blog.sql

Builder

  • 2021/1/1 v1.0 项目初始

  • 2021/3/28 v1.5 项目正式发布

  • 2021/8/14 v3.0 前后台重构

  • 2021/09/30 v4.0 搜索服务

  • 2021/12/19 v5.0 数据同步

  • 2022/01/08 v6.0 部署

  • 2023/01/26 v7.0 大重构

Feature

  • Redis string,list,hash,set,zset

  • MQ 异步更新 Elasticsearch,Solr,Lucene,发送评论通知邮件,评论延迟队列自动审核机制

  • Docker-compose up 一键启动所有中间件

  • Aop + 自定义注解,令牌桶流量控制

  • Canal 通过 MQ 保证数据最终一致性

  • ELK [ElasticSearch + Beats + Kibana + Logstash],日志埋点

  • 策略模式搜索服务自由切换,Elasticsearch,Solr,Lucene,MySQL

  • WebSocket 在线聊天室

  • RBAC 权限管理设计,JWT 身份校验

  • Quartz 作业调度框架

  • Java,GO 通过 Thrift 跨语言调用

  • Go 爬取各大网站热搜,写入 MongoDB,定时任务更新

About

Personal-Blog-Project: Based on Spring Boot 3.x,Gin,Vue2.x,Thrift,Redis,Mongodb,RabbitMQ,ElasticSearch,Solr,Lucene,Docker,ELK,JWT and so on.

License:Other


Languages

Language:Java 61.4%Language:Vue 22.8%Language:CSS 5.3%Language:Go 5.1%Language:JavaScript 2.5%Language:SCSS 2.5%Language:HTML 0.2%Language:Thrift 0.1%Language:Dockerfile 0.0%