대략 4시간 전에 @dan 이 EOS.IO Development Update 라는 내용의 글을 올렸습니다.
EOS 코인의 최근 개발 과정에 대한 공개적인 업데이트가 한동안 없다가 공개 되었네요.
선요약을 하면 다음과 같은 호재들이 있습니다.
- 비동기식 트랜잭션 처리를 통한 훨씬 더 다양한 스마트 컨트랙트 지원
- 레이트리미팅을 통한, EOS 플랫폼의 효율적인 리소스 관리.
- WASM 를 이용해서 하드포크 없이, 동적으로 코어 기능 업데이트 지원.
- BFT 와 DPOS 라는 두가지 PoS(Proof of Stake) 알고리즘의 장점을 조합하는
하이브리드 PoS 알고리즘 지원. - 싱글 쓰레드 기준, 초당 5000 트랜잭션 처리, 블록추가에 0.5초 소요,
추가로 2초안에 확정적으로 블록 추가. - 기존에 12명에서, 8명의 새로운 개발인력 충원.
이 개발적인 호재들이 도대체 무엇을 의미하는지는 아래와 같습니다.
- 거래와 같은 실수할 수 있는 특정 Transaction 들을 "지연" 해서 처리할 수 있음.
e.g. 돈을 옮기는 과정은 24시간 뒤에 실제로 실행 됨. 그 사이, 실수 했으면 취소 가능. - 해킹된 계정의 복구 및 잃어버린 비밀번호 복구.
- 더 효율적인 RAM, 데이터 (소위 말하는 4G 데이터와 같은 말),
하드 드라이브 용량등의 리소스 관리를 통한 고효율 어플리케이션 지원. - 실시간으로 대용량을 처리해야하는 dApp 지원 가능성에 대한 희망.
e.g. 화상채팅 앱
비동기식 트랜잭션 지원
동기식 (synchronous) 으로 어떤 액션이 A -> B 간에 발생한다는 말은,
이 액션이 끝날 때 까지 A는 기다려야 한다는 걸 의미합니다.
예를들어서, "이 스마트 콘트렉트 실행 부탁해" 라는 트렌젝션을 A 가 처리하길 원한다면
실제로 B가 5분이든 10분이든 실행할 때 까지 기다려야 합니다. 비효율 적이죠
비동기 방식으로 처리하면, A는 그저 "이 스마트 콘트렉트 실행 부탁해" 라고 말한 뒤,
곧 바로 다른 유용한 일들을 하기위해 스위치 할 수 있습니다.
그리고 B가 본인의 할일이 끝나면 최종적으로 "끝남" 이라고 A에게 알려주는 방식이죠.
이를 응용해서,
- 거래의 "지연 처리"
- 해킹된 계정의 복구 및 일어버린 비밀번호 복구
등의 새로운 기능을 지원 했다고 하네요.
레이트리미팅
레이트 리미팅이랑 "초당 X번 밖에 거래 못함." 과 같이 특정한 액션의 빈도를 제한하는 개념입니다.
이 레이트 리미팅을 기술을
RAM, 네트워크 밴딧 (우리가 소위 말하는, 한달 4G 데이터량), 보팅 파워, 스토리지
에 적용할 수 있도록 업데이트 되었네요.
이 부분에 대해서는 글을 쓰는 시점에서, 좀 더 살펴봐야할 여지가 있기 때문에
간략히 설명하고, 추후 좀 더 자세한 설명으로 대체하겠습니다.
WASM 를 이용해서 하드포크 없이, 동적으로 코어 기능 업데이트 지원.
기본적으로, 업데이트가 일어날 때,
마이너들이 가지고 있는 마이닝 소프트웨어의 업데이트가 필요합니다.
근데, 특정 업데이트가 일어날 때, 이에 불만을 가지는 마이너들은 업데이트를 거부하기도 합니다.
대표적으로, 비트코인과 비트캐시의 사태가 있죠.
EOS 는 일부 C++ 소스코드를 WASM (Web Assembly Language) 라는
동적으로 업데이트 가능한 언어로 쓰여진 스마트 컨트랙트로 바꿈으로써 이와 같은
분쟁으로 발생하는 하드포크 이슈를 해결하고자 하네요.
BFT 와 DPOS의 장점을 모두를 지닌 하이브리드 PoS 알고리즘 지원.
Delegated POS알고리즘과 BFT 알고리즘이 가진 장단점들이 서로 다릅니다.
EOS 는 이 두가지 알고리즘의 장점만을 합치는,
BFT-DPOS 라는 하이브리드 컨센서스 알고리즘을
제안 했네요. 분명 언급하지 않는 제한점은 있겠지만 시도 자체는 좋습니다.
좀 더 자세한 디테일이 공개된다면 살펴봐야겠네요.
싱글 쓰레드 기준 성능 개선
EOS 의 로드맵에 보면, 다중 쓰레드/코어를 이용한 초당 트랜잭션 처리 능력의 향상을
궁극적으로 목표하고 있습니다. 단, 이번 업데이트에서는 일단
싱글 쓰레드 기준 성능을 최대한 올리는데 노력했고 이를 초당 5천 트랜잭션이라는
수준까지 끌어 올렸네요.
병렬화 하는 과정이 쉽지 않겠지만, 개발이 차질없이 진행되고 있습니다.
새로운 8명의 개발자 충원
이전에 제가 쓴 글에 분석한 것처럼,
EOS 개발에 활발히 참여하고 있는 개발자는 대략 12명 입니다.
이번에 새롭게 8명을 충원했다고 발표했네요; 아주 많은 숫자의 충원 입니다.
6월 릴리스 일정에 차질 없도록 개발에 더 박차를 가하기 위해 추가된 것 같습니다.
전체적인 평
로드맵에 살펴보시면
리소스 레이트리미팅 과 같이 기존에 로드맵에 넣은 개발 계획들이
차질없이 진행되고 있네요.
또한, 이번 Development update 에 해당하는 코드 변경사항들을
아주 투명하게 Github eos-noon 브랜치 에 공개한 모습도 인상적입니다;
과장해서 선동하는 모습이 아니라 오히려 개발자들의 검증을
독려하는 모습입니다.
또한, @dan 본인이 원글에 언급한 것 처럼
"with far more features than were originally outlined in the White Paper"
처음 계획 했던 피쳐들 외에 추가적인 기능들 까지 개발하고 있습니다.
이는 다시말하면, 스케쥴에 자신있다는 말입니다.
구체적으로 서울 Meetup 에서 어떤 내용들이 발표될 지 저는 알 수 없습니다.
혹시 모르는 깜짝 마케팅 및 파트너쉽 호재들은 더욱 그러하고요.
하지만,
개발사항들에 대한 안정적인 진척도 공유는 반드시 할꺼 라고 생각됩니다.
그리고, 이를 이해하시는 분들은 "아, 잘 진행되고 있구나" 하고 아시겠죠.
노력하는 모습이 보이는거 같아요
EOS 개발진 아주 열심이죠. 이게 정상입니다.
오 이렇게 좋은 업데이트 내용들이 있는데
파트너사 발표에만 사람들이 목매다 발표 미뤄지니 몽땅 매도하다니...
세력들도 그렇고..안타깝네요
일정 준수는 정말 쉽지 않은 일인데 그 이상을 한다는군요. 브라보~~
아주 자신있는 모습이네요
정말 멋지네요. 멋진 사람들이예요. 이런 사람들 좋습니다. ^^
좋은 글 감사합니다.
개발진까지 8명이나 추가하고~!!
성공적으로 진행중인거 같습니다~~
이오스 가즈아~!!!