Skip to content

fix: 모든 광고 로딩이후 광고 계속 로딩하는 문제점.#498

Merged
sdk-kr merged 1 commit into
damoang:mainfrom
xperia-query:fix/ads
Mar 10, 2026
Merged

fix: 모든 광고 로딩이후 광고 계속 로딩하는 문제점.#498
sdk-kr merged 1 commit into
damoang:mainfrom
xperia-query:fix/ads

Conversation

@xperia-query
Copy link
Copy Markdown
Contributor

시간이 지날수록 증가하여 10000 리퀘스트 이상으로 올라갑니다.

  • 빈 재시도 횟수를 제한합니다.
  • 타이머 dedupe, 초기 display/refresh 중복 제거,

문제 증상 스크린샷
image

시간이 지날수록 증가하여 1000 리퀘스트 이상으로 올라갑니다.
* 빈 재시도 횟수를 제한합니다.
* 타이머 dedupe, 초기 display/refresh 중복 제거,
Copy link
Copy Markdown
Contributor

@sdk-kr sdk-kr left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

깔끔한 수정입니다! 👍

핵심 개선사항 정리:

  1. 이벤트 리스너 중복 등록 제거 — 슬롯마다 slotRenderEnded 리스너를 등록하던 것을 글로벌 1회 등록 + renderCallbacks Map으로 전환. 리스너 누적으로 인한 메모리/성능 문제 해결.

  2. 빈 광고 재시도 횟수 제한 (최대 3회) — 기존에는 고정 타이머 2개가 무조건 실행되어 빈 슬롯이 계속 refresh를 유발했는데, emptyRetryCount + emptyRetryTimeout 가드로 dedupe 및 횟수 제한.

  3. display 후 중복 refresh 제거googletag.display()가 이미 초기 광고 요청을 트리거하므로, SPA cooldown + 별도 refresh() 호출 로직 제거. 이게 10000+ 요청의 주요 원인이었을 것으로 보입니다.

  4. 슬롯 중복 정의 방지mgr.slotsMap.has(item.divId) 체크 추가로 동일 div에 슬롯 재정의 차단.

  5. cleanup 보강 — destroy 시 emptyRetryTimeout 정리, renderCallbacks 삭제.

LGTM!

@sdk-kr sdk-kr merged commit df969be into damoang:main Mar 10, 2026
7 of 12 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants