스팀 비트렉스 입출금 문제에 대한 뒷이야기

며칠간 안 되었던 비트렉스 입출금이 아까 재개되었습니다. 사실 며칠 새 몇 번 정도는 재개되었다가 바로 다운이 되었는데요 비트렉스의 경우 슬랙방에서 커뮤니케이션을 많이 해서 그나마 잘 해결하고 있는 것 같습니다.

비트렉스의 문제는 첫번째로 저사양 서버였습니다. SSD이긴 하지만 16G 램은 스팀같이 거래량이 많고 빠른 체인에게는 그다지 넉넉한 양이 아닙니다. 설상가상으로 초반에는 실수로 ZCash 노드를 안 꺼놔서 자원이 더 부족했다고 합니다. 초반에는 리눅스 가상머신 문제인줄 알았는데 그건 근본적인 문제가 아니었고 결국에는 머신에 자원할당을 조금만 한 것이 화근 같습니다.

이러한 문제 때문에 P2P 싱크가 안되는 현상이 자주 발생했는데요, 이에 대해 스티밋 팀에서 P2P Fix를 내놔서 싱크 문제는 해결을 했습니다. 근데 그렇게 하고나니 노드가 다운되는 현상이 일어나기 시작했습니다.

그리고 오늘 비트렉스에서 보여준 메모리 현황을 보니 버추얼 메모리의 경우 스팀이 16기가, 골로스가 34기가를 먹고 있었습니다. 여기서 개발진이랑 증인들이 골로스랑 스팀을 같이 돌리고 있다는 사실을 처음 인지했습니다. 그리고 두 개를 16기가 메모리로 같이 돌리는건 부하가 꽤 될 꺼라고 했습니다. 추가로 골로스 메모리가 스팀보다 많이 먹는건 컴파일시 최적화 옵션을 껐기 때문이라는 지적을 했습니다. 이와 연관되어서 디스크IO도 문제가 있어보였습니다.

사람들이 임시로 내린 결론은 최적화가 되지 않은 골로스 노드를 함께 돌림으로서 메모리에 부하가 갔고, 실제 램이 부족 한 상황에서는 버추얼 메모리(SSD)에 읽기 쓰기가 반복되면서 IO 이슈가 발생하고 그로 인해 크래시가 난 것이라고 판단했습니다.

그래서 일단 골로스를 최적화 컴파일 해서 올렸는데 골로스의 버추얼 메모리 사용량이 1기가 미만으로 1/34 정도 줄었습니다. 실제 메모리 사용량도 40% 정도 감소했고요. 아직까지는 별 이상 없이 돌아가는 것 같은데 하루이틀 더 지켜봐야 할 것 같습니다.

폴로닉스의 경우 의도적인 입출금 제한이 아니라면 서버자원에 투자를 박하게 해서 다운이 된 것으로 보입니다. 뭐라도 얘기를 제대로 해줘야 도와주기라도 하는데 폴로닉스는 연락도 없네요. 아마 비트렉스가 잘 해결하고 거래량 끌어오면 그 때라도 급하게 뭔가 하지 않을까 싶습니다.

이번 사태에서 제가 느낀건 암호화폐 거래소 역시 스케일링 이슈에서 자유롭지 못하다는 것이었습니다. 암호화폐가 활성화되면 그만큼 거래소도 많은 자원을 투자하면서 노드를 돌려야하는데 실제로 그런 거래소는 많이 없는 것 같습니다. 물론 노드를 거래소 버전으로 슬림하게(거래만 모니터링하도록) 만들 수도 있는데 이는 조금 뒤의 얘기 같습니다. 두서없는 글 읽어주셔서 감사합니다.

H2
H3
H4
3 columns
2 columns
1 column
28 Comments