你这个问题有点不太明确,我分几种常见场景给你说明一下,基本能覆盖 90% 的“Linux Swagger 扩容”需求。如果你指的是某一种具体场景,可以再补充一句。
Linux Server
└── Nginx
└── Swagger UI / Swagger 服务(Java / Node / Docker)
多实例 + 负载均衡
# 启动多个 swagger 服务
java -jar swagger-service.jar --server.port=8081
java -jar swagger-service.jar --server.port=8082
Nginx 配置:
upstream swagger {
server 127.0.0.1:8081;
server 127.0.0.1:8082;
}
server {
listen 80;
location / {
proxy_pass http://swagger;
}
}
✅ 适合:
docker-compose up --scale swagger=3
或:
docker service scale swagger=3
Spring Boot 示例:
@Bean
public GroupedOpenApi adminApi() {
return GroupedOpenApi.builder()
.group("admin")
.pathsToMatch("/admin/**")
.build();
}
@Bean
public GroupedOpenApi userApi() {
return GroupedOpenApi.builder()
.group("user")
.pathsToMatch("/user/**")
.build();
}
.apis(RequestHandlerSelectors.basePackage("com.xxx.api"))
springdoc:
api-docs:
enabled: false
top
htop
free -h
systemctl set-property swagger.service CPUQuota=50%
或 Docker:
docker run -m 512m --cpus=1 swagger
@Schema(hidden = true)@Schema(hidden = true)
client_max_body_size 20m;
proxy_read_timeout 300;
Swagger 本身不需要“扩容”,需要扩容的是:服务实例、接口设计、系统资源或访问方式。
我可以直接给你一份可落地方案。