PHP Class Prado\Web\UI\TCachePageStatePersister
TCachePageStatePersister implements a page state persistent method based on cache.
Page state are stored in cache (e.g. memcache, DB cache, etc.), and only a small token
is passed to the client side to identify the state. This greatly reduces the size of
the page state that needs to be transmitted between the server and the client. Of course,
this is at the cost of using server side resource.
A cache module has to be loaded in order to use TCachePageStatePersister.
By default, TCachePageStatePersister will use the primary cache module.
A non-primary cache module can be used by setting {@link setCacheModuleID CacheModuleID}.
Any cache module, as long as it implements the interface {@link ICache}, may be used.
For example, one can use {@link TDbCache}, {@link TMemCache}, {@link TAPCCache}, etc.
TCachePageStatePersister uses {@link setCacheTimeout CacheTimeout} to limit the data
that stores in cache.
Since server resource is often limited, be cautious if you plan to use TCachePageStatePersister
for high-traffic Web pages. You may consider using a small {@link setCacheTimeout CacheTimeout}.
There are a couple of ways to use TCachePageStatePersister.
One can override the page's {@link TPage::getStatePersister()} method and
create a TCachePageStatePersister instance there.
Or one can configure the pages to use TCachePageStatePersister in page configurations
as follows,
Note in the above, we use StatePersister.CacheModuleID to configure the cache module ID
for the TCachePageStatePersister instance.
The above configuration will affect the pages under the directory containing
this configuration and all its subdirectories.
To configure individual pages to use TCachePageStatePersister, use
Exibir arquivo
Open project: pradosoft/prado
Public Methods
Protected Methods
Method Details
calculateKey()
protected method
public getCache ( ) : Prado\Caching\ICache |
return |
Prado\Caching\ICache |
the cache module being used for data storage |
getCacheModuleID()
public method
getCacheTimeout()
public method
getKeyPrefix()
public method
public getKeyPrefix ( ) : string |
return |
string |
prefix of cache variable name to avoid conflict with other cache data. Defaults to 'statepersister'. |
Loads page state from cache.
setCacheModuleID()
public method
setCacheTimeout()
public method
setKeyPrefix()
public method
public setPage ( TPage $page ) |
$page |
TPage |
|