我必须将请求 xml 存储到数据库中。我正在使用标头变量来做到这一点。
exchange.getIn().setHeader("inputRequestXml", body);
Run Code Online (Sandbox Code Playgroud)
它适用于某些文件而且我在某些文件中遇到了异常,这似乎是因为文件大小。
413 Request entity too large
Run Code Online (Sandbox Code Playgroud)
所以我通过使用骆驼属性改变了实现,如下所示
exchange.setProperty("inputRequestXml", body);
Run Code Online (Sandbox Code Playgroud)
现在我没有得到例外。但恐怕它会在实际的 PROD 环境中处理更大的文件。所以我想知道,标头变量和属性的大小限制是多少?
Exchange 属性没有限制,它只是一个 HashMap,将键/值存储在 JVM 的内存中。
消息头也只是一个 HashMap,但头是消息契约的一部分,根据您使用的 Camel 组件(传输),这些头可能正在使用中,例如 HTTP 头、SOAP 头、JMS 头等。您可能有由这些传输引起的标头限制。
您可以找到更多详细信息,最好阅读 Camel in Action 2nd edition book 的免费第 1 章,其中解释了重要的 Camel 概念。
| 归档时间: |
|
| 查看次数: |
2613 次 |
| 最近记录: |