Мне нужно создать счетчик посетителей для моих веб-сайтов, и мне интересно, лучше ли хранить и читать информацию из файла txt, расположенного где-то на моем хосте или непосредственно из базы данных.
Использование базы данных будет означать, что запись БД будет создана для каждого посетителя, который будет обращаться к сайту, и, честно говоря, я не думаю, что все будет в порядке.
Счетчик файлов – при подсчете. Счетчик БД – при отслеживании посещения, зависимостях, анализе, агрегации.
Чтение файла происходит быстрее, когда файл небольшой . Тем не менее, может быть эффект состояния гонки , когда сайт загружен. При необходимости трудно показать связанные данные. Для этого есть большое решение: системы управления базами данных .
База данных (с хорошим дизайном) позволяет избежать состояния гонки. Также это лучшее решение для большого количества связанных структур данных. Это лучше, когда вам нужно регистрировать посещения, ссылки и т. Д.
Предложения БД: вы можете хранить счетчик в одной строке таблицы global_settings
и обновлять его в каждом посещении страницы, или вы можете получить его, зарегистрировав каждое посещение в таблице visit
(с дополнительными данными, такими как IP
, DateTime
, UserID
и т. Д.). с SELECT COUNT(*) from visit;
,
Здесь есть и другая связанная тема.
Загрузка чего-либо из текстовых файлов является довольно плохой практикой. Использование базы данных – лучшее решение. Базы данных предназначены для хранения больших объемов данных, поэтому это вполне приемлемо.