봇 크롤링에 대응한 접근 누적 딜레이 extend
GPT bot/ 구글 봇 등에 크롤링에 트래픽이 너무 미친듯이 나와서 해당 부분 개선코자 구축했습니다.
정상 작동 및 폴더 생성 전부 확인했습니다만.
오류나 개선 사항있으시면 댓글 남겨주세요!!!!
해당 기능은 커서, 재미나이, GPT 를 모두 활용하여 검토하고 기획하여 작성했습니다.
더 좋은 개선 방안이 있다면 알려주세요~ 꼭이요\
========
봇 크롤링 딜레이 로직 요약
1. 봇 판별
User Agent로 봇 여부 확인
화이트리스트 봇(Google, Bing 등): 0.1초 기준
일반 봇: 0.5초 기준
2. IP 식별
Cloudflare → X-Forwarded-For → REMOTE_ADDR 순서로 실제 IP 확인
IPv6 지원
3. 딜레이 체크 (파일 기반)
파일명: md5(IP).txt
저장 형식: 마지막접근시간|딜레이초|위반횟수|첫위반시간
4. 처리 로직
1. 24시간 지났으면 → 파일 삭제, 통과2. 딜레이 중이면: - 아직 시간 안 지남 → HTTP 429 전송 - 시간 지남 → 딜레이 한 단계 완화 (또는 해제)3. 딜레이 없으면: - 0.5초(또는 0.1초) 미만 접근 → 위반 횟수 증가, 딜레이 부과 - 0.5초(또는 0.1초) 이상 접근 → 정상, 파일 삭제
5. 딜레이 스케줄
화이트리스트: 1분 → 5분 → 10분 → 30분 → 1시간
일반 봇: 10분 → 1시간 → 3시간 → 6시간 → 12시간 → 24시간
6. 성능 최적화
Cleanup: 0.1% 확률로 실행 (최대 100개 파일만 체크)
정상 접근 시 파일 삭제로 I/O 최소화
핵심: 봇이 너무 빠르게 접근하면 딜레이를 누적시키고, 규칙을 지키면 완화하는 방식.
정상 작동 및 폴더 생성 전부 확인했습니다만.
오류나 개선 사항있으시면 댓글 남겨주세요!!!!
해당 기능은 커서, 재미나이, GPT 를 모두 활용하여 검토하고 기획하여 작성했습니다.
더 좋은 개선 방안이 있다면 알려주세요~ 꼭이요\
========
봇 크롤링 딜레이 로직 요약
1. 봇 판별
User Agent로 봇 여부 확인
화이트리스트 봇(Google, Bing 등): 0.1초 기준
일반 봇: 0.5초 기준
2. IP 식별
Cloudflare → X-Forwarded-For → REMOTE_ADDR 순서로 실제 IP 확인
IPv6 지원
3. 딜레이 체크 (파일 기반)
파일명: md5(IP).txt
저장 형식: 마지막접근시간|딜레이초|위반횟수|첫위반시간
4. 처리 로직
1. 24시간 지났으면 → 파일 삭제, 통과2. 딜레이 중이면: - 아직 시간 안 지남 → HTTP 429 전송 - 시간 지남 → 딜레이 한 단계 완화 (또는 해제)3. 딜레이 없으면: - 0.5초(또는 0.1초) 미만 접근 → 위반 횟수 증가, 딜레이 부과 - 0.5초(또는 0.1초) 이상 접근 → 정상, 파일 삭제
5. 딜레이 스케줄
화이트리스트: 1분 → 5분 → 10분 → 30분 → 1시간
일반 봇: 10분 → 1시간 → 3시간 → 6시간 → 12시간 → 24시간
6. 성능 최적화
Cleanup: 0.1% 확률로 실행 (최대 100개 파일만 체크)
정상 접근 시 파일 삭제로 I/O 최소화
핵심: 봇이 너무 빠르게 접근하면 딜레이를 누적시키고, 규칙을 지키면 완화하는 방식.
첨부파일
총 4명이 반응했습니다
|
댓글을 작성하시려면 로그인이 필요합니다.
로그인
댓글 6개