Я хочу создать счетчик посещений для моего приложения ColdFusion. Я не хочу, чтобы таблица обращений к базе данных обновлялась при каждом обращении к странице. В идеале я хотел бы агрегировать хиты в области приложения или кэше в структуре какого-либо типа, а затем периодически сохранять их.
У меня есть идеи до сих пор:.
Идея 1
- Создайте структуру приложения или кэша для хранения пары ключ-значение pageId и pageHits.
- При каждом обращении к странице проверяйте наличие cookie-файла pageId/ip-адреса.
- а. Если он существует, ничего не делайте.
- б. Если это не так, установите его и обновите структуру обращений в приложении или кеше.
Проблема: я не знаю, как получать данные структуры в базу данных с перерывами/по истечении определенного времени. Запланированное мероприятие?
Идея 2
Нет печенья; сохранить pageId/IP-адрес в своей собственной структуре кеша/приложения.
Проблема Я не знаю, как структурировать структуры/массивы данных для хранения информации. Кажется сложным с циклами массива и поиском структуры. И у меня все еще та же проблема, что и у идеи.
Есть советы, идеи, критика? В частности, мне нужна помощь в определении структур данных для идеи 2. Меня больше интересует производительность, чем целостность данных, и я доволен только решением CF9. Должен добавить, что я хочу денормализировать данные в столбце посещений страниц для каждого идентификатора страницы. Мне не нужны нормализованные таблицы данных.