feat(seo): 사이트맵 안전 서빙·잡 견고화·분할 설정 + 캐시 설정 정합
봇 요청 스레드의 동기 생성을 제거하고 디스크 스트리밍 서빙으로 전환했다. 신선도가 만료되면 생성 잡만 예약하고 기존 세트(stale) 또는 503+Retry-After 로 응답해, 대용량에서 봇 요청이 OOM/타임아웃을 유발하던 경로를 끊었다. - 잡: ShouldBeUnique(고정 uniqueId)+uniqueFor+retryUntil, timeout 300→1800, backoff - 컨트롤러: 인덱스 stale/503 분기 + 자식 라우트(.xml/.xml.gz 동일 액션) - 스케줄 withoutOverlapping, 관리자 재생성 큐 이관 - 설정 4키(분할 기준·압축·stale 서빙·수집기 상한) + 고급탭 Sitemap 캐시 짝 - SitemapManager 응답 메시지 다국어화 설정 저장 테스트가 실제 설정 파일(사이트명/언어 포함)을 덮어쓰던 사전결함을 TestCase 전역 격리로 차단하고, 두 탭이 같은 다국어 키를 공유해 한쪽에 틀린 한도를 안내하던 사전결함을 키 분리로 해소했다.
This commit is contained in:
@@ -69,6 +69,10 @@
|
||||
"cache_ttl": null,
|
||||
"sitemap_enabled": true,
|
||||
"sitemap_cache_ttl": null,
|
||||
"sitemap_urls_per_file": 50000,
|
||||
"sitemap_gzip": false,
|
||||
"sitemap_serve_stale_on_miss": true,
|
||||
"sitemap_max_urls_per_contributor": 0,
|
||||
"sitemap_schedule": "daily",
|
||||
"sitemap_schedule_time": "02:00",
|
||||
"sitemap_last_updated_at": "",
|
||||
@@ -213,6 +217,10 @@
|
||||
"cache_ttl": { "type": "integer", "sensitive": false },
|
||||
"sitemap_enabled": { "type": "boolean", "sensitive": false },
|
||||
"sitemap_cache_ttl": { "type": "integer", "sensitive": false },
|
||||
"sitemap_urls_per_file": { "type": "integer", "sensitive": false },
|
||||
"sitemap_gzip": { "type": "boolean", "sensitive": false },
|
||||
"sitemap_serve_stale_on_miss": { "type": "boolean", "sensitive": false },
|
||||
"sitemap_max_urls_per_contributor": { "type": "integer", "sensitive": false },
|
||||
"sitemap_schedule": { "type": "string", "sensitive": false },
|
||||
"sitemap_schedule_time": { "type": "string", "sensitive": false },
|
||||
"sitemap_last_updated_at": { "type": "string", "sensitive": false },
|
||||
|
||||
Reference in New Issue
Block a user