Swagger UI

生产环境-微服务实践架构(springcloud)流程图分享

☆樱花仙子☆ 提交于 2019-11-28 09:25:59
线上微服务架构图 注: 绘图工具: https://www.processon.com 其他信息: 接口文档管理: swagger ,后期转入bootstrap-swagger-ui (其支持自定义http header 等参数)。同时利用yapi来进行跨部门间的对接 yapi 地址: https://github.com/ymfe/yapi yapi支持导入swagger.json文件,从而自动生成api文档,同时支持mock测试,web权限管理 mysql 链接原先是通过直链主库ip,后期改为 vip 链接(保证主库宕机时的ip指向漂移) 金丝雀与灰度发布 在开发中,目前思路是在请求参数中绑定上版本version来确定流量指向,在网关层面做分发。 参考链接: https://github.com/siaorg/sia-gateway 尝试在网关层面做过一次流量请求次数统计,最开始是 atomicInteger ,但因为其底层的CAS机制在高并发的时候表现较差,故改为JDK8中的 LongAddr 类来实现(实际性能测试:1000个线程并发,耗时约为 atomicInteger 的十分之一) 链路监控引入 jaeger ( Jaeger 是Uber推出的一款开源分布式追踪系统,兼容 OpenTracing API ),链路追踪数据存储到ES中,并配合grafana,

教育

这一生的挚爱 提交于 2019-11-27 09:49:43
创建父工程guli-parent 在项目guli下创建模块:使用 Spring Initializr 快速初始化一个 Spring Boot 模块,版本:2.0.7.RELEASE 配置 pom.xml (修改版本为 :2.0.7.RELEASE <artifactId> 节点后面添加 <packaging>pom</packaging> spring-boot-starter 改成 spring-boot-starter-web) <properties> <java.version>1.8</java.version> <guli.version>0.0.1-SNAPSHOT</guli.version> <mybatis-plus.version>3.0.5</mybatis-plus.version> <velocity.version>2.0</velocity.version> <swagger.version>2.7.0</swagger.version> </properties>替换 <java.version>1.8</java.version> <dependencyManagement> <dependencies> <!--mybatis-plus 持久层--> <dependency> <groupId>com.baomidou</groupId>

Spring Boot: Spring Doc生成OpenAPI3.0文档

时光怂恿深爱的人放手 提交于 2019-11-25 21:12:55
1. 概述 公司正好最近在整理项目的文档,且文档对于构建REST API来说是至关重要的。在这篇文章中,我将介绍 Spring Doc , 一个基于 OpenAPI 3 规范简化了 Spring Boot 1.x 和 2.x 应用程序的API文档的生成和维护的工具。 2. 设置springdoc-openapi 如果想让 springdoc-openapi 为我们的API生成标准的 OpenAPI 3 文档, 只需要添加 [springdoc-openapi-core]( https://search.maven.org/search?q=g:org.springdoc AND a:springdoc-openapi-core&core=gav) 依赖到 pom.xml : <dependency> <groupid>org.springdoc</groupid> <artifactid>springdoc-openapi-core</artifactid> <version>1.1.45</version> </dependency> 添加完成后,启动应用程序,即可访问默认路径 /v3/api-docs 查看文档,如下所示: http://localhost:8080/v3/api-docs/ 如果想要自定义路径,可在 application.properties 文件中指定 :