Configure inbound HTTP request chunking
Inbound HTTP request chunking is used to eliminate the restriction on messages greater than 10MB. The 10MB restriction is set because the entire message is buffered in the controller before the HTTP request is dispatched to the servant, therefore, the controller may fail with an out of memory condition when multiple large HTTP messages are processed simultaneously. With chunking enabled, the message is broken up into smaller pieces before it is processed by the web container and application. As a result, only one small chunk is buffered in memory at a time in the controller thus greatly reducing the amount of memory consumed by large HTTP messages. Applications do not require changes to enable inbound HTTP chunking.
Inbound HTTP request chunking, is configured at the web container transport chain level. We can configure each web container chain to enable or disable chunking. When chunking is enabled for a particular chain, we can also configure the maximum chunk size for chunking enabled for each chain.
All HTTP web container chains have chunking enabled by default.
Tasks
- From the admin console, click...
Servers > Server Types > WebSphere application servers > server > Web Container Settings > Web container transport chains.
- Select a transport chain.
- Under Transport Channels select Web container inbound channel ( channel_name ).
- Under Additional Properties select Custom properties to configure inbound HTTP request message chunking. See the article, Web container transport chain custom properties for details about request message chunking settings.
- If the disableRequestMessageChunking property is already defined, select the disableRequestMessageChunking property from the list.
- If the disableRequestMessageChunking property is not defined, click new.
- On the settings page, do one of the following:
- To enable request message chunking, enter the property, disableRequestMessageChunking in the Name field and the enter the value, false, in the Value field. Click Apply or OK so save the custom property changes.
- To disable request message chunking, enter the property, disableRequestMessageChunking in the Name field and the enter the value, true, in the Value field. Click Apply or OK so save the custom property changes.
- Configure message chunk size if request message chunking is enabled. See the article, Web container transport chain custom properties for details on these settings.
- On the Custom Properties page, click New.
- On the settings page, enter the property, maxRequestMessageBodySize, in the Name field and the enter a size, specified in kilobytes, between 32 and 8192 in the Value field.
- Click Apply or OK.
- Click Save on the console task bar to save the configuration changes.
- Restart the server.
Related:
Transport chains HTTP transport settings (ZOS) Web container inbound transport channel settings Web container transport chain custom properties