使用 Swashbuckle 对性能的影响

Performance impact of using Swashbuckle

我正在考虑将 Swashbuckle 用于 WebAPI Swagger 文档。

想知道是否需要考虑任何性能影响?

在应用程序启动期间会有轻微的开销,但您真正需要注意的是请求 UI/docs 的 HTTP 调用是一个昂贵且可能很长的 运行 调用。因此,您要确保正在缓存文档。现在可以通过覆盖 SwaggerConfig.cs 注册方法中的默认 swagger 提供程序来实现:

c.CustomProvider(defaultProvider => new CachingSwaggerProvider(defaultProvider));

然后在 CachingSwaggerProvider class 中实现 ISwaggerProvider 接口。看例子 class in the GitHub documentation