Welcome, guest | Sign In | My Account | Store | Cart

Notice! PyPM is being replaced with the ActiveState Platform, which enhances PyPM’s build and deploy capabilities. Create your free Platform account to download ActivePython or customize Python with the packages you require and get automatic updates.

Download
ActivePython
INSTALL>
pypm install products.cachesetup

How to install Products.CacheSetup

  1. Download and install ActivePython
  2. Open Command Prompt
  3. Type pypm install products.cachesetup
 Python 2.7Python 3.2Python 3.3
Windows (32-bit)
1.2.1 Available View build log
Windows (64-bit)
1.2.1 Available View build log
Mac OS X (10.5+)
1.2.1 Available View build log
Linux (32-bit)
1.2.1 Available View build log
Linux (64-bit)
1.2.1 Available View build log
 
Author
License
ZPL
Lastest release
version 1.2.1 on Jan 5th, 2011

Introduction

CacheFu speeds up Plone sites transparently using a combination of memory, proxy, and browser caching. Can be used by itself or with Squid, Varnish, and/or Apache. Once installed, your site should run much faster (about 10x faster by itself or about 50x faster with Squid).

CacheFu is a collection of products and recipes. The central product is Products.CacheSetup which when installed via easy_install or buildout takes care of pulling in the rest of the products from the bundle.

The full bundle includes:

Additional optional components include some Squid, Varnish, and Apache configuration helpers. See the installation instructions for more info about these.

The latest information about releases can be found at http://plone.org/products/cachefu

CacheFu has been tested with Plone 2.5+ and Plone 3.0. For earlier Plone versions, try the CacheFu 1.0.3 bundle instead.

Products.CacheSetup Installation

Products.CacheSetup is the python egg version of the old CacheSetup product. The egg version automatically takes care of installing all the dependancies that make up the CacheFu bundle. However, the proxy cache configs must still be downloaded and configured separately.

References to the "Manual" below refer to the new CacheFu manual nearing completion as of this release. Visit the official CacheFu site, http://plone.org/products/cachefu, for the latest instructions.

There are three options for installation, and then some post-installation steps:

(1) Global Install

To install Products.CacheSetup into the global Python environment (or a workingenv) using a traditional Zope 2 instance:

  • Run easy_install Products.CacheSetup.

System Message: WARNING/2 (<string>, line 63)

Bullet list ends without a blank line; unexpected unindent.

Find out how to install setuptools (and EasyInstall) here: http://peak.telecommunity.com/DevCenter/EasyInstall

System Message: WARNING/2 (<string>, line 67)

Bullet list ends without a blank line; unexpected unindent.

and install it into your Zope instance via:

System Message: WARNING/2 (<string>, line 69)

Literal block expected; none found.

python setup.py install --home /path/to/instance

(2) Local Install (standard buildout install)

To install Products.CacheSetup into the local zope instance if you are using zc.buildout and the plone.recipe.zope2instance recipe to manage your project:

  • Add Products.CacheSetup to the list of eggs to

System Message: WARNING/2 (<string>, line 82)

Bullet list ends without a blank line; unexpected unindent.

install:

[buildout]

System Message: ERROR/3 (<string>, line 85)

Inconsistent literal block quoting.

... eggs = ... Products.CacheSetup

  • Re-run buildout:

    System Message: WARNING/2 (<string>, line 92)

    Literal block expected; none found.

$ ./bin/buildout

(3) Local Install (old style Product install)

Because its top level python namespace package is called Products, this package can also be installed in Zope 2 as an old style Zope 2 Product.

For an old style Product install, move (or symlink) the CacheSetup folder of this project (Products.CacheSetup/Products/CacheSetup) into the Products directory of the Zope instance, and restart the server.

Note that in this case, dependancies are not automatically installed so you will have to repeat this process for the rest of the CacheFu bundle: Products.CMFSquidTool, Products.PageCacheManager, and Products.PolicyHTTPCacheManager.

Post-Installation Steps

If installing for the first time:

  • After starting up Zope, install the CacheSetup product

System Message: WARNING/2 (<string>, line 120)

Bullet list ends without a blank line; unexpected unindent.

via the Plone "Add/Remove Products" page

  • Optional: Configure via the "Cache Configuration Tool"

System Message: WARNING/2 (<string>, line 123)

Bullet list ends without a blank line; unexpected unindent.

(see "Configuring CacheFu" in the Manual)

  • Optional: Install and configure Squid or Varnish

System Message: WARNING/2 (<string>, line 126)

Bullet list ends without a blank line; unexpected unindent.

(see below)

If upgrading from a pre-1.2 version:

  • Remove the previous version from the Products

System Message: WARNING/2 (<string>, line 132)

Bullet list ends without a blank line; unexpected unindent.

directory of the instance. CacheSetup, CMFSquidTool, PageCacheManager, and PolicyHTTPCacheManager have all been replaced by Products.CacheSetup, Products.CMFSquidTool, etc. If CacheFu was previously installed in a buildout via plone.recipe.distros, then remove the old CacheFu settings from this section and re-run buildout.

  • Restart Zope
  • Click on the reinstall link next to the CacheSetup

System Message: WARNING/2 (<string>, line 142)

Bullet list ends without a blank line; unexpected unindent.

product in the Plone "Add/Remove Products" page

  • Note: A reinstall keeps your old pre-1.1 configuration

System Message: WARNING/2 (<string>, line 145)

Bullet list ends without a blank line; unexpected unindent.

in a Cache Policy named "Old Cache Policy". Any other cache policies with ids that conflict with the new ones will be backed up and relabeled appropriately

  • Optional: Configure via the "Cache Configuration Tool"

System Message: WARNING/2 (<string>, line 150)

Bullet list ends without a blank line; unexpected unindent.

(see "Configuring CacheFu" in the Manual)

  • Optional: Install and configure Squid or Varnish

System Message: WARNING/2 (<string>, line 153)

Bullet list ends without a blank line; unexpected unindent.

(see below)

  • IMPORTANT: There is no upgrade path from the pre-1.0

System Message: WARNING/2 (<string>, line 156)

Bullet list ends without a blank line; unexpected unindent.

versions of CacheFu. In this case, the old CacheFu products should be completely uninstalled via the Plone "Add/Remove Products" page and then deleted from the Products directory of the instance BEFORE installing the new version.

Proxy Cache Installation and Configuration

Buildout recipes for building and configuring Squid, Varnish, and Apache are available:

Previously, the CacheFu bundle also included a collection of auto-generated proxy configs for Squid, Varnish, and Apache. Starting with version 1.2, this collection is now maintained as a separate download found at http://plone.org/products/cachefu

Changelog

Changelog for the current CacheFu release. For a history of changes prior to this release, see docs/HISTORY.txt

1.2.1 - released 2009-05-17

Release manager: Ricardo Newbery, ric@digitalmarbles.com Compatible with: Plone 3.2, 3.1, 3.0, and 2.5

  • Convert view name to string type before looking up matching cache rules.

System Message: WARNING/2 (<string>, line 198)

Bullet list ends without a blank line; unexpected unindent.

Also fix up base_cache_rule._associateTemplate to ignore NotFound errors. Thanks to Silvio Tomatis for the report. [newbery]

  • Fixed a Plone 2.5 incompatibility in exportimport/atcontent.py.

System Message: WARNING/2 (<string>, line 203)

Bullet list ends without a blank line; unexpected unindent.

Thanks to Kai Lautaportti for the patch. [newbery]

  • Added a workaround to fix creating GenericSetup snapshots.

System Message: WARNING/2 (<string>, line 207)

Bullet list ends without a blank line; unexpected unindent.

[rossp]

  • Added at_download purge URLs for files and images. Fixes a problem

System Message: WARNING/2 (<string>, line 210)

Bullet list ends without a blank line; unexpected unindent.

with stale file downloads. [rossp]

  • Changed over to a "version-less" naming of policies to make GenericSetup

System Message: WARNING/2 (<string>, line 214)

Bullet list ends without a blank line; unexpected unindent.

updates more sane. [newbery]

  • Don't throw an error in Plone 2.5 if all the 'folder_buttons' actions

System Message: WARNING/2 (<string>, line 218)

Bullet list ends without a blank line; unexpected unindent.

have been deleted/hidden. That's an odd configuration since it makes folder_contents views useless but we should still not throw an error. Fixes http://plone.org/products/cachefu/issues/141 [newbery]

  • Fixed a bug where Accept-Encoding was showing up twice in the Vary

System Message: WARNING/2 (<string>, line 224)

Bullet list ends without a blank line; unexpected unindent.

header. Also made setVaryHeader a bit smarter about what values are required so instead of throwing a validation error we now just quietly fix the obvious omissions. [newbery]

  • Added a free-form, syntax-checked field to the list of headers

System Message: WARNING/2 (<string>, line 230)

Bullet list ends without a blank line; unexpected unindent.

that a headerset can apply. We now support surrogate cache control. [newbery]

  • A CMFQuickInstaller uninstall/install after a GenericSetup install

System Message: WARNING/2 (<string>, line 234)

Bullet list ends without a blank line; unexpected unindent.

appears broken somehow. It's as if GS-installed tools do not get properly unregistered by QI (this is unconfirmed), but oddly a zope restart after a QI uninstall fixes this. But if a restart is not done, one consequence is that setTitle never gets called because getToolByName says the cachetool exists already. Since title is a required field but hidden in the edit form, this makes it impossible to enable CacheFu. QI is going away soon anyway so we punt on this bug and just call setTitle unconditionally. [newbery]

  • Added missing workflow binding for CachePolicy entry in the

System Message: WARNING/2 (<string>, line 245)

Bullet list ends without a blank line; unexpected unindent.

GenericSetup workflow.xml settings. [newbery]

  • Added missing title for RuleFolder/HeaderSetFolder entries in the

System Message: WARNING/2 (<string>, line 249)

Bullet list ends without a blank line; unexpected unindent.

GenericSetup cache settings. [newbery]

  • Fixed a GS setuphandlers issue where importing ObjectInitializedEvent

System Message: WARNING/2 (<string>, line 253)

Bullet list ends without a blank line; unexpected unindent.

breaks in Plone 2.5. Thanks to Kai Lautaportti for the report. [newbery]

  • Fixed a boolean issue seen in Plone 2.5 where setEnabled() fails due

System Message: WARNING/2 (<string>, line 257)

Bullet list ends without a blank line; unexpected unindent.

to an inappropriate type comparison. Thanks to Kai Lautaportti for the report. Fixes http://plone.org/products/cachefu/issues/143 [newbery]

  • Fixed up the version checking. We now no longer rely on quickinstaller

System Message: WARNING/2 (<string>, line 262)

Bullet list ends without a blank line; unexpected unindent.

to keep track of the installed version since qi is unreliable on product path changes and during some GS installs. We also now no longer do a "full" disable during version mismatches -- we don't need need to anymore since everything now respects the 'enabled' flag. [newbery]

  • Fixed up the CacheFu Caching Policy Manager so that it respects the

System Message: WARNING/2 (<string>, line 269)

Bullet list ends without a blank line; unexpected unindent.

CacheSetup 'enabled' field. We don't have to delete this tool now in order to turn off caching behavior. [newbery]

  • Use the FasterStringIO from CMFPlone/patches/unicodehacks instead of the

System Message: WARNING/2 (<string>, line 274)

Bullet list ends without a blank line; unexpected unindent.

standard StringIO to avoid issues due to a mix of strings and unicode. [fschulze]

  • Improve the GenericSetup export code:
  • Also export the title field for header and rule sets.
  • PolicyHTTPCacheManagerCacheRule also needs the basic header set fields.
  • Import sub-items before importing the object itself so references

System Message: WARNING/2 (<string>, line 282)

Bullet list ends without a blank line; unexpected unindent.

work correctly.

[wichert]

  • Add missing title for entries in the GenericSetup cache settings.

System Message: WARNING/2 (<string>, line 287)

Bullet list ends without a blank line; unexpected unindent.

[wichert]

  • If we silently ignore the 'enable CacheFu' option when the user is changing

System Message: WARNING/2 (<string>, line 291)

Bullet list ends without a blank line; unexpected unindent.

the cache tool settings show a very clear warning. [wichert]

  • Fixed two return values in patch_cmf.py. In Plone 3 you need to return

System Message: WARNING/2 (<string>, line 295)

Bullet list ends without a blank line; unexpected unindent.

Unicode all the time. Otherwise PageTemplate files in the ZODB would generate an assertion error in pt_render, complaining about the empty string not being Unicode. [hannosch]

  • Add a vocabulary which lists all header sets.

System Message: WARNING/2 (<string>, line 301)

Bullet list ends without a blank line; unexpected unindent.

[wichert]

Subscribe to package updates

Last updated Jan 5th, 2011

Download Stats

Last month:1

What does the lock icon mean?

Builds marked with a lock icon are only available via PyPM to users with a current ActivePython Business Edition subscription.

Need custom builds or support?

ActivePython Enterprise Edition guarantees priority access to technical support, indemnification, expert consulting and quality-assured language builds.

Plan on re-distributing ActivePython?

Get re-distribution rights and eliminate legal risks with ActivePython OEM Edition.