오픈하고 밀려드는 손님을 맞는 분주함도 잠시
손님들이 오고가는 모습을 보면서
나는 뭐가 잘 못 되었는지 금방 눈치를 챌 수 있었다.
사실 웹서비스라는 것은 어떤 한 가지 방법론이나
하나의 솔루션이 그 성능을 좌우하지 않는다.
웹은 한 마디로 '균형'의 예술이다.
컴퓨터라는 물건이 사실 그렇다.
처음 아주 단순한 기판에서 시작할 때부터
컴퓨터는 프로세서와 그 주변기기간의
균형이 중요했다.
프로세서가 빨라도, 메모리나,
모니터의 화면처리 속도가 받쳐주지 않으면,
혹은 랜선이나 블루투스의 전송속도가 불안정하면,
성능 좋은 프로세서의 장점이 모두 산화되어 버린다.
그럴 때는 프로세서의 속도를 높이기 보다는
다른 부품들이 발전할 때까지 기다리는 것이 중요하다.
즉, 어느 하나에 집중하는 것이 아니라
전체적인 균형을 잡으면
그럭저럭 안정감있는 제품이 된다는 것이다.
jSteem도 보고 있자니
서버의 설계가 약간 균형을 못잡고 있었다.
그 때문에 특정 부분의 속도가
매우 느려지는 현상이 일어 났다.
어제 서비스를 개시하고
오늘은 하루종일
서버측 코딩을 했다.
손가락이 아플 정도로
잠시도 쉬지 않고
지금까지 밸런스를 잡는 데 주력했다
(그 와중에 자동배포장치도 개발했다).
그 결과로
지금은 그런대로
처음보다는 빠른 속도를 유지하고 있다.
이 서비스는
기업이나 집단이 그런 것처럼
풍족한 자원을 가지고 시작하지 않았다.
모든 자원은 가능한 한 최저사양이다.
다만
이걸 코딩하는 사람만이 약간 높은 수준이다
(그리고 그 외에는 부수적인 것이다).
그러므로
자원 부족에 따른 모든 핸디캡은
알고리즘의 성능으로 메워야 한다.
어제와 오늘,
jSteem을 방문해 주시고,
메시지를 남겨주신
많은 스티미언 여러분들께
감사를 전한다.
이제 서버쪽에 대해
한시름 놓았다.
다음 단계로 나갈 차례다.