第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機立即綁定

Swagger生成了幾百兆的文檔,該轉移陣地了?

標簽:
Java

小姐姐味道【ID:xjjdog】

作者:十年架构,日百亿流量经验,与你分享

5d51136d0001473b03650174.jpg

流年不利流年不利啊。项目写的太傻,庞大到生成了几百兆的Swagger文档。
通常,有个几兆就到了忍受极限了,这直接爆出几百兆。

问题源于这么一篇文章:小技巧:SpringBoot项目如何让前端开发提高效率?。其中提到使用swagger可以让前端、后端、QA、产品互动起来,很多研发已经用了。但有些项目生成的文章忒TM大了(抱歉我控制不住),在让这些项目愉快的go die之前,还是得想办法处理呀。

接口减肥

第一就是过滤减肥。
看一下你的Controller里写的是不是

@RequestMapping

这个注解将会生成7条api信息。
GET、HEAD、POST、PUT、DELETE、OPTIONS、PATCH

https://img1.sycdn.imooc.com//5d51135e0001aa5606760418.jpg

如果你能够确定调用方法,比如GET,请将注解改成

@GetMapping

不要有循环引用

返回的实体,还有请求的参数,不要循环引用。请干掉这些代码,不要邋遢,设计一点干净的api。

转线下

另一种思路就是把这些api都给捣鼓到线下,倒入到一个统一的地方进行管理。
这些也已经有很多产品了,比如Rap、Nei、YApi。

拿YApi来说(支持源码搭建),可以输入相应swagger的地址,进行一次导入,就可以将api定义转到另一个平台了。

https://img1.sycdn.imooc.com//5d51136d000186b006820343.jpg

YApi还有权限管理功能,应该是这里面做的最Nice的了。如果你想要统一管理、内网隔离,推荐一试。好东西,就不多介绍了。

结尾

转到线下虽然解决了因为api过大造成的服务不稳定,但api的更新同步会是另外一个问题。

不管采用何种方式,合理简洁的api设计是首要的。调用方法固定,不循环引用,最重要的,记得分模块哦。


點擊查看更多內容
TA 點贊

若覺得本文不錯,就分享一下吧!

評論

作者其他優(yōu)質文章

正在加載中
  • 推薦
  • 評論
  • 收藏
  • 共同學習,寫下你的評論
感謝您的支持,我會繼續(xù)努力的~
掃碼打賞,你說多少就多少
贊賞金額會直接到老師賬戶
支付方式
打開微信掃一掃,即可進行掃碼打賞哦
今天注冊有機會得

100積分直接送

付費專欄免費學

大額優(yōu)惠券免費領

立即參與 放棄機會
微信客服

購課補貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網(wǎng)微信公眾號

舉報

0/150
提交
取消