현대 링크 단축기
이 프로젝트는 .NET 8의 최신 기술로 구축 된 확장 가능하고 기능이 풍부한 링크 쇼트너 입니다. 유지 보수, 테스트 가능성 및 확장 성을 보장하기 위해 계층 아키텍처를 사용합니다. 응용 프로그램은 백엔드로서 ASP.NET Core Web API 및 Blazor WebAssembly 프론트 엔드로 구성됩니다. 광범위한 기술과 설계 패턴을 활용하여 안전하고 효율적이며 사용자 친화적 인 경험을 제공합니다.
주요 기능
- 보안 링크 단축 : 충돌 관리와 함께 SHA-256 해싱 사용
- 사용자 정의 링크 지원 : 개인화 된 짧은 링크 생성 (프리미엄 기능)
- 수익 창출 : 광고별로 수익을 창출합니다.
- 수익 화 리디렉션 및 일반 리디렉션을 모두 지원합니다
- 실시간 통계 : Signalr을 통한 라이브 추적 및 업데이트
- 배치 처리 : 벌크 링크 단축 작업 지원
- 고급 분석 : IP 주소 및 사용자 에이전트를 기반으로 한 지리 정보 및 장치 정보를 포함한 자세한 통찰력.
- 보안 인증 : XSS 및 CSRF 보호 기능이있는 JWT 기반 인증.
- 속도 제한 : 엔드 포인트 감도에 따른 지능형 요청 조절기
- 한 번의 클릭으로 링크 관리 :
- 링크 활성화 토글.
- 토글 링크 수익 창출 .
- 맞춤 충돌 처리
- 비수체 해시 보증
? 보안 기능
- HTTP 전용 쿠키 기반 JWT 및 새로 고침 토큰 스토리지.
- 토큰 위조 방지를 통한 CSRF 보호 .
- bcrypt를 사용한 비밀번호 해싱.
- 속도 제한 메커니즘.
- XSS 공격 방지 조치.
- 봇을 방지하기위한 페이지의 CloudFlare Thangstile 통합.
- 외부 신뢰할 수있는 서비스를 사용한 IP 및 사용자 에이전트 처리.
- 사용자 비밀 API 키 또는 기타 중요한 정보의 누출을 방지하기 위해 사용자 비밀 사용.
- 역할 기반 승인
- 엄격한 유형-안전 데이터 검증
기술 스택
백엔드 (.NET 8)
- 건축 : 계층 구조
- API : ASP.NET Core Web API
- 인증 : 안전한 쿠키 스토리지가있는 JWT
- 데이터베이스 : PostgreSQL (Dockerized)
- 캐싱 및 메시지 중개인 : Redis (Dockerized)
- ORM : 엔티티 프레임 워크 코어
- 실시간 커뮤니케이션 : Signalr
- 지불 처리 : zibalclient
프론트 엔드 (.NET 8)
- 기술 : Blazor WebAssembly
- CSS 프레임 워크 : 부트 스트랩
- 사용자 정의 HTTP 처리기를 사용하여 요청을 인증 합니다
- 승인 : .NET 인증 주 공급자 사용
- 실시간 커뮤니케이션 : SignalR Client
- LocalStorage 및 알림 : Blazored
- 아이콘 : Blazorise 글꼴 멋진 아이콘
- CARTCHA : Blazor Thangstile
주요 패키지
- Signalr : 실시간 커뮤니케이션 용
- DTO 매핑 용 오토 퍼프
- 요청 유효성 검사를위한 유동성 Validation
- IP 기반 분석 용 IPINFO
- PostgreSQL 연결을위한 NPGSQL
- 비밀번호 보안을위한 bcrypt.net
- 대시 보드에 차트를 표시하기위한 Chart.js
- Blazored : LocalStorage 및 알림 표시
- Blazorise : 아이콘과 같은 UI 요소의 경우
? 하부 구조
- 컨테이너화 된 PostgreSQL 데이터베이스
- 캐싱 및 메시지 중개를위한 컨테이너화 된 Redis
- 비동기 작업을위한 배경 서비스
- 인증 코드에 대한 이메일 서비스
? 고급 기능
수익 창출
- 광고 : 리디렉션 페이지의 광고를 최대 8 개의 광고로 표시하여 돈을 벌 수있는 지원.
데이터 관리
- 사용자 정의 페이지 매김 구현
- 원자력을 보장하기위한 링크 운영을위한 거래 관리
- 충돌 처리 전략
- 비수체 해시 생성
캐싱 시스템
- 일반적인 Redis 캐싱 구현
- 배치 캐싱 지원
- 교통량이 많은 시나리오에 대한 최적화 된 성능
- 배경 서비스 커뮤니케이션을위한 Redis 대기열
해석학
- 자세한 방문자 분석
- 장치 및 브라우저 감지
- 지리적 위치 추적
- IP 및 사용자 에이전트 데이터의 배경 처리
- 고객 통찰력이 포함 된 포괄적 인 사용자 대시 보드 :
- 지난 달의 클릭을 보여주는 차트.
- 하루 중 몇 시점에 표시되는 차트는 클릭이 발생할 가능성이 더 높습니다.
- 매주 클릭 성장
- 총 링크 수
- 어제 클릭
- 링크 당 평균 클릭
- 상단 클릭 된 링크 목록
- 클릭 커가 출신입니다.
- 최고의 장치 클릭 어는 사용합니다.
- 가장 최근의 짧은 링크 5 개를 보여주는 테이블.
링크 단축
- 단일 및 배치 링크 단축을 지원합니다
- 단축 된 링크의 활성화 및 수익 창출을 위해 토글
- 사용자 프로필 및 쇼트너 페이지에서 짧은 링크를 관리하기위한 사용하기 쉬운 사용자 정의 테이블.
실시간 업데이트
- 라이브 통계에 대한 신호 통합
- 즉각적인 균형 및 프로필 통계 업데이트
- 실시간 사용자 프로필 동기화