크로미움 없는 AI 스크래핑 엔진
러스트로 만든 옵스큐라, 메모리 30MB로 헤드리스 크롬 자리를 노린다
웹 스크래핑과 AI 에이전트 자동화를 겨냥한 헤드리스 브라우저 엔진 옵스큐라(Obscura)가 크로미움(Chromium) 없이 화면을 그리는 자체 렌더링 기능을 공개했다. 러스트(Rust)로 작성됐고 라이선스는 아파치 2.0이다. 깃허브 스타는 2만800개, 포크는 1,500개를 넘겼다.
무슨 일인가
에이전트에게 웹을 맡기는 순간 가장 먼저 부딪히는 벽은 성능이다. 지금까지의 표준은 헤드리스 크롬(headless Chrome)이었지만, 데스크톱용 브라우저를 자동화에 돌려 쓰는 구조라 인스턴스 하나가 메모리 200MB 이상을 먹는다. 수십 개를 동시에 띄우면 서버 비용부터 무너진다.
옵스큐라는 처음부터 자동화 전용으로 설계했다는 점을 내세운다. 개발진이 공개한 비교표에 따르면 메모리 30MB, 바이너리 크기 70MB, 페이지 로드 85밀리초, 기동은 즉시다. 같은 표에서 헤드리스 크롬은 각각 200MB 이상, 300MB 이상, 500밀리초 안팎, 기동 2초로 적혔다.
핵심 짚어보기
호환성을 포기하지 않은 것이 이 프로젝트의 승부수다. V8 엔진으로 실제 자바스크립트를 실행하고 크롬 개발자도구 프로토콜(CDP)을 지원한다. 덕분에 퍼페티어(Puppeteer)나 플레이라이트(Playwright)로 짜 둔 기존 스크립트를 그대로 붙일 수 있는 대체재를 표방한다. 자동화 코드를 새로 쓸 필요가 없다는 뜻이다.
이번에 추가된 네이티브 렌더링으로는 크로미움을 따로 깔지 않고도 스크린샷 촬영, 페이지 실시간 화면 전송, PDF 내보내기가 가능해졌다. 봇 탐지를 피하는 안티디텍트 기능도 엔진에 내장했다고 밝혔다.
수익 모델은 관리형 서비스 쪽에 뒀다. 인프라 운영과 주거용 프록시, 전담 지원을 묶은 클라우드 버전을 준비하며 대기자 명단을 받고 있다. 다만 오픈소스 엔진은 기능을 잠그는 일 없이 아파치 2.0으로 유지하겠다고 못 박았다.
1인기업 실전 적용 포인트
- 경쟁사 가격이나 재고 모니터링처럼 반복 수집 작업을 저사양 VPS에서 돌린다면 인스턴스당 메모리 차이가 곧 월 서버비 차이다. 동시 실행 개수를 기준으로 비용을 다시 계산해 보라.
- 기존 퍼페티어·플레이라이트 스크립트가 있다면 엔진만 바꿔 나란히 돌려 보고, 실패율과 소요 시간을 로그로 비교한 뒤 전환을 결정하는 것이 안전하다.
- 에이전트에게 웹 조사를 시키는 워크플로에서 브라우저 기동 2초는 단계마다 쌓인다. 단계가 많은 자동화일수록 기동 시간 절감 효과가 커진다.
- 프록시 제휴 할인 코드에 이끌려 대량 수집으로 넘어가기 전에, 대상 사이트의 이용약관과 로봇 배제 규칙(robots.txt)부터 확인하라.
전망과 주의점
브라우저 엔진을 새로 만드는 일은 난도가 높고, 크로미움이 떠안고 있는 웹의 예외 상황은 방대하다. 성능 수치도 개발진 자체 측정이다. 결국 내가 실제로 수집하려는 사이트에서 렌더링이 깨지지 않는지가 유일한 판단 기준이다.
법적 위험도 짚어야 한다. 안티디텍트 내장과 대규모 프록시는 탐지 회피를 쉽게 만들지만, 회피가 곧 합법을 뜻하지는 않는다. 개인정보가 섞인 데이터나 로그인 뒤 콘텐츠를 긁어오는 행위는 국내법상 문제가 될 수 있다. 공개 데이터와 자체 서비스 테스트부터 시작하는 편이 좋다.
출처: 옵스큐라(Obscura) 깃허브 저장소 (https://github.com/h4ckf0r0day/obscura)