Solana 基础教程

Solana 是为支持大规模用户使用而构建的区块链,它具有处理大量交易的能力。

Solana 作为一个单一的全局状态机运行,具有开放、可互操作和去中心化的特性。 

Solana 与以太坊相比,在性能、吞吐量和交易费用等方面具有明显的优势,旨在提供高性能、低成本和可扩展性的解决方案。

Solana 广泛应用于各个领域,包括金融、NFT、支付和游戏等,

简单来说,Solana 是一条高性能的 L1 公链,是一个面向 去中心化应用 智能合约 的区块链平台。

1. Solana 优势

1)高性能

Solana 的主要优势之一是其高性能和可扩展性。它采用了一种称为 Proof of History(PoH)的共识机制,通过在区块链上插入时间戳来实现高速的交易处理。

这使得 Solana 能够并行处理数千笔交易,从而大大提高了网络的吞吐量和效率。

2)低成本

由于 Solana 的高性能和可扩展性,交易费用相对较低。

这使得开发者和用户能够以更低的成本进行交易和使用去中心化应用。

3)支持智能合约

与以太坊类似,Solana 也支持智能合约的开发和部署。

开发者可以使用 Rust 编程语言开发智能合约,并在 Solana 上部署它们,从而构建各种类型的去中心化应用。

2. Solana 历史

2017 年 11 月

Anatoly Yakovenko 发表了一篇白皮书,介绍了 “Proof of History” 这一技术,用于在不信任彼此的计算机之间进行时间同步。

根据 Anatoly 在高通、MesosphereDropBox 设计分布式系统的经验,他知道可靠的时钟可以使网络同步变得非常简单。当同步变得简单时,结果的网络可以非常快速,仅受网络带宽的限制。

Anatoly 注意到,没有时钟的区块链系统(如比特币和以太坊)在全球范围内的交易速度在 15次 每秒时遇到困难,而世界中心化支付系统(如 Visa )则需要峰值65000 次每秒。 

2018 年 2 月 28 日

发布了首个版本,演示了超过 10,000 个签名交易可以在半秒内验证和处理。不久之后,通过将签名验证转移至图形处理器,再次大大提高了吞吐量。

选择 Solana 作为区块链的名字,是用来致敬他们工作三年的圣地亚哥北部的一个海滩城镇 Solana Beach

2018 年 6 月

Solana 团队将技术扩展到云网络上运行,发布了一个 50 个节点的许可,且公开的测试网络,测试网络能够支持每秒 25 万个交易。

稍后又发布了一个以千兆网络运行 150 个节点的许可测试网络,演示了平均每秒处理 20 万个交易和突发 500 万个交易测试。

3. Solana 开发流程

Solana 网络是一个庞大的全球计算机,任何人都可以支付费用来存储和执行代码。

Solana 上部署的代码被称为 程序,在其他区块链上通常被称为 智能合约。如果要与 程序 交互,就需要从客户端向区块链上发送一笔交易。

Solana 的开发流程可以用 程序-客户端(program-client)模型来表示。

 

1)Program 程序开发

我们可以直接创建和部署自定义的 RustCC++ 程序到 Solana 区块链。这些程序部署后,任何人都可以使用它们。

我们可以使用客户端 SDK(或 CLI)编写 DApps 来与这些程序通信,这些客户端 SDK 底层均使用了 JSON RPC API

这部分工作通常也可以称为 合约开发

2)Client 客户端开发

我们可以编写与部署的与程序通信的去中心化应用 DApps,它们可以通过客户端 SDK 向程序提交交易指令。

最常用的应用包括:浏览器钱包、 Web 应用程,当然还可以构建移动或者桌面应用程序。

这部分工作通常也可以称为 前端开发。