* Optimize memory behaviour of mod_substitute by
* Precreate all needed brigades, save them in the filter context and reuse them in order to avoid frequent recreations using the request pool. * Use a temporary pool for all the needed copy stuff and clean it up every time we passed the passbb brigade down the chain. We can pass the brigade down the chain directly after we processed one bucket from the original brigade as buffering is done by the network filters. * Use transient instead of pool buckets. * There are cases that lead to the exceptional situation of a very large passbb bucket brigade (about 1,000,000 buckets) as a result of processing 4 MB of a file. So I add a flush bucket once I have more than MAX_BUCKET (1000) buckets in the brigade and pass it down the chain to get it send and the passbb bucket brigade cleaned up and its memory reusable again. git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@602469 13f79535-47bb-0310-9956-ffa450edef68
parent
48daf982
Please register or sign in to comment