httpd-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Davi Arnaut <>
Subject SoC 2006
Date Tue, 30 May 2006 02:46:45 GMT

I'm starting to work on my SoC 2006 proposal [1] and I want to let you
guys know how I will eventually proceed and what to expect. Your comments
and suggestions are welcome.

- What I am trying to achieve ?

A cache framework that features three layers of granularity: storage,
protocol and provider. On arrival of a request (ie: http request), the
protocol layer places filters into the protocol pipeline and decides
whether or not this content should be cached. If so, it requests a
a cache provider to the provider. The provider layer then mediates the
and dispatches the data from the protocol modules to the various
storage modules. The I/O operations are handled by the storage layer
(storage modules) which retrieves and stores key/data pairs.

- How I will proceed ?

Initially, I will be refactoring the current mode cache code, without
altering its behavior. There are "functions" (ie: cache_save_filter)
taking more than 500 lines. I will separate those large functions
into smaller functions without changing functionality at all, making
the core more readable. This will also help me fully understand the
structure of the cache code. (Separated patches).

Further down the road, I want to rework the store_body|headers and
recall_body|headers function into single store and recall functions,
moving the http specific bits back to mod_cache and see and see how
well it works (later, those bits will be consolidated in a branding
"new" mod_cache_http - protocol layer). When I hit this point I'm going
to send a new report.

- Notes

Don't expect much work on this in June, my semester is ending (tests..
oh my) and there is the World Soccer Cup (FIFA) which nearly stops
the country (Brazil is expected to win its sixty championship).

Davi Arnaut

1. Redesigning and extending the Apache cache architecture.

View raw message