Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/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.
https://github.com/codeprometheus/starry-blog
canal docker-compose elasticsearch gin jwt lucene mongodb mybatis-plus rabbitmq redis solr springboot springsecurity thrift vue
Last synced: about 2 months ago
JSON representation
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.
- Host: GitHub
- URL: https://github.com/codeprometheus/starry-blog
- Owner: CodePrometheus
- License: other
- Created: 2020-12-31T14:49:59.000Z (about 4 years ago)
- Default Branch: master
- Last Pushed: 2023-05-04T02:51:32.000Z (over 1 year ago)
- Last Synced: 2023-05-04T03:29:20.558Z (over 1 year ago)
- Topics: canal, docker-compose, elasticsearch, gin, jwt, lucene, mongodb, mybatis-plus, rabbitmq, redis, solr, springboot, springsecurity, thrift, vue
- Language: Java
- Homepage:
- Size: 9.19 MB
- Stars: 4
- Watchers: 3
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Starry-Blog
Spring Boot 3.x + Gin + Vue.js => Starry-Blog | 你的美好,我都记得
### Show
![](images/img-1.jpg)
### Server
| 技术 | 说明 | 版本 | 官网 |
|:---------------:|:---------------:|:--------:|:------------------------------------------------------------------------------------------:|
| Spring Boot | Java web 框架 | 3.0.2 | [https://spring.io/projects/spring-boot](https://spring.io/projects/spring-boot) |
| Gin | Go web 框架 | 1.8.2 | [https://gin-gonic.com/](https://gin-gonic.com/) |
| Thrift | RPC | 0.17.0 | [https://thrift.apache.org/](https://thrift.apache.org/) |
| Docker | 容器引擎 | 20.10.11 | [https://www.docker.com/](https://www.docker.com/) |
| Docker Compose | 容器编排 | 3.9 | [https://docs.docker.com/compose/](https://docs.docker.com/compose/) |
| Portainer | Docker可视化管理 | 1.x | [https://github.com/portainer/portainer](https://github.com/portainer/portainer) |
| MySQL | 数据库 | 8.0.28 | [https://www.mysql.com/](https://www.mysql.com/) |
| Redis | 缓存 | 6.x | [https://redis.io/](https://redis.io/) |
| Mongodb | 文档型数据库 | 6.x | [https://www.mongodb.com/](https://www.mongodb.com/) |
| RabbitMQ | 消息队列 | 3.9.7 | [https://www.rabbitmq.com/](https://www.rabbitmq.com/) |
| Elasticsearch | 搜索引擎 | 8.5.2 | [https://github.com/elastic/elasticsearch](https://github.com/elastic/elasticsearch) |
| Canal | 数据同步 | 1.1.5 | [https://github.com/alibaba/canal/](https://github.com/alibaba/canal) |
| Solr | 搜索引擎 | 8.9.0 | [https://solr.apache.org/](https://solr.apache.org/) |
| Lucene | 搜索引擎 | 8.9.0 | [https://lucene.apache.org/](https://lucene.apache.org) |
| Spring Security | 认证和授权框架 | 3.0.2 | [https://spring.io/projects/spring-security](https://spring.io/projects/spring-security) |
| JWT | JSON Web Token | 4.2.2 | [https://github.com/auth0/java-jwt](https://github.com/auth0/java-jwt) |
| Quartz | 作业调度框架 | 3.0.2 | [http://www.quartz-scheduler.org/](http://www.quartz-scheduler.org/) |
| Swagger-UI | 文档生产工具 | 3.0.0 | [ https://github.com/swagger-api/swagger-ui](https://github.com/swagger-api/swagger-ui) |
| Kibana | 分析和可视化平台 | 8.5.2 | [https://www.elastic.co/cn/kibana](https://www.elastic.co/cn/kibana) |
| Beats | 轻量型数据采集器 | 8.5.2 | [https://www.elastic.co/cn/beats/](https://www.elastic.co/cn/beats) |
| Logstash | 用于接收Beats的数据并处理 | 8.5.2 | [https://www.elastic.co/cn/logstash](https://www.elastic.co/cn/logstash) |
| MyBatis-Plus | ORM框架 | 3.5.x | [https://mp.baomidou.com/](https://mp.baomidou.com/) |
| Hikaricp | 数据库连接池 | 5.x | [https://github.com/brettwooldridge/HikariCP](https://github.com/brettwooldridge/HikariCP) |
| Lombok | 简化对象封装工具 | 1.8.20 | [https://github.com/rzwitserloot/lombok](https://github.com/rzwitserloot/lombok) |
| Nginx | HTTP和反向代理web服务器 | 1.20.1 | [http://nginx.org/](http://nginx.org/) |
| Hutool | Java工具包类库 | 5.7.13 | [https://hutool.cn/docs/](https://hutool.cn/docs/) |
| Ip2region | 离线IP地址定位库 | 2.6.6 | [https://github.com/lionsoul2014/ip2region](https://github.com/lionsoul2014/ip2region) |### Front
| 技术 | 说明 | 官网 |
|:------------:|:---------:|:------------------------------------------------------------------------------------------:|
| Vue.js | 前端框架 | [https://vuejs.org/](https://vuejs.org/) |
| Vue-router | 路由框架 | [https://router.vuejs.org/](https://router.vuejs.org/) |
| Vuex | 全局状态管理框架 | [https://vuex.vuejs.org/](https://vuex.vuejs.org/) |
| Element | 后台ui框架 | [ https://element.eleme.io](https://element.eleme.io/) |
| Vuetify | 前台ui框架 | [ https://vuetifyjs.com/](https://vuetifyjs.com/) |
| Axios | 前端HTTP框架 | [ https://github.com/axios/axios](https://github.com/axios/axios) |
| Echarts | 图表框架 | [www.echartsjs.com](https://www.echartsjs.com/) |
| Highlight.js | 代码语法高亮插件 | [https://github.com/highlightjs/highlight.js](https://github.com/highlightjs/highlight.js) |
| clipboard.js | 现代化的拷贝文字 | [http://www.clipboardjs.cn/](http://www.clipboardjs.cn/) |
| animate.css | 炫酷的CSS动画库 | [https://animate.style/](https://animate.style/) |
| live2d | 看板娘 | [https://www.live2d.com/](https://www.live2d.com/) |###
项目结构
~~~markdown
├── 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,定时任务更新