Hi,

In your specific case, the sqlite backend sounds better (because it
will use an index for the clean method).

Sometimes, it's not a good idea to cache too many things. Maybe you
would have better results with caching only HTML final results than
intermediate database calls.

Regards




On Mon, Apr 21, 2008 at 2:56 PM, Ralf Eggert <[EMAIL PROTECTED]> wrote:
> Hi everybody,
>
>  I use Zend_Cache with the "Core" Frontend and the "File" backend to
>  cache results (serialized arrays) of some database selects to files. I
>  have set the "hashed_directory_level" to 2.
>
>  The cache ids are build from the class name of the model and the method
>  name which includes the database select. Then all parameters of the
>  method are added. I use the underscore as a delimiter. Here are some
>  examples for my cache ids:
>
>  - Destination_Model_Main_fetchSuperiorDestinations_1
>  - Member_Model_Main_fetchMembersByDestination_1236_44_future
>  - Cms_Model_Menu_fetchContextMenu_de_destination_index_update
>  - Destination_Model_Main_fetchCountPerDestinationAndCategory_44
>
>  Besides these cache ids every cache file gets an tag similar to the
>  cache id, but only the main parameter passed to the method is used. For
>  my examples above the tags are:
>
>  - Destination_Model_Main_fetchSuperiorDestinations_1
>  - Member_Model_Main_fetchMembersByDestination_1236
>  - Cms_Model_Menu_fetchContextMenu_de
>  - Destination_Model_Main_fetchCountPerDestinationAndCategory_44
>
>  Now here is my problem. I have 10.000 and even many more cache files in
>  my data cache directory. They are separated into the 2-level directory
>  structure which Zend_Cache provides. Now when something happens that
>  needs a cache clearung (e.g. new forum post), the clearing of all cache
>  files for a specific tag takes a very long time (sometimes > 10 seconds).
>
>  I guess this is due to the fact, that Zend_Cache needs to read the whole
>  structure of my cache directory to identify all files with the specific
>  tag. Can someone confirm this? How can I improve my setup to solve this
>  performance issues?
>
>  One idea was to create one cache object for each class-method
>  combination (I have about 30 of these combinations) to minimize the
>  number of files that need to be accessed to find all cache files for a
>  specific tag. But I am not sure if this is the best solution.
>
>  Is Zend_Cache able to derive the directory structure from the cache id?
>  If yes, how?
>
>  I hope all of this doesn't sound too confusing and I am looking forward
>  for any help.
>
>  Thanks and Best regards,
>
>  Ralf
>



-- 
Fabien MARTY
[EMAIL PROTECTED]

Reply via email to