I am trying to find out where to manage the size of streaming attachments in CA API Gateway.
This can be controlled through several different means depending on the granularity:
1) Global Level: Cluster Wide Property io.xmlPartMaxBytes which be default is 2 MB and set in bytes and covers all request XML and non-XML payloads.
Take the Global and narrow down based on service/policy
2) The Listen port on the Advanced tab in the Override maximum message size section for inbound payload
3) Limit message size assertion for both inbound, outbound, context variable payloads for validation of size
4) Routing Assertion such JMS and HTTP can also enforce limits being returned.
Hi Stephen, Thanks for your prompt reply. This helps us determine our strategy and I like the granularity per service.
Another question: Which of these options Global and Service-Based affects attachments? Is it just the global level? and does non-XML payloads translate to attachments?
The io.xmlPartMaxBytes CWP is the main limit for both payload body and attachments. If you are looking at SWA or MTOM, these assertions have a validate assertion that can limit the size of the attachment themselves.
Stephen, if I have the global io.xmlPartMaxBytes CWP set to 2MB, and a validate assertion set to allow 5MB, does the global limit take precedence over the service level assertions?
Global level is always applied first and then assertion and listen port settings are applied after so if the whole payload is more than the Global level it will deny the request.
Retrieving data ...