Files
SOP/README.md
tanghc 6406f023db 3.2.0
2020-06-17 10:36:22 +08:00

97 lines
3.8 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# SOP(Simple Open Platform)
一个开放平台解决方案项目基于Spring Cloud实现目标让用户快速搭建自己的开放平台。
SOP提供了两种接口调用方式分别是[支付宝开放平台](https://docs.open.alipay.com/api)的调用方式和[淘宝开放平台](http://open.taobao.com/api.htm?docId=285&docType=2)的调用方式。
通过简单的配置后,你的项目就具备了和支付宝开放平台的一样的接口提供能力。
SOP封装了开放平台大部分功能包括签名验证、统一异常处理、统一返回内容 、业务参数验证JSR-303、秘钥管理等未来还会实现更多功能。
## 项目特点
- 接入方式简单,与老项目不冲突,老项目注册到注册中心,然后在方法上加上注解即可。
- 架构松耦合业务代码实现在各自微服务上SOP不参与业务实现这也是Spring Cloud微服务体系带来的好处。
- 扩展简单,开放平台对应的功能各自独立,可以自定义实现自己的需求,如:更改参数,更改签名规则等。
## 谁可以使用这个项目
- 有现成的项目,想改造成开放平台供他人调用
- 有现成的项目,想暴露其中几个接口并通过开放平台供他人调用
- 想搭一个开放平台新项目,并结合微服务的方式去维护
- 对开放平台感兴趣的朋友
以上情况都可以考虑使用SOP
## 架构图
![架构图](https://images.gitee.com/uploads/images/2019/1227/145216_c9b45109_332975.png "sop3.png")
> 如上图所示,整个系统运行后,开发者只需关注微服务中的业务代码,接口变更后重新部署微服务应用即可
## 已完成列表
- 签名验证
- 统一异常处理
- 统一返回内容
- session管理
- 秘钥管理
- 微服务端自动验证JSR-303
- 支持Spring Cloud Gateway
- Admin管理平台统一管理微服务配置管理路由管理微服务上下线
- 接入方管理+秘钥管理
- 接口权限分配
- 文件上传/下载
- 提供基础SDKJava,C#,Python,Go
- 接口限流
- 文档整合
- 应用授权
- 监控日志
- 支持nacos
- 网关动态修改参数
- 预发布/灰度环境切换
- 支持eureka注册中心
## 界面预览
![服务列表](https://images.gitee.com/uploads/images/2019/0711/174825_2856281f_332975.png "服务列表")
![路由管理](https://images.gitee.com/uploads/images/2019/0711/174843_1648591c_332975.png "路由管理")
![限流管理](https://images.gitee.com/uploads/images/2019/0711/174900_9315cc8e_332975.png "限流管理")
![秘钥信息](https://images.gitee.com/uploads/images/2019/0711/174921_bd817533_332975.png "秘钥信息")
![API文档](https://images.gitee.com/uploads/images/2019/0711/174939_97886883_332975.png "API文档")
![沙箱环境](https://images.gitee.com/uploads/images/2019/0711/175226_3f69346a_332975.png "沙箱环境")
## 工程说明
> 运行环境JDK8Maven3[Nacos](https://nacos.io/zh-cn/docs/what-is-nacos.html)Mysql
- doc开发文档
- sop-common公共模块封装常用功能包含签名校验、错误处理、限流等功能
- sop-gateway网关统一访问入口`Spring Cloud Zuul``Spring Cloud Gateway`实现
- sop-example微服务示例含springboot,springmvc示例
- sop-website开放平台对应网站提供文档API、沙箱测试等内容
- sop-auth应用授权服务
- sop-admin后台管理
- sop-sdk基础sdk含Java、C#版本
- sop-test接口调用测试用例
## 分支说明
- master发版分支当前为3.0版本2.x版本见`2.x`分支)
- develop日常开发分支
- eureka使用eureka注册中心
## 相关文档
[开发文档](http://durcframework.gitee.io/sop)
## 沟通交流
Q群167643071
![SOP2群](https://images.gitee.com/uploads/images/2020/0203/103119_bdf84eb6_332975.png "SOP2群.png")