5. Caches Configuration

Several different caching mechanisms are available in CartoWeb for maximum performances. The different types of caches are described in the next chapters.

5.1. Smarty Cache

The templating system used in CartoWeb is Smarty[3], which offers two level of caching for templates. One is compilation of templates into the templates_c directory, and the other is static caching of templates. In CartoWeb, because pages are very dynamic, only the first level of caching is used.

The caching feature of Smarty is totally transparent to the user. However, an option can be set in the client_conf/client.ini configuration file to enhance performances.

  • smartyCompileCheck = true|false: Set this to false in production to improve performance.

Warning

Setting this option to false means that your template won't be updated any more. Pay attention to this if you need to change them on the server.

5.2. WSDL Cache

When using SOAP, and the useWsdl option is set to true in the client_conf/client.ini or server_conf/server.ini, the WSDL generated document can be cached for more performance. This is the purpose of this cache option. So it should be activated in production environment, and turned off during development, if your changes have an impact on the WSDL.

5.3. MapInfo Cache

MapInfo is a structure generated on the server and used by the cartoclient to access static server information. This cache keeps a copy of the MapInfo structure on the client or the server, so that the client does not need ask it everytime, and the server can avoid regenerating it from scratch.

5.4. MapResult Cache

This is a server side only cache, which caches the requests made to the server. This cache works at the Php level, meaning that it can be used when CartoWeb is used in direct or SOAP mode. For the distinction between these two modes, see Section 4.2, “ client.ini. However, the XML SOAP cache is more appropriate when using SOAP mode, see details in the next chapter.

5.5. XML SOAP Cache

This one is also a server side only cache, caching requests at the lowlevel XML SOAP exchange. This means this cache is only effective when direct mode is not used, and can be used for any webservice for which the output only depends on the input arguments.

5.6. Caches Configuration

5.6.1. Rationale

All cache configuration name are in the form noXXXName, where XXX is the name of the cache. This is so, so that if the parameter is not available, its default value will be false, meaning that all caches are active by default, for maximum performance.

Tip

During development, it is recommended that you turn the caches off (set their parameter to true), so that your modifications will not be hidden by cached values.

5.6.2. Client and Server Cache Options

These parameters are available in client_conf/client.ini for client and server_conf/server.ini for server.

  • noWsdlCache = true|false: disables the caching of wsdl (ignored if useWsdl is false)
  • noMapInfoCache = true|false: disables the caching of MapInfo requests

5.6.3. Server Cache Options

These parameters are available in server_conf/server.ini.

  • noMapResultCache = true|false: disables the caching of getMap requests
  • noSoapXMLCache = true|false: disables the caching of SOAP XML requests