APC позволяет хранить данные внутри ключей, но вы не можете сгруппировать эти ключи .
Итак, если я хочу иметь группу под названием «статьи», и внутри этой группы у меня будут ключи, которые принимают форму идентификатора статьи, я не могу сделать это легко.
articles -> 5 -> cached data
-> 10 -> cached data
-> 17 -> cached data
...
Я мог бы префикс ключа с именем "группы", например:
article_5 -> cached data
article_10 -> cached data
article_17 -> cached data
...
Но это делает невозможным удаление всей группы, если я хочу: (
Рабочим решением было бы хранить многомерные массивы (это это то, что я делаю сейчас), но я не думаю, что это хорошо, потому что, когда я хочу получить доступ / или удалить кэшированные данные, мне нужно сначала получить всю группу.Итак, если в группе миллион статей, вы можете представить себе, какой массив я буду повторять и искать
У вас есть лучшие идеи о том, как я могу достичь групповой вещи?
__paths
, который, по сути, представляет собой многомерный массив, содержащий полные пути к ключам с префиксом для всех других записей в кэше. И когда я запрашиваю или удаляю кеш, я использую этот массив как ссылку, чтобы быстро найти ключ (или группу ключей), который мне нужно удалить, поэтому мне не нужно хранить массивы и перебирать все ключи ...