삶의 오버헤드(Overhead)를 견디는 '카프카'

프란츠(Franz)가 아니라 아파치(Apache)를 읽는 밤

by 나인테일드울프

사람들은 <가끔 생각나면 쓰는 카프카>라는 제목을 보면 물을지도 모르겠다.


"프란츠 카프카를 그렇게 좋아하세요?"


물론 나는 『변신』을 쓴 프란츠 카프카를 사랑한다. 그의 부조리와 고독은 현대인의 초상이니까. 하지만 내가 이 제목에 숨겨둔 진짜 의도는 문학이 아니라 '코드'에 있다.

내 카프카는 프란츠(Franz)가 아니라, 아파치(Apache)다.



삶은 거대한 '프로듀서(Producer)'다


개발자들에게 카프카(Kafka)는 소설가가 아니라, 링크드인(LinkedIn)이 개발한 '대용량 분산 메시지 시스템'이다. 서버와 서버 사이를 오가는 수십억 개의 데이터를 잃어버리지 않고 순서대로 쌓아두는 거대한 파이프라인, 그게 바로 카프카다.


나는 삶이 꼭 이 카프카 시스템 같다고 느낀다.


삶이라는 '프로듀서(Producer)'는 내 의지와 상관없이 매일 엄청난 양의 메시지를 내 머릿속 '큐(Queue)'에 쏟아붓는다.

출근길 지하철의 땀 냄새, 꼬여버린 코드 한 줄, 점심에 먹은 샌드위치의 맛, 상사의 지나가는 말 한마디, 그리고 퇴근길에 본 붉은 노을까지. 이 모든 감각과 사건들이 '로그(Log)'가 되어 내 내면의 서버에 차곡차곡 쌓인다.



나는 게으른 '컨슈머(Consumer)'다


문제는 내가 이 데이터들을 실시간으로 처리할 능력이 없다는 것이다. 삶은 초당 수천 건의 이벤트를 쏘아대는데, 나의 인지 능력은 고작해야 하루에 한두 건을 해석하기도 벅차다.

그래서 나는 '지연(Lag)'을 허용하기로 했다. 실시간으로 반응하고, 즉각적으로 슬퍼하거나 기뻐하는 대신, 일단 카프카라는 큐에 그 감정들을 묵혀두기로 한 것이다.

이 글들은 그 묵혀둔 메시지를 "가끔 생각나면" 하나씩 꺼내어(Poll) 읽어보는, 지극히 게으른 '컨슈머(Consumer)'의 기록이다. 데이터가 소실되지 않는 한, 우리는 쓴다


어떤 날은 일주일 전의 후회를 꺼내고, 어떤 날은 1년 전의 기쁨을 꺼낸다. 순서는 중요하지 않다. 중요한 건, 폭포수처럼 쏟아지는 삶의 데이터 속에서 내가 '의미'라는 패킷을 손실(Loss) 없이 건져 올릴 수 있느냐는 것이다.

이곳은 그저 한 개발자가 삶의 오버헤드(Overhead)를 견디다 못해, 잠시 큐를 멈추고 밀린 로그를 까보는 '디버깅(Debugging)'의 현장일 뿐이다.


물론, 프란츠 카프카로 읽어도 별 상관은 없다. 어차피 삶은 부조리(Franz)하고, 그것을 버티는 시스템(Apache)은 늘 과부하 상태니까.



작가의 말:

인생의 로그가 너무 많이 쌓여 'Out of Memory'가 뜨기 직전, 나는 글을 씁니다. 이것은 나의 생존을 위한 시스템 점검입니다.


매거진의 이전글굳이 '키치'라고는 안 할게. 그건 진짜 욕이니까.