]> git.ipfire.org Git - thirdparty/squid.git/commit - src/store.cc
Added initial shared memory cache implementation (MemStore) and integrated it.
authorAlex Rousskov <rousskov@measurement-factory.com>
Tue, 12 Apr 2011 00:33:41 +0000 (18:33 -0600)
committerAlex Rousskov <rousskov@measurement-factory.com>
Tue, 12 Apr 2011 00:33:41 +0000 (18:33 -0600)
commit9487bae9c1514d66499a7015e44648dd9f231d73
tree09e7d8e62cf808c57bd85c07b9196256e4db4ef9
parenta46219b7fa11f62c7ef53525d7a46f608d187c12
Added initial shared memory cache implementation (MemStore) and integrated it.

Like Rock Store, shared memory cache keeps its own compact index of cached
entries using extended Ipc::StoreMap class (MemStoreMap). Like Rock Store, the
cache also struggles to keep its Root.get() results out of the store_table
except during transit.

There are several XXXs and TODOs that still need to be addressed for a more
polished implementation.

Eventually, the non-shared/local memory cache should also be implemented
using a MemStore-like class, I think. This will allow to clearly isolate
local from shared memory cache code.
12 files changed:
src/Makefile.am
src/MemObject.cc
src/MemObject.h
src/MemStore.cc [new file with mode: 0644]
src/MemStore.h [new file with mode: 0644]
src/MemStoreMap.cc [new file with mode: 0644]
src/MemStoreMap.h [new file with mode: 0644]
src/Store.h
src/SwapDir.h
src/main.cc
src/store.cc
src/store_dir.cc