什么是分布式应用程序
分布式应用程序是指应用程序分布在不同计算机上,通过网络来共同完成一项任务。通常为服务器/客户端模式。
互联网用户无法完全控制他们在今天的网站上分享的数据。以太坊(Ethereum)的独特之处在于它试图将区块链作为一种方法来纠正其设计者所认为的网络设计中有问题的部分。这就像一个“分散的应用程序商店”,任何人都可以发布他们不可阻挡的应用程序(dapps),而不像今天的应用程序(比如 Gmail 或 Uber),不需要一个中间人来管理或管理用户的信息。
Dapps 直接连接用户和提供者。
一个例子就是使用这种设计去分散的 Twitter 抵制审查。一旦你将消息发布到区块链,它就不能被删除,甚至连创建微博客系统的公司也不能删除。但是,dapp 的定义并不存在,因为它是一个更新的概念。有几个主要特征是它们是开源的,并且没有失败的中心点。
三种类型
随着这种新技术在野外的应用,ethereum 的拥护者们可能会因为想要将“所有的东西都分散”而感到兴奋。但是,用户可以通过计算平台构建的应用程序类型可能有点窄。
ethereum 白皮书将 dapps 分为三类:管理资金的应用程序、涉及资金的应用程序(但也需要另一项),以及“其他”类别的应用程序,其中包括投票和治理系统。
在第一种应用程序中,用户可能需要交换以太作为一种方式来与另一个用户达成协议,使用网络的分布式计算机节点作为一种方式来促进该数据的分发。
第二种应用程序将钱与区块链之外的信息混合在一起。
例如,一个依赖于外部天气信息的农作物保险应用程序。(比方说,一个农民买了一种衍生品,如果有干旱影响他的工作,它会自动支付。)
为了执行,这些智能合同依靠所谓的“神谕”来传递外界的最新信息。(不过,值得注意的是,一些开发人员怀疑这种用例是否可以以分散的方式进行。)
如果比特币能与金融当局为所欲为,那么对于企业和其他类型的组织,是否也可以这样做呢?
分散的自治组织是一个特别有野心的 dapp 品种(这在“什么是 DAO”中得到了进一步的解释)。
目标是建立一个无领导的公司,在一开始就制定规则,讨论成员如何投票,如何发布公司资金,然后……让它去吧。