Об этом проекте

Counter представлен как простой инструмент веб-аналитики для отображения количества посетителей веб-приложения. Проект предоставляет хостинг counter.dev и включает демо-версию. В README указано, что технология состоит из небольшого Go-сервера и статических файлов. Данные сохраняются в Redis, а обычная SQL-база используется для архивирования старых данных. Цель проекта — устойчиво обслуживать множество пользователей бесплатно. Низкие затраты достигаются за счёт сбора только агрегированных данных вместо присвоения индивидуальных идентификаторов пользователей через cookies или фингерпринтинг. Это снижает расходы на запросы к базе данных и объём хранимой информации. Подсчёт уникальных пользователей основан на sessionStorage, механизме кэширования браузера и анализе referrer. По утверждению README, это уменьшает сложность и нагрузку на сервер, улучшая конфиденциальность, хотя и ценой снижения детализации о пользователях; проект прямо указывает, что не может и не хочет связывать отдельные просмотры страниц с идентичностью пользователя. Также отмечается, что инфраструктура спроектирована для высокой нагрузки: статический Go-бинарник для HTTP-запросов и in-memory Redis с регулярным резервным копированием на диск. По мнению авторов, это экономичнее типичной реляционной базы данных, адресуемой через скриптовый язык, а выделенные или виртуальные серверы обеспечивают большую производительность за те же деньги по сравнению с PaaS-хостингом, ценой ручного администрирования. Ссылка на проблему (issue) приводит реальные подтверждения эффективности: обслуживание миллионов уникальных посещений в месяц заняло примерно 25% ресурсов недорогого VPS стоимостью 5 долларов в месяц. При нескольких сотнях активных пользователей переменные расходы составляют около одного цента на пользователя в месяц плюс домен и дополнительный сервис резервного копирования VPS; взносы покрывают эти затраты. Для локальной разработки рекомендуется выполнить make devserver; требуется Redis-сервер на localhost по умолчанию. Инструкции для самостоятельного размещения привязаны к отдельному репозиторию counter.dev-selfhost. Блог построен на Pelican: шаблоны находятся в templates/blog, статьи — в posts, генерация выполняется через make blog;自动生成 при каждом деплое. В FAQ упоминается неопределённость относительно необходимости баннера cookies, связанная с ePrivacy Directive и проектом нового ePrivacy Regulation. Соавторы: Ana Maria Sandoval Jimenez (data scientist) и Irae Hueck Costa (ihucos, backend developer). Counter лицензирован под AGPL и является открытым исходным кодом ради прозрачности.