Zend_Application-AvailableResources-CacheManager.xml 3.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!-- EN-Revision: 24249 -->
  3. <!-- Reviewed: no -->
  4. <sect2 id="zend.application.available-resources.cachemanager">
  5. <title>Zend_Application_Resource_Cachemanager</title>
  6. <para>
  7. <classname>Zend_Application_Resource_Cachemanager</classname> puede ser
  8. utilizado para configurar un grupo de opciones de <classname>Zend_Cache</classname>
  9. para ser usado para cargar caches bajo demanda usando
  10. <classname>Zend_Cache_Manager</classname>
  11. </para>
  12. <para>
  13. Como el Cache Manager usa un mecanismo de carga bajo demanda, las opciones son traducidas
  14. a plantillas de opciones usadas para instanciar un objeto de cache a pedido.
  15. </para>
  16. <example id="zend.application.available-resources.cachemanager.configExample">
  17. <title>Ejemplo de configuración del recurso Cachemanager</title>
  18. <para>
  19. Aquí abajo se muestra un archivo <acronym>INI</acronym> de ejemplo
  20. que muestra como se puede configurar el <classname>Zend_Cache_Manager</classname>.
  21. El formato consta de un prefijo de recurso Cachemanager (
  22. <property>resources.cachemanager</property>) seguido por el nombre de la plantilla
  23. de cache (por ejemplo <property>resources.cachemanager.database</property>)
  24. y finalmente seguido de una opción típica de <classname>Zend_Cache</classname>.
  25. </para>
  26. <programlisting language="ini"><![CDATA[
  27. resources.cachemanager.database.frontend.name = Core
  28. resources.cachemanager.database.frontend.customFrontendNaming = false
  29. resources.cachemanager.database.frontend.options.lifetime = 7200
  30. resources.cachemanager.database.frontend.options.automatic_serialization = true
  31. resources.cachemanager.database.backend.name = File
  32. resources.cachemanager.database.backend.customBackendNaming = false
  33. resources.cachemanager.database.backend.options.cache_dir = "/path/to/cache"
  34. resources.cachemanager.database.frontendBackendAutoload = false
  35. ]]></programlisting>
  36. <para>
  37. En realidad, buscar éste cache desde el Cache Manager es tan simple como
  38. acceder a una instancia del Manager (<classname>Zend_Cache_Manager</classname>)
  39. tomada desde <classname>Zend_Application_Resource_Cachemanager</classname>
  40. y llamar <methodname>$cacheManager->getCache('database');</methodname>.
  41. El siguiente ejemplo fue tomado de un controlador donde la clase bootstrap puede
  42. ser accedida como un parametro de Front Controller (que es automáticamente asignado
  43. durante el proceso de bootstrap). Como se puede ver, el recurso Cache Manager
  44. implementa el método <methodname>getCacheManager()</methodname> para obtener una
  45. instancia de <classname>Zend_Cache_Manager</classname>.
  46. </para>
  47. <programlisting language="php"><![CDATA[
  48. $manager = $this->getFrontController()
  49. ->getParam('bootstrap')
  50. ->getResource('cachemanager')
  51. ->getCacheManager();
  52. $dbCache = $manager->getCache('database');
  53. ]]></programlisting>
  54. <para>
  55. Ver el método <methodname>Zend_Cache::factory()</methodname> para una descripción
  56. de los valores por defecto que se pueden asignar al momento de configurar un cache
  57. como el del ejemplo usando un archivo de configuración <acronym>INI</acronym>.
  58. </para>
  59. </example>
  60. </sect2>