Taroco 演示地址
前言
'Taroco' 是一整套的微服务企业级解决方案。是微服务敏捷开发的代表。
项目介绍
Spring Cloud 是一个微服务框架,相比 Dubbo 等 RPC 框架, Spring Cloud 提供更全面的分布式系统解决方案。Spring Cloud 对微服务基础框架 Netflix 的多个开源组件进行了封装,同时又实现了和云端平台以及和 Spring Boot 开发框架的集成。 Spring Cloud 为微服务架构开发涉及的统一认证,配置管理,服务治理,熔断机制,动态路由等提供了一种简单的开发方式。
Spring Cloud 本身已经封装得足够简单,也够丰富。也许正是因为这种简单而丰富,使得想要使用它的团队望而却步。学习成本太高,历史包袱太重,维护成本太高等等一系列原因。
Taroco 就是为了解决这一问题而诞生的。 Taroco 整合了 Spring Cloud 的配置中心、注册中心、服务网关,提供了一系列starter组件, 同时提供服务治理、服务监控、OAuth2 权限认证,支持服务降级/熔断、基于标签(x-label) 的路由、服务权重,前端采用vue+elementUI,可以很好的解决技术转向 Spring Cloud 的一系列问题,努力打造全方位的微服务敏捷开发解决方案。
Taroco 提供了基于 Docker Compose 的部署方式。配置文件统一放置在docs目录中,运行脚本案例在根目录中查找。
主要实现功能
- Spring Cloud Eureka 注册中心
- Spring Cloud Config Server 配置中心,统一管理配置信息
- Spring Cloud Zuul Gateway 统一微服务网关配置,支持动态路由配置
- 基于 spring-boot-starter-actuator 的自实现的服务治理。包括日志、变量、映射等情况。
- 基于 Hystrix 的聚合监控页面,包括单个服务和服务多个实例的监控。
- 基于 Spring Security OAuth2 的权限认证系统。采用JWT RSA非对称加密的形式进行 token 加密解密。
- 支持基于权重以及基于标签的服务路由,支持动态配置服务权重及标签信息。通过控制用户标签以及动态路由的配置,满足各种各样请求策略。
- 基于角色的RBAC权限控制(用户、部门、角色、菜单、日志、字典、动态路由、oauth2 客户端),并且支持数据权限控制。
整体架构
项目截图
后端环境
- JDK1.8+
- Spring Boot 1.5.12
- Spring Cloud Edgware.SR4
- Maven 3.0+
- Redis 3.0+
- MySQL 5.7
- IDEA
前端
Taroco 前端基于开源项目 D2Admin 构建。
D2Admin 中文文档:D2Admin Document。
链接推荐
资源下载
- JDK8 www.oracle.com/technetwork…
- Maven maven.apache.org/download.cg…
- Redis redis.io/download
- ActiveMQ activemq.apache.org/download-ar…
- ZooKeeper www.apache.org/dyn/closer.…
- Elastic Stack www.elastic.co/downloads
- Nginx nginx.org/en/download…
- Jenkins updates.jenkins-ci.org/download/wa…