Счетчик посещений: какие оптимизации?
а скопировать базу и смотреть с другого серва/компа низя?
а то он так и помрёт, не увидев СУБД
А нафиг тут база с инсертами? Сервер пишет логи, это дешево и вообще не нагружает. Логи потом собираешь и анализируешь отдельно - или специальным софтом, или путем разовой загрузки в отдельную базу для анализа. Есть и промежуточные решения типа вебалайзера, когда он раз в сутки берет очередную порцию логов и добавляет в накапливаемую статистику.
Вообще вопрос в том, как работают сторонние счетчики: хочется написать свое подобие их, чтоб работало так же быстро
Но когда обыкновенным людям надо получать статистику, обычно отказываются от идеи realtime-а, и первичные данные собирают чем-то несложным и одновременно быстрым (это может быть даже самописная программа, а может просто какой-то разборщик логов а потом уже полученные и агрегированные данные сохраняют в базе данных для анализа и репортинга.
А, да, еще забыл добавить: доступ к серваку у меня ограничен
З.Ы. статистика про каждого клиента нужна, чтоб знать, откуда он на какую страницу сайта пришел
бля, ты логов никогда не видел в своей жизни что-ли?
Пациент в его текущем состоянии этого ниасилит, поэтому что ни советуй, всё впустую.
реалтайм для обработки не нужен, аганахрена тогда действительно весь этот шлак писать в БД?
InnoDB в некоторых случаях сосет по производительности, если сравнивать с MyISAM ROW_FORMAT=FIXED и пользованием INSERT DELAYED.
Случай достаточно вырожден, но тем не менее
спасибо хоть, что не заминусовали в аццкий минус...
Как-то я всё это не так изначально решил делать...
Можно сносить в мусор, ага
Оставить комментарий
uncle17
все же: как это считается, если для каждого визитера нужно поймать, кто, откуда, куда и когда, и при этом не нагружать базу при запросе отчетов?Да и при инсертах не хочется 399% загрузки MySQL, блин.
Порядок - 1Е+7 записей в месяц, отведено на это четверть трехгодичной давности сервера (380 G4) по ресурсам
Как вообще это делается?