Я пишу аналитический инструмент, который будет регистрировать каждый раз при попадании на страницу. У меня проблема в том, что количество показов может стать очень высоким, и мне, возможно, потребуется обрабатывать миллионы в день или, по крайней мере, ~ 300 в секунду (у меня есть мнение, что они могут достигать 10k в секунду). Моя текущая настройка - регистрация php каждый раз, когда к странице обращаются как к вставке непосредственно в таблицу innodb MySQL, это становится медленным, и сервер иногда пропускает попадание, что не так уж плохо для аналитики, но не идеально. Моя идея состоит в том, чтобы поместить memcache впереди и сначала записать в него все показы, а затем запустить запланированный пакетный процесс, который берет показания из memcache и затем помещает их в базу данных в тихом периоде, например. 3 утра. Итак, мой вопрос
1) Это правильный способ сделать это? В идеале я не хочу внедрять какие-либо новые технологии или реализовывать базы данных NoSQL, такие как mongo или couch.
2) Как бы я сделал это в memcache? Поскольку невозможно найти все ключи, находящиеся в данный момент в кеше, я думал об установке счетчика, который увеличивается с каждым показом, а затем ключа со счетчиком в качестве идентификатора, содержащего данные, пакетный процесс зацикливался бы от своей последней позиции. к счетчику и обработать эти записи, а затем установить его последнюю позицию на текущий счетчик ..
Любая помощь приветствуется
Приветствия