컴퓨터와 네트워크의 작동을 메타포에 기대서 대충 이해하는 사람이면 웬만큼 이해할 수 있을 것 같기도 하다.
- 인터넷에 연결될 수 있는 기기(스마트폰까지 포함)만 가지고 있으면 그 개인들 하나하나가 기기 대 기기(device-to-device) 차원에서 철저하게 P2P 연결만으로 클라우드를 작동시킨다(Every crowd is cloud).
- 이 P2P 클라우드를 배경으로 각 개인이 어떤 앱의 개발자(developer)로도, 사용자(user)로도, 호스트(host)로도 참여할 수 있다.
- 즉, 어떤 앱을 개발해서 사용하는 데 단 하나의 중심이나 여러 개의 부심에 두는 '서버가 전혀 필요 없다(Serverless)'.
- 그래서 '이상한 현상들'이 생긴다. 그중 하나는 사용자가 늘어날수록 앱을 가동시키는 네트워크의 부하가 줄어든다는 점이다. 이를테면, 규모가 커질수록 앱의 작동이 가벼워지고 빨라진다는 것이다. 어떻게 그럴 수가 있을까? 사용자가 한 사람 더 늘어날수록 P2P 클라우드가 그만큼 더 커질 뿐 아니라, 데이터를 '갈갈이 찢어서(sharding)' 여러 노드로 분산 저장하고, 분산 처리하는 네트워크의 효율이 높아지기 때문이라는 것이 지금까지 내가 이해(또는 추정)하는 바다.
이러한 전혀 새로운 분산 컴퓨팅 아키텍처를 소프트웨어 개발자로 보이는 사람이 전혀 이해하지 못하는 경우가 보인다. 개발자도 아닐뿐더러 컴퓨터 공학은 전혀 모르는 나도 '알고' 있는 것을 그 개발자가 전혀 이해하지 못한다. 그럴 만한 이유가 있을 것이다. 이건 분명 어떤 패러다임으로 굳어진 사고방식과 그 패러다임을 깨고 나오는 사고방식 사이의 충돌 같은 것인데, 다음 칼럼의 댓글 왕래(또는 약간의 설전)에서 볼 수 있다.
- 지은이: Arthur Brock
- 출처: "Holochain vs. Hashgraph: ... and when is consensus needed in distributed computing", Holochain's Medium Blog, 2018년 3월 5일.
"분산 컴퓨팅에서 과연 합의(consensus)는 언제 필요한가?"라고 묻는 부제를 달고 있다(블록체인에 기반을 두는 모든 플랫폼과 어플리케이션이 끝까지 안고 가야 할 문제일 것으로 보인다). 이 자료는 홀로체인/홀로에 관한 7가지 주요 게시물 중 하나이므로 언제고 읽어볼 만한 것인데, 본문은 건너뛰고 댓글로 오갔던 설전을 살펴봤다. 전혀 이해하지 못하는 패러다임 경계의 저편에 있는 사람에게 이편이 있는 사람이 어떤 말을 꺼내는가는 꽤 쓸만한 관전 포인트가 될지도 모른다.
이하, 이의 제기와 그에 대한 답변으로 이루어진 네 차례의 진술을 일단은 복사해 붙여둔다(개발자들에게 권할 만한 다른 자료도 새로 발견했는데, 나중에 다시 찾아서 붙여 두려고 한다).
덧. steemit.com이 불안정해서 steemkr.com을 경유해 붙입니다(잘 될까 모르겠지만).
This is misleading─“ which actually get more efficient as more users join” Not users make holochain more efficient, but hosts, big difference, but if you talk for IOTA, this would be correct, because every user on IOTA is a miner too. IOTA is not just dLedger as you write in some Holo articles, but you could build dApps over it too.
Holochain is a peer-to-peer architecture─all users run full nodes.
You may be thinking about Holo, which is a hosting platform that runs on top of Holochain to provide virtual Holochain services to users accessing the system via web browsers. In this case, Holo hosts run nodes on behalf of the web users and get paid in a cryptocurrency for doing so. However, “hosts” are not native to Holochain─they are an extension its infrastructure so that Holochain apps can serve mainstream web users.
Users use, they don’t serve, hosts serve. The only disagreement which I have with the article is the use of term “users”.
I think you must be thinking in blockchain terms where there are different classes of “users.” In blockchain: there are end users with a wallet or thin client, and miners running full nodes who can make changes.
In holochain, to USE an app, you have to run that app, which makes you a full peer for that app. You have a private key to write to your source chain, and run your little shard of the DHT. So, the more users, the more full peers there are sharing the load. There is no native way for someone to “use” a holochain app without being a full node in that app.
But remember, each holochain app is a separate holochain, you are only carrying your share of that app, not of all apps in some big monolithic blockchain. So it is a light load to carry.
The only theoretical exception I can think of is that some user (full node) might want to provide some kind of read-only web gateway to the public as a service. If you want to call those viewers of app data “users,” then you would be correct that they aren’t carrying their part of the load─the user sharing the web gateway would be carrying that for them. But those viewers would not be able to interact with the system in terms of changing any state (such as submitting transactions), so I don’t really consider them to be users just spectators.
※ 질의/응답 내용에 오탈자도 약간 있고 구어체로 막 오가는 표현이 있기는 합니다. 한국어 번역이 필요할까요?
위에 소개한 칼럼(Holochain vs. Hashgraph: ...) 외에 좀 더 자료가 필요하신 분들께서는 다음 자료를 참고하시기 바랍니다.
─. 개발자가 비개발자를 대상으로 평이하게 쓴 자료의 한국어 번역:
─. 개발자들에게 확 다가올 듯한 내용으로 개발자가 쓴 자료로 새로 발견한 것들:
- David Meister, "Scaling cryptocurrencies: Holo(chain)", Holochain's Medium Blog, 2018년 3월 19일.
- David Meister, "The Holo vision: Serverless 2.0", Holochain's Medium Blog, 2018년 4월 21일.
─. 상기 자료를 포함해 그동안 발견한 자료들의 거의 전부가 "홀로(Holo)/홀로체인(Holochain)에 대해 알아볼 수 있는 자료 갱신"에 목록으로 기록돼 있습니다.