smaker cloud是国内首个基于Spring Cloud、spring cloud alibaba微服务化快速开发脚手架,具有统一授权、认证后台管理系统,其中包含具备用户管理、资源权限管理、网关API管理等多个模块,支持多业务系统并行开发,可以作为后端服务的开发脚手架。代码简洁,架构清晰,适合学习和直接项目中使用。核心技术采用Spring Boot2以及Spring Cloud Gateway、nacos、spring secruity Oauth2相关核心组件,前端采用vue-element-admin组件
首先本机先要安装以下环境,建议先学习了解springboot和springcloud基础知识。
编译与运行
先配置数据库,
然后reids,
启动mysql,
启动nacos(导入db目录中的nacos-config.sql到nacos数据库中)
配置hosts文件,建议使用switchhosts工具
127.0.0.1 smakercloud-mysql
127.0.0.1 smakercloud-redis
127.0.0.1 smakercloud-gateway
127.0.0.1 smakercloud-nacos
启动顺序:
- smaker-auth
- smaker-back
- smaker-gateway
如果对您对此项目有兴趣,可以点 "Star" 支持一下 谢谢! ^_^
或者您可以 "follow" 一下
如有问题请直接在 Issues 中提,或者您发现问题并有非常好的解决方案,欢迎 PR 👍
传送门:前端项目地址
Spring Cloud
微服务
化开发平台
,具有统一授权、认证后台管理系统,其中包含具备用户管理、资源权限管理、网关API管理等多个模块,支持多业务系统并行开发,可以作为后端服务的开发脚手架。代码简洁,架构清晰,适合学习和直接项目中使用。 #技术栈
此项目是 Spring cloud Oauth2 构建的后台管理系统,计划采用以下技术
服务 | 使用技术 | 进度 | 备注 |
---|---|---|---|
注册\配置中心 | nacos | ✅ | |
消息总线 | SpringCloud Bus+Rabbitmq | ✅ | |
动态网关 | SpringCloud Gateway | ✅ | 多种维度的流量控制(服务、IP、用户等),后端可配置化🏗 |
授权认证 | Spring Security OAuth2 | ✅ | |
服务容错 | SpringCloud Hystrix | ✅ | |
服务调用 | SpringCloud OpenFeign | ✅ |
通过JWT
的方式来加强服务之间调度的权限验证,保证内部服务的安全性。
利用Spring Boot Admin 来监控各个独立Service的运行状态;利用Hystrix Dashboard来实时查看接口的运行状态和调用频率等。
将服务保留的rest进行代理和网关控制,除了平常经常使用的node.js、nginx外,Spring Cloud系列的zuul和ribbon,可以帮我们进行正常的网关管控和负载均衡。其中扩展和借鉴国外项目的扩展基于JWT的Zuul限流插件
,方面进行限流。
基于Nacos来实现的服务注册与调用,在Spring Cloud中使用Feign, 我们可以做到使用HTTP请求远程服务时能与调用本地方法一样的编码体验,开发者完全感知不到这是远程方法,更感知不到这是个HTTP请求。
因为采取了服务的分布,为了避免服务之间的调用“雪崩”,采用了Hystrix
的作为熔断器,避免了服务之间的“雪崩”。
Apache License Version 2.0# smaker