Skip to content

🔥A SaaS platform based on Spring-Cloud including User Center(用户中心)、Authorization(认证&授权)、Notification(通知推送能力)、Gateway(网关)... Tech Include(技术选型): Nacos、Sentinel、Feign、Ribbon、RabbitMQ、Zipkin、Docker、Prometheus、Grafana、Elastic Search、Fluentd、Kibana、Power Job

License

ChinaLym/shoulder-platform

Repository files navigation

AUR

📖介绍

shoulder-platform 是一个符合OpenSergo 服务治理标准SaaS 平台(仅实现基础能力,不包含具体业务),代码简洁,架构清晰,非常适合学习使用。要说 shoulder-platformshoulder 的关系,可以简单理解为 spring cloudspring boot 的关系。

🛠️ 架构图

系统技术架构图.png

👀 在线预览

🧩组件列表

  • 认证中心
  • 用户中心
  • 权限中心
  • 消息推送
  • 存储中心
  • 用户平台
  • 监控门户
  • 运维平台
  • 运营平台(后台管理)
  • 网关

🚀 启动与使用

  • IDEA 直接运行:
  • jar 方式运行:
  • docker 方式运行:

📄 文档

...

🔥 展示

📈 监控

监控系统预览地址(访客账号密码:shoulder / shoulder123,演示账号仅包含仪表盘查看权限,不能编辑)

主机监控

prometheus + grafana 监控 docker

监控 nginx1

监控 nginx2

监控redis

nacos1

nacos2

mysql1

mysql2

mysql3

🔍︎ 日志采集与搜索

ELK展示nginx日志演示

查看所有访问 grafana.itlym.cn 的访问日志

ELK展示nginx日志,演示过滤访问 grafana.itlym.cn 的记录

查看所有请求时间大于 200ms 的访问日志

ELK展示nginx日志,演示过滤访问 grafana.itlym.cn 的记录

✈ 规划 & 发展路线

Shoulder 希望做一个整套的可复用的平台(PaaS),使用者只需要做做自己的业务即可。整体格局如下

  • Shoulder iPaaS 基础中间件环境 Shoulder 提供依赖中间件的Docker镜像或部署教程(如 数据库、消息队列、服务注册中心、任务调度中心、搜索引擎、报警与监控系统等)。
  • Shoulder Specific 软件系开发设计注意事项、落地方案和规范
  • Shoulder Framework 即本开源项目,提供共性能力封装,减少代码冗余,降低系统开发维护成本。
  • Shoulder Platform 共性业务平台,提供 用户平台支付平台通知中心业务网关数据字典全局ID生产器 等基础、通用业务能力平台
  • Shoulder Platform SDK 以 sdk 形式方便业务层对接使用。

相关项目代码地址

项目 开源地址 说明
Shoulder Framework githubgitee 开发框架,在 Spring Boot 基础之上,结合软件优雅设计与开发最佳实践,增加常用的功能,任何基于Spring Boot/Spring Cloud的项目都可以使用。
shoulder-framework-demo githubgitee 以简单的例子介绍 Shoulder Framework 的使用
shoulder-plugins githubgitee shoulder 提供的的减少开发工作量的maven插件(非必须,如遵循软件优雅设计与开发最佳实践-国际化开发时推荐希望使用自动生成多语言翻译资源文件的插件减少开发工作量)
shoulder-lombok githubgitee lombok之上,增加 @SLog 注解,用于简化软件优雅设计与开发最佳实践-错误码与日志 -shoulder 实现的日志框架的使用(非必须)
shoulder-lombok-idea-plugin githubgitee lombok-idea-plugin之上,在 IDEA 中增加@SLog的编码提示,以更好的使用 shoulder-lombok(非必须,使用 shoulder-lombok 时推荐)
Shoulder Platform githubgitee SaaS 开发平台,提供了基础通用能力,与具体业务无关
Shoulder iPaaS githubgitee iPaaS 平台,介绍了常见中间件、监控系统、私有基础平台如何部署

层次设计

层次 定位 方案 Shoulder 支持
业务应用服务 SaaS 面向用户设计,更应该考虑如何方便用户 使用者根据实际业务把握 shoulder-framework 提供了一些常用的能力,以及规约的对接;shoulder-platform-common 提供了快速开发一个与 shoulder-platform 设计、技术、风格统一的应用服务
平台对接开发包 SDK 降低使用者调用 shoulder 的开发成本和难度 以 Spring Boot 自动装配形式提供,包含使用文档和Demo 提供对接 shoulder-platform的默认实现,使用者也可根据平台api接口文档自行实现
共性业务层 aPaaS 通用基础功能如认证、注册、授权、通知推送、知识库、错误码查询等 api网关、web管理平台、用户中心、通知中心
开发脚手架 工具 统一维护共性代码,提供常用能力如异常拦截、错误码、安全加密等,统一管理技术和依赖版本 spring bootspring cloudshoulder-frameworkshoulder-platform-common 提供一些常用的功能封装,可直接用于任何项目
软件开发设计理论指导 理论 软件开发设计理论指导,主要为了系统的易维护、易扩展、易观测、安全性 总结业界开发设计实践经验如 阿里巴巴Java开发规范 结合而成,详见优雅软件设计规范 shoulder给予了一定的理论指导,但这是可选的,不强制使用者必须遵循
软件平台基础层 iPaaS 无业务含义的基础中间件,数据库、消息队列、监控中间件、告警中间件等 MySql、RabbitMQ、Nacos、Zipkin、ElasticSearch、Docker、K8s 等,以 Docker 镜像方式提供 提供大部分场景的最佳技术方案选型,安装、部署、参数调优方案,可直接用于任何项目
硬件基础层 IaaS 硬件支撑,如CPU、内存、网络、存储等 依赖云主机厂商,如阿里云、腾讯云、亚马逊云等 无,shoulder不干涉该层

📒 版本变更记录

当前暂未发布至maven仓库。

💗 贡献代码

欢迎各类型代码提交,不限于优化代码格式优化注释/JavaDoc修复 BUG新增功能 ,更多请参考 如何贡献代码

📩 反馈 or 联系我

感谢小伙伴们的 🌟Star🍴Fork🏁PR,欢迎使用 issuecn_lym@foxmail.com 交流,如 留下你的建议、期待的新功能等~

Shoulder 不求使用最广,而是致力于成为使用体验最好的开发框架,您任何的使用需求、建议、想法都可以留下来与我们沟通,Shoulder 将与您一起思考攻克疑难,助天下的开发者更好更安心得使用技术助力业务腾飞!

👨‍💼 关于作者

多次参与 Alibaba 核心系统重构与设计,主导过多次 D11 级别大促保障,欢迎技术交流与简历投递~

  • 该项目为作者在业余时间独立开发和维护的个人项目,非阿里巴巴官方产品。

About

🔥A SaaS platform based on Spring-Cloud including User Center(用户中心)、Authorization(认证&授权)、Notification(通知推送能力)、Gateway(网关)... Tech Include(技术选型): Nacos、Sentinel、Feign、Ribbon、RabbitMQ、Zipkin、Docker、Prometheus、Grafana、Elastic Search、Fluentd、Kibana、Power Job

Topics

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages