使用 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
我正在考虑将 Swashbuckle 用于 WebAPI Swagger 文档。
想知道是否需要考虑任何性能影响?
在应用程序启动期间会有轻微的开销,但您真正需要注意的是请求 UI/docs 的 HTTP 调用是一个昂贵且可能很长的 运行 调用。因此,您要确保正在缓存文档。现在可以通过覆盖 SwaggerConfig.cs 注册方法中的默认 swagger 提供程序来实现:
c.CustomProvider(defaultProvider => new CachingSwaggerProvider(defaultProvider));
然后在 CachingSwaggerProvider
class 中实现 ISwaggerProvider
接口。看例子 class in the GitHub documentation