Zend_Application-AvailableResources-CacheManager.xml 3.4 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!-- EN-Revision: 24312 -->
  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> pode ser
  8. utilizado para configurar um conjunto de <classname>Zend_Cache</classname> opção
  9. de pacotes para uso de caches de carregamento preguiçoso (lazy loading) usando
  10. <classname>Zend_Cache_Manager</classname>
  11. </para>
  12. <para>
  13. Cache Manager tem um mecanismo de carregamento preguiçoso (lazy loading), as opções são traduzidas
  14. para modelos e usados para instanciar um objeto em requisição.
  15. </para>
  16. <example id="zend.application.available-resources.cachemanager.configExample">
  17. <title>Exemplo de configuração do recurso Cachemanager</title>
  18. <para>
  19. Abaixo está um exemplo de arquivo <acronym>INI</acronym> mostrando como
  20. <classname>Zend_Cache_Manager</classname> pode ser configurado. O formato
  21. do recurso Cachemanager prefixo (<property>resources.cachemanager</property>)
  22. seguido do name a ser atribuído para o modelo de cache ou pacote (e.g.
  23. <property>resources.cachemanager.database</property>) e finalmente seguido por uma
  24. típica <classname>Zend_Cache</classname> opção.
  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. Atualmente recuperar esse cache do Cache Manager é tão simples como
  38. acessar uma instância do Manager (<classname>Zend_Cache_Manager</classname>)
  39. recuparada de <classname>Zend_Application_Resource_Cachemanager</classname> e
  40. chamando <methodname>Zend_Cache_Manager::getCache('database')</methodname>. O exemplo
  41. abaixo é tirado de um controlador onde a classe de Inicialização da aplicação (bootstrap) pode ser acessada como
  42. um parâmetro Front Controller (que é atribuído automaticamente durante a inicialização).
  43. Como vocẽ pode ver, o Recurso Cache Manager implementa um método
  44. <methodname>getCacheManager()</methodname> para recuperar uma instãncia
  45. de <classname>Zend_Cache_Manager</classname>.
  46. </para>
  47. <programlisting language="php"><![CDATA[
  48. $manager = $this->getFrontController()
  49. ->getParam('bootstrap')
  50. ->getPluginResource('cachemanager')
  51. ->getCacheManager();
  52. $dbCache = $manager->getCache('database');
  53. ]]></programlisting>
  54. <para>
  55. Veja método <methodname>Zend_Cache::factory()</methodname> para obter uma
  56. descrição dos valores padrão que você pode atribuir ao configurar um
  57. cache através de arquivo de configuração como exemplo <acronym>INI</acronym> acima.
  58. </para>
  59. </example>
  60. </sect2>