우리 게임이 구글에 안 보였던 이유 — 8월 14일의 유령을 찾아서
아트고메는 한 명의 인간과 AI 크루가 함께 굴리는 1인 회사다. 그래서 우리 회사의 사건 사고에는 늘 두 부류의 용의자가 있다. 사람이 저지른 일, 그리고 AI가 저지른 일. 그런데 이번 사건의 범인은 둘 다 아니었다. 범인은 일주일 전의 우리 자신이었다.
1. 발견 — 두 페이지만 옛날 옷을 입고 있었다
8월 21일, 홈페이지를 검색엔진에 잘 잡히게 만드는 대공사를 하던 날이었다. 페이지마다 제목과 소개문을 새로 달아주고, 배포를 마치고, 실제 사이트에서 하나씩 검수를 돌렸다. 홈, 게임 목록, 도구 목록, 상점 — 전부 새 옷을 입고 반짝반짝했다. 그런데 마지막 두 개, 총알피하기와 Find Golden 게임 페이지에서 손이 멈췄다.
둘만 옛날 화면을 보여주고 있었다. 분명히 같은 배포에 실려 나갔는데. 서버에 직접 물어보면 새 페이지를 갖고 있다고 대답하는데, 방문자 주소로 접속하면 옛날 것이 나왔다. 서버는 새 옷을 들고 있는데, 손님에게는 헌 옷이 배달되는 상황.

유령이 지키고 있던 첫 번째 페이지 — 총알피하기
2. 단서 — 응답에 찍힌 날짜 도장
웹 서버의 응답에는 눈에 안 보이는 정보들이 함께 실려 온다. 그중 하나가 "이 파일은 언제 만들어졌나"라는 날짜 도장이다. 문제의 두 페이지가 배달해 주는 파일을 뜯어보니, 도장에 이렇게 찍혀 있었다. 8월 14일.
우리가 새 페이지를 만들기 일주일 전 날짜다. 즉 어딘가에서 누군가가, 일주일 전에 만들어진 파일을 지금까지 성실하게 나눠주고 있었다는 뜻이다. 서버가 아닌 다른 누군가가.
3. 회상 — 8월 14일에 무슨 일이 있었나
기록을 뒤져보니 8월 14일은 비상사태의 날이었다. 게임을 외부 서비스에 얹어 서비스하고 있었는데 그쪽이 갑자기 문을 닫아버려서, 게임이 통째로 안 열리던 날. 그때 급한 불을 끄느라 게임 파일 사본을 우리 전송망(방문자에게 파일을 빨리 나눠주는 중계소)에 직접 올려두는 응급 처치를 했었다.
응급 처치는 성공했고, 게임은 살아났고, 모두가 그 일을 잊었다. 사본이 아직 거기 살아 있다는 것도 함께 잊었다.
4. 문지기의 규칙
전송망에는 단순하고 완고한 규칙이 하나 있다. "내 창고에 파일이 있으면, 서버에게 물어보지 않는다." 평소에는 이 규칙 덕분에 사이트가 빨라진다. 그런데 지금은 이 규칙 때문에, 진짜 서버가 아무리 새 페이지를 준비해 놔도 문지기가 창고의 일주일 묵은 사본으로 먼저 대답해 버리는 것이었다. 서버 입장에서는 억울할 노릇이다. 손님이 오는 줄도 몰랐으니까.
정리하면 이렇다. 우리가 8월 14일에 살려 놓은 응급 사본이, 일주일 뒤에는 새 페이지를 가로막는 유령이 되어 있었다. 살리려고 한 일이 나중에 발목을 잡는 것 — 개발하다 보면 이런 부메랑이 종종 돌아온다.
5. 그런데 유령이 안 지워진다
원인을 알았으니 해결은 간단해 보였다. 전송망 창고를 새로 배포해서 낡은 사본을 치우면 끝. 그런데 여기서 이 사건의 진짜 반전이 나온다.
치우는 배포를 했다. 성공 메시지도 받았다. 그런데 유령이 그대로 있었다.
다시 조사해 보니 — 우리 배포 설정이 가리키는 곳이 이름만 그럴듯한 빈집이었다. 우리 전송망에는 집이 세 채 있었는데, 실제 손님이 드나드는 도메인은 이름표도 없는 "기본 집"에 연결돼 있었고, 설정 파일은 예전에 다른 서비스 테스트용으로 만든, 이름표만 멀쩡한 집을 가리키고 있었다. 우리는 성공적으로 배포하고 있었다. 다만 아무도 살지 않는 집에.
덧붙이자면 이 과정에서 대표는 배포 도구에 로그인하느라 다섯 번쯤 실패했다. 알고 보니 도구가 구버전이라 로그인 방식 자체가 말썽이었고, 최신으로 올리자 한 번에 됐다. 유령 잡으러 가는 길은 원래 이렇게 험하다.
6. 결말 — 유령 소멸, 그리고 첫 등장
진짜 집을 찾아 배포하자 낡은 사본이 마침내 치워졌고, 문지기는 규칙대로 서버에게 길을 열어줬다. 총알피하기와 Find Golden 페이지는 그날 처음으로 검색엔진에 제 이름과 제 소개문을 보여줬다. 만들어진 지 한참 됐지만, 검색의 세계에서는 그날이 데뷔였다.
두 번째 페이지의 주인공 — 서울 골목 어딘가에 숨은 골든리트리버
교훈
배포 도구가 "성공했습니다"라고 말하는 것과, 세상이 실제로 바뀌는 것은 다른 문제다. 성공 메시지는 거짓말을 하지 않았다. 다만 엉뚱한 집에 성공적으로 배달했을 뿐이다. 그래서 우리 크루의 작업 수칙에는 이날 이후 한 줄이 추가됐다. "배포했다고 말하지 말고, 손님 주소로 접속해서 확인한 뒤에 말할 것."
그 유령이 일주일간 지키고 서 있던 게임들은, 이제 여기서 멀쩡히 만날 수 있다 → artgourmet.cloud/games
이 이야기는 아트고메의 실제 작업 기록에서 나온 사실입니다. 한 명의 인간과 AI 크루가 회사를 굴리다 보면 매일 이런 일이 생깁니다. 다음 사건 파일에서 계속.
댓글
댓글 쓰기