Mnkai Mnkai

육조년Six Trillion Years만의 본업 이야기입니다.

이번에 이사를 하면서 만으로 약 하루정도 블로그가 오프라인 상태였습니다. 그동안 제 DNS 서비스 프로바이더의 파킹 페이지와 구글 애드센스가 표시되고 있었겠죠.

지금까지 제 블로그는 집에 있는 반짝반짝 빛나는 작은 LED가 여러개 달린, 손님이 올 땐 가끔은 좀 시끄러운 검정색 네모난 상자에서 호스팅 되고 있었기 때문에 제가 이사를 하거나 어떠한 사유로 정전이 되거나, 현대 문명의 존폐에 위협이 될 만한 저전력 상황에서는 블로그가 오프라인이 될 수 밖에 없던 구조였던 것이죠.

제 블로그는 언제나 광고가 없고1, 헛소리는 멈추지 않고 언제나 자유롭게 배포되어야 한다는 철학Freedom of BS을 가지고 있기 때문에 아뿔싸! 이건 안되겠다 싶었습니다.

그러한 구조를 근본적으로 개선하기 위해서 지난 제가 십수년이상 사용했던 구조에서 벗어나 새로운 아키텍처를 도입하게 되었습니다.

소개합니다, 구름 위의 블로그를!


1: 추적코드는 있지만, 자바스크립트를 아예 끄시는 건 자유입니다. 이 블로그는 자바스크립트 없이도 검색을 제외한 대부분의 기능이 동작합니다. 텍스트 브라우저에서도 정상적으로 동작합니다.

조금 더 자세한 설명

이 블로그는 이전에 언급했던 것 처럼 정적 페이지 생성기를 통해서 작성되고 있습니다. 이 구조는 기존에 제가 사용하던 블로그의 구조 (데이터베이스 + CGI + 웹 서버) 와는 다르게 서버가 대부분의 일을 할 필요가 없기 때문에 매우 빠르게 많은 사람들에게 정적인 컨텐츠를 서빙하기에 좋은 구조죠.

이러한 구조의 이점을 살려서 이제 이 블로그는 통째로 S3 호환 버킷에 저장되어 있습니다. 그리고 제가 실수로라도 파산하지 않기 위한 안전장치로 버킷 앞에는 Cloudflare 가 있죠.

그리고 그 Cloudflare와 S3 버킷을 잇는 방법으로는 클라우드에서 구동되는 서버리스 컴퓨팅을 사용하고 있습니다.

즉 대충...

사용자 -> Cloudflare -> Serverless worker -> S3 Bucket
     <-   (Edge)   <-       (Edge)      <-    (US)

가 되는 것이죠.

이젠 제 서버가 꺼져도 문제 없이 제 헛소리를 사람들이 볼 수 있게 되었습니다. 대단합니다!

안타깝게도 한국에 거주하고 있는 사람들에게는 약간 블로그가 느려졌을 것입니다. 늘어난 단계만큼의 오버헤드가 있기 때문이기도 하고, 버킷이 미국에 있기도 하고, 제가 Cloudflare 무료 플랜을 사용하기 때문이기도 합니다. 추후 Serverless worker 의 quota가 모두 소진될 정도로 제 블로그가 유명해진다면2 한번 더 상위 플랜을 사용하는것을 '고려는 해' 보겠습니다.


2: 그럴 리가 없지만

Tags: