-1

我有一个 CXF Web 服务,它处理包含 base64 字符串的请求。有些请求需要很长时间,超出了我们的要求。我希望处理完成 3 秒,但大多数请求需要 12 秒。当我跟踪拦截器的处理时,DocLiteralInInterceptor 消耗的时间最多。根据文档,此拦截器检查 SOAPAction 并绑定消息。我正在使用 aegis 绑定并尝试在配置中禁用 schema-validation-enabled 到 false 的验证。但没有任何改善。有没有办法优化绑定过程?

提前致谢。

4

1 回答 1

0

通过内存处理而不是基于文件的处理,设法将时间从 12 秒减少到 200 毫秒。这是通过将内存中处理的 64 KB 的默认 CXF 属性覆盖为 1MB 来完成的,如下所示:

 <cxf:properties>
        <entry key="bus.io.CachedOutputStream.Threshold" value="1000000"/>
        <entry key="bus.io.CachedOutputStream.MaxSize" value="1000000000"/>
</cxf:properties>
于 2018-09-17T07:17:15.437 回答