超强大的团队博客,基于微服务架构,一切为技术而生
打造一个基于微服务架构的团队技术博客,在平台之上提供多样化的微服务,如用户中心、博文社区、后台管理、即时通讯、系统推送、搜索服务、短信邮件、数据分析等。目前使用Spring Boot + Spring Cloud全家桶搭建基础架构,使用Angular搭建前端平台。
- team-blog-common:公共组件
- team-blog-gateway(port 7004):Zuul API 网关
- team-blog-registry(port 7002):Eureka 注册中心,服务发现
- team-blog-config:配置中心
- team-blog-monitor:监控平台
- team-blog-trace:zipkin链路追踪
- ...
- team-blog-user-service(port 7006)
- team-blog-article-service(port 7008)
- team-blog-admin-service
- team-blog-im-service
- team-blog-recommend-service
- team-blog-search-service
- team-blog-message-service
- team-blog-analysis-service
- ...
- Eureka:服务注册与发现
- Feign:远程调用客户端
- Ribbon:负载均衡
- Zuul:路由网关
- Hystrix:熔断器
- Angular
处理认证、授权、会话管理
- Spring Security(or Shiro?)
- Zuul
- Spring MVC
这一层主要是本地服务的接口
为本地程序提供远程调用接口,基于RESTful HTTP
- Feign
- Ribbon
分布式事务
这里主要指与关系型数据库的交互
- Druid连接池
- MyBaits(or Spring-Data-JPA)
PO/DTO 控制实体粒度粗细
- 缓存中间件
- 消息中间件
- 日志
- 异常
- 国际化
- JSON序列化
- Jenkins
- Maven / Gradle
- Git
- Docker
- Linux