프로젝트 소개
Counter는 웹 애플리케이션에 얼마나 많은 사람이 방문하는지 보여주는 간단한 웹 분석 도구로 제시됩니다. counter.dev 호스팅 서비스와 데모를 제공하며, README에는 작은 Go 서버와 정적 자산으로 구성되었다고 설명됩니다. 데이터는 Redis에 저장되고, 오래된 데이터는 일반 SQL 데이터베이스로 아카이브됩니다.
프로젝트의 목표는 지속 가능한 방식으로 많은 사용자를 무료로 제공하는 것입니다. 쿠키나 지문 인식으로 개별 사용자 ID를 할당하는 대신 집계 데이터만 수집함으로써 비용을 낮춘다고 설명합니다. 이는 데이터베이스 쿼리 비용과 저장되는 데이터 양을 줄입니다. 고유 사용자 카운팅은 sessionStorage, 브라우저 캐시 메커니즘, 리퍼러 검토에 의존한다고 알려져 있습니다. README는 서버 복잡도와 부하를 줄이고 프라이버시를 개선하지만 사용자에 대해 덜 알게 된다고 명시합니다. 이 프로젝트는 단일 페이지 뷰를 사용자 식별에 연결하지 않으며 연결할 수도 없다고 말합니다. 또한 인프라는 HTTP 요청용 정적 Go 바이너리와 디스크에 주기적으로 백업되는 인메모리 Redis 데이터베이스를 사용해 높은 부하에 대응하도록 설계되었습니다. README는 이게 스크립트 언어로 접근하는 일반적인 관계형 데이터베이스보다 더 경제적이라고 주장하며, 전용 또는 가상 서버는 PaaS 호스팅보다 같은 비용으로 더 많은 성능을 제공할 수 있다고 말합니다. 단, 수동 관리가 필요하다는 단점이 있습니다.
연결된 이슈는 실제 검증 사례를 제시합니다: 월간 수백만 건의 고유 방문을 처리하는 데 약 5달러 규모의 작은 VPS 용량의 약 25%만 사용되었다고 합니다. 수백 명의 활성 사용자 기준으로 비고정 비용은 사용자당 월 약 1센트이며, 도메인과 추가 VPS 백업 서비스에 대한 기부금이 비용을 커버한다고 합니다.
로컬 개발을 위해 README는 make devserver 실행을 안내하며 로컬포트에서 Redis 서버가 필요하다고 알립니다. 자체 호스팅 지침은 별도 counter.dev-selfhost 저장소에 연결되어 있습니다. 블로그는 Pelican을 기반으로 하며, 템플릿은 templates/blog에,articles는 posts에 있고 make blog로 생성됩니다. 배포 시마다 자동 생성됩니다. FAQ는 ePrivacy 지침과 새로운 ePrivacy 규제 제안 참조와 함께 쿠키 배너 회피 가능성에 대해 불확실성을 표시합니다. 기여자는 데이터 과학자 Ana Maria Sandoval Jimenez과 백엔드 개발자 Irae Hueck Costa(ihucos)입니다. Counter는 투명성을 위해 AGPL 라이선스로 오픈소스입니다.
Comments
0 Rating appears after 10 ratings
Sign in to join the discussion.