Starting point
As you should know Squid uses a StoreEntry structure for each and every object it has in the cache, but there is also a number of other related structures
- StoreEntry
- The main structure for the objects
- MD5 hash
- The MD5 hash is kept separately
- Removal info
- The removal policy also has a structure for each and every object
- MemObject (not a problem)
- For active or hot cached objects there is also a MemObject structure describing the in-memory object.
There are a couple of problems with this
- For each structure there are memory allocation overhead. Usually in the range of 16 bytes.
- Some of the structures (most notably StoreEntry) contains information that are:
- not strictly needed to have full speed access to
- oversized and can be shrunk down to a smaller data type
- redundant and can be collapsed into fewer fields
Structures
NOT DONE YET. HERE THE CURRENT STRUCTURE LAYOUTS AND THEIR EXACT RELATIONSHIPS WILL BE PRESENTED
$Id: startingpoint.html,v 1.2 2001/02/10 19:35:15 hno Exp $