refactor: update Swagger serving and processing method #11052
Merged
+70
−15
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
What this PR does / why we need it?
重构swagger逻辑,老版本的swagger file还在用老方案来存储嵌入文件,把整个 swagger 塞进了内存,导致占用过量无用的开销。
swaggergo 的 files 有 v2 版本用了 embed FS来按需加载,但是包装器gin-swagger没有适配。只好自己造轮子
Summary of your change
现在 core 启动时不会加载这些文件,如果用户不去访问 swagger 内容,就不会有这些东西加进内存,可以节约接近 20M 的内存开支。
但是更建议把 swagger 拆出来单独做一个服务而不是塞进 core, 这玩意99%的用户都用不上。
Please indicate you've done the following: