# Folour (06.04.2015 / 20:45)
При добавлении новых нужно будет весь кеш сбрасывать
ну вообще логично кэш сбрасывать после добавления, особенно если по структуре оно необходимо, я бы еще помозговал над этим, может быть заюзать last_insert_id для ключа, сделать какую нибудь прослойку, которая сначала с кэша иды например вытащит, тех файлов которые нужны, потом сам список составит, и обновлять меньше
Это конечно всё круто, но нафига? Неужели действительно такие высокие нагрузки, что приходится прибегать к таким изощрённым действам?
в общем решил затестить, как оно на 20к будет работать гг
код:
use \Folour\system\Cache;
$a = [];
$i = 0;
while($i < 20000) {
$a[] = (object)[
'id' => 123,
'name' => 'file',
'rtr' => 134567,
'key' => $i
];
}
Cache::set('test', $a, 10);
$s = microtime(1);
$a = Cache::get('test');
$_a = array_filter($a, function($item) {
return ($item->key >= 10000 && $item->key < 10000 + 11);
});
echo round(microtime(1) - $s, 6);
даже массив не создался, 512 мегов не хватило скрипту
Folour, да оставь ты работу с идами на страницу на мускуле, быбрать по лимиту ид, и с кэша тащи имена файлов
А, ну да, забыл в цикле ++$i написать гг
Крч, 20к записей, выборка для страницы 1001 заняла 0.127942.
Думаю все-же для каждой страницы по кешу лучше будет.
# reaper (06.04.2015 / 20:57)
http://ruhighload.com/index.ph ... B5%D0%B
Я же не просил подсказать системы кеширования гг
И да, там экзотика какая-то.
# Folour (06.04.2015 / 21:03)
Я же не просил подсказать системы кеширования гг
И да, там экзотика какая-то.
Там идеальный вариант кэширования Гг.
# Folour (06.04.2015 / 21:33)
Если только сарказм гг
Не, на самом деле достаточно стоящий вариант )
Скорость реально возрастает хорошо.