오~래 전(2K년대 중후반) 꽤 큰 동적 트래픽을 처리해야 할 일이 있었는데, 그 당시 DB로는 감당이 안 되는 수준이었다. 그래서 생각한 방법이, 몇 개의 단계를 가진 키의 조합을 디렉토리 형태
오~래 전(2K년대 중후반) 꽤 큰 동적 트래픽을 처리해야 할 일이 있었는데, 그 당시 DB로는 감당이 안 되는 수준이었다. 그래서 생각한 방법이, 몇 개의 단계를 가진 키의 조합을 디렉토리 형태의 패스로 만들고, 서빙할 데이터나 정적 파일을 키의 조합에 따라 해당 디렉토리의 패스에 미리 캐싱한 파일의 형태로 저장하는 라이브러리를 만들어서 사용했다. 이 때 저장하는 스토리지는 메모리 디스크를 사용하고, expire 는 파일 정보를 사용해서 판단. 주기적으로 expire 된 파일을 제거한다. 또한 메모리가 날아가도 영구 저장이 가능하도록 물리 디스크 파일로 싱크. 그 때 Memcached는 너무 단순해서 활용이 제한적이라 사용하지 않았는데, 그 때 즈음 Redis가 출시 되었다. 사람 생각하는 건 다 비슷하다. 다만 누가 더 아이디어를 빠르게 스케일링 하느냐가 중요. 그런면에서, 안타까운 말이지만, 야망이 있는 개발자라면, 국내 커뮤니티에서 수고를 들이기보다는 해외 커뮤니티에서 더 적극적으로 활동하는 것이 좋지 않을까 싶다.