new caching system to replace old page cache

This commit is contained in:
JT Smith 2006-04-05 20:46:57 +00:00
parent e12ff119af
commit e4392f7449
54 changed files with 718 additions and 167 deletions

View file

@ -26,6 +26,8 @@
- Added archive/unarchive options to CS threads.
- Increased the performance of CS Thread viewing by 500%.
- Added a database cache option as an alternative to memcached.
- Removed page caching system and added individual asset caches, because not
everything should cache in the same way.
- Converted WebGUI to use a new object oriented session system. More details
in migation.txt.
- Added a lot more tests to the test suite.

View file

@ -206,6 +206,17 @@ prepareView() in which HTML and HTTP headers must be set. See any of the
existing assets and wobjects for implementation details.
1.9 Removed Page Caching
The page caching system that was cacheTimeout and cacheTimeoutVisitor on
wobjects has been removed. Not everything caches in the same way and therefore
we can't use a generic caching mechanism as much as we'd like to. Likewise,
the www_view(1) cache override that has traditionally been used in wobjects is
now gone since it's useless. If your asset needs caching, you'll need to add
it yourself. See one of the dozen or so assets that come with WebGUI for
ideas. Examples include Article, SQL Report, File, and Folder.
2. Macro Migration
-------------------

View file

@ -27,6 +27,7 @@ my $session = start(); # this line required
addWorkflow();
convertMessageLogToInbox();
updateCs();
changeCache();
templateParsers();
removeFiles();
addSearchEngine();
@ -45,6 +46,25 @@ addAdManager();
finish($session); # this line required
#-------------------------------------------------
sub changeCache {
print "\tChanging page cache system.\n";
$session->db->write("alter table MessageBoard add column visitorCacheTimeout int not null default 3600");
$session->db->write("alter table Matrix add column visitorCacheTimeout int not null default 3600");
$session->db->write("alter table Collaboration add column visitorCacheTimeout int not null default 3600");
$session->db->write("alter table EventsCalendar add column visitorCacheTimeout int not null default 3600");
$session->db->write("alter table Folder add column visitorCacheTimeout int not null default 3600");
$session->db->write("alter table HttpProxy add column cacheTimeout int not null default 0");
$session->db->write("alter table SQLReport add column cacheTimeout int not null default 0");
$session->db->write("alter table FileAsset add column cacheTimeout int not null default 3600");
$session->db->write("alter table Product add column cacheTimeout int not null default 3600");
$session->db->write("alter table SyndicatedContent add column cacheTimeout int not null default 3600");
$session->db->write("alter table MultiSearch add column cacheTimeout int not null default 3600");
$session->db->write("alter table Article add column cacheTimeout int not null default 3600");
$session->db->write("alter table wobject drop column cacheTimeout");
$session->db->write("alter table wobject drop column cacheTimeoutVisitor");
}
#-------------------------------------------------
sub addAdManager {
print "\tAdding advertising management.\n";