검색 시스템

SEO에 대해서 간단히 알아봤으니, SEO에서 SE에 해당되는 검색 시스템, 즉 검색 엔진에 대해서 알아봐야한다. 보통 한국에서의 검색 엔진은 Google, Naver 정도로 생각할 수 있다.
주요 역할
그리고 검색 시스템은 4가지의 주요 역할이 있다.
-
크롤링
웹을 탐색하고 모든 웹사이트의 콘텐츠를 분석하는 과정 → 3억 6840만 개 (2025년 1분기 말 기준) 가 넘는 도메인이 존재하기 때문에 엄청난 양의 작업이다. -
인덱싱
크롤링 단계에서 수집한 모든 데이터를 접근할 수 있도록 저장할 장소를 찾는 작업이다. -
렌더링
사이트의 기능 향상, 콘텐츠를 풍부하게 만드는 페이지 리소스를 실행하는 과정 → 물론, 크롤링 되는 모든 페이지에서 수행 되는 것은 아니며, 실제로 콘텐츠가 인덱싱되기 전에 수행되는 경우가 있다. 크롤링 시점에 작업을 수행할 리소스가 없는 경우, 인덱싱 후에 렌더링이 수행 될 수 있다. -
순위
사용자 입력을 기반으로 관련성 높은 결과 페이지를 만들기 위해 데이터를 쿼리하는 작업이다. 검색 엔진에서 다양한 순위 기준을 적용 해서 의도에 맞는 가장 적합한 답변을 제공한다.
웹 크롤러란?
https://gs.statcounter.com/search-engine-market-share/all/south-korea
위 사이트에서 우리나라의 검색엔진 점유율을 알 수 있다. (만약 타켓팅 하는 글로벌 시장이 있으면 해당 사이트에서 검색 엔진 점유율을 조사하고 SEO 작업을 하는 것이 큰 도움이 될 것 이다.)
논외로, Next.js Learn에서 특이 케이스가 중국(Baidu), 러시아(Yandex), 한국(Naver), 일본(Bing, Yahoo) 를 두었는데, 일본은 사실 구글이 70%대로 평이하고, 두 사회주의 국가는 충분히 그럴 수 있다 생각하지만, 한국이 Naver 심지어 Google가 비등비등하게 유지된다는 사실이 신기하다.
(여기에 대해선 추후에 다뤄볼 예정이다.)

아래는 2009년부터 현재까지의 지표이다.
우선 , 우리나라의 서비스를 만든다면, 구글과 네이버만 고려해도 90.39%의 검색 시장을 커버할 수 있다. 순위,렌더링에 차이가 있지만, 대부분 비슷한 방식으로 작동한다.
웹 크롤러는 마치 사용자 인 것 처럼, 웹사이트에서 찾은 링크를 탐색 → 페이지를 인덱싱 하는 봇이다.
웹 크롤러는 사용자 에이전트를 사용하여 자신을 식별한다. 구글에는 여러개의 웹 크롤러가 있다 하지만 Googlebot Desktop과 Googlebot Smartphone이 주로 사용된다.

위 그림은 크롤링 과정을 나타낸 다이어그램이다. 과정은 아래와 같다.
- URL 찾기
Google은 Google Search Console을 포함해서 여러 곳에서 URL을 수집한다. (웹사이트 간 링크 혹은 XML 사이트맵) - 크롤링 대기열에 추가
- 찾은 URL을 Googlebot이 처리할 수 있게 대기열에 추가한다.
- (대부분의 URL은 몇 초 안에 처리되지만, 경우에 따라 며칠 동안 대기할 수도 있다.)
- (특히 페이지 렌더링이 필요하거나, 인덱싱하거나, 이미 인덱싱된 URL을 새로 갱신해야 할 때 그렇다.)
- 그 후 페이지는 렌더링 큐에 추가된다.
-
HTTP 요청
크롤러는 HTTP 요청을 하고 반환된 상태 코드에 따라 작동한다.- 200: HTML을 크롤하고 파싱합니다.
- 30X: 리디렉션을 따라갑니다.
- 40X: 오류를 기록하고 HTML은 불러오지 않습니다.
- 50X: 상태 코드가 변경되었는지 나중에 다시 확인할 수 있습니다.
-
렌더 큐
- 검색 시스템의 다양한 서비스와 컴포넌트가 HTML을 처리하고 콘텐츠를 파싱
- 페이지에 클라이언트 사이드 JavaScript 기반 콘텐츠가 있는 경우, 해당 URL은 렌더 큐에 추가될 수 있다.
- 렌더 큐는 Google이 더 많은 리소스를 사용해야 하므로 비용이 더 들고, 따라서 실제 인터넷에 존재하는 전체 페이지 중에서 렌더링되는 URL의 비율은 상대적으로 적다.
- 일부 다른 검색 엔진은 Google만큼의 렌더링 능력이 없을 수 있으며, 이 지점에서 Next.js는 렌더링 전략을 보완하는 데 도움을 줄 수 있다.
- 검색 시스템의 다양한 서비스와 컴포넌트가 HTML을 처리하고 콘텐츠를 파싱
-
인덱싱 준비 완료
모든 기준이 충족되면 해당 페이지는 인덱싱될 자격을 갖추게 되고, 검색 결과에 표시될 수 있다!