📢 Gate广场 #创作者活动第一期# 火热开启,助力 PUMP 公募上线!
Solana 爆火项目 Pump.Fun($PUMP)现已登陆 Gate 平台开启公开发售!
参与 Gate广场创作者活动,释放内容力量,赢取奖励!
📅 活动时间:7月11日 18:00 - 7月15日 22:00(UTC+8)
🎁 活动总奖池:$500 USDT 等值代币奖励
✅ 活动一:创作广场贴文,赢取优质内容奖励
📅 活动时间:2025年7月12日 22:00 - 7月15日 22:00(UTC+8)
📌 参与方式:在 Gate 广场发布与 PUMP 项目相关的原创贴文
内容不少于 100 字
必须带上话题标签: #创作者活动第一期# #PumpFun#
🏆 奖励设置:
一等奖(1名):$100
二等奖(2名):$50
三等奖(10名):$10
📋 评选维度:Gate平台相关性、内容质量、互动量(点赞+评论)等综合指标;参与认购的截图的截图、经验分享优先;
✅ 活动二:发推同步传播,赢传播力奖励
📌 参与方式:在 X(推特)上发布与 PUMP 项目相关内容
内容不少于 100 字
使用标签: #PumpFun # Gate
发布后填写登记表登记回链 👉 https://www.gate.com/questionnaire/6874
🏆 奖励设置:传播影响力前 10 名用户,瓜分 $2
Solana技术架构深度解析:高性能与挑战并存 生态发展前景几何?
再解Solana技术架构:将要迎来第二春吗?
Solana是一个高性能的区块链平台,采用独特的技术架构实现高吞吐量和低延迟。其核心技术包括Proof of History (POH)算法确保交易顺序和全局时钟,Leader Rotation Schedule和Tower BFT共识机制提高区块出块速率。Turbine机制通过Reed-solomon编码优化大区块传播。Solana Virtual Machine (SVM)和Sealevel并行执行引擎加快交易执行速度。这些都是Solana实现高性能的架构设计,但同时也带了一些问题,如网络宕机、交易失败、MEV问题、状态增长过快和中心化问题,我们也在本文中着重阐述了这种机制带来的问题。
Solana生态发展迅速,各项数据指标在上半年都迅猛发展,尤其在DeFi、基础设施、GameFi/NFT、DePin/AI和消费者应用领域。Solana的高TPS和面向消费者应用的战略以及品牌效应较弱的生态环境为创业者和开发者提供了丰富的创业机会。在消费者应用方面,Solana展示了其对于推动区块链技术在更广泛领域应用的愿景。通过支持如Solana Mobile和专为消费者应用程序构建SDK,Solana正致力于将区块链技术集成到日常应用中,从而提高用户的接受度和便利性。例如,Stepn等应用程序通过结合区块链和移动技术,为用户提供了新颖的健身和社交体验。尽管目前许多消费者应用程序仍在探索最佳的商业模式和市场定位,但Solana提供的技术平台和生态系统支持,无疑为这些创新尝试提供了强有力的后盾。随着技术的进一步发展和市场的成熟,Solana有望在消费者应用领域实现更多的突破和成功案例。
Solana虽然在区块链行业中以其高吞吐量和低交易成本获得了显著的市场份额,但它也面临着来自其他新兴公链的激烈竞争。Base作为EVM生态中的一个潜在对手,其链上活跃地址数正在迅速增长,同时,Solana的DeFi领域总锁仓量(TVL)虽然创下了历史新高,但Base等竞争对手也在快速占领市场份额,Base生态的融资额也首次在Q2季度超越Solana。
尽管Solana在技术和市场接受度上取得了一定的成就,但它需要不断创新和改进,以应对来自Base等竞争对手的挑战。特别是在提高网络稳定性、降低交易失败率、解决MEV问题以及减缓状态增长速度等方面,Solana需要持续优化其技术架构和网络协议,以保持其在区块链行业的领先地位。
技术架构
Solana以其POH算法、Tower BFT共识机制以及Trubine数据传输网络和SVM虚拟机带来的高TPS和快速Finality著称。我们将要简要介绍其各个组件是如何工作的,如何发挥其高性能的目标以进行架构设计的,以及在这种架构设计下带来的弊端和衍生而来的问题。
POH算法
POH(Proof of History)是一个确定全局时间的技术,其并不是共识机制,而是一种确定交易顺序的算法。POH技术是来源于最基础的密码学SHA256技术。SHA256通常用于计算数据的完整性,给定一个输入X,则有且只有唯一的输出Y,因此对该X任何变动都会导致Y的完全不同。
在Solana的POH序列中,通过应用sha256算法就能确保整个序列的完整性,也就确定了其中交易的完整性。举个例子,如果我们将交易打包成一个区块,生成对应的sha256 hash值,那么这个区块内的交易就被确定,任何变动都会导致hash值的更改,之后这个区块hash作为将作为下一个sha256函数的X的一部分,再添加下一个区块的hash,那么上一个区块以及下一个区块就都被确定下来,任何变动都会导致新Y的不同。
这个就是其Proof of History技术的核心含义,上一个区块hash,将作为下一个sha256函数的一部分,类似于一个链条,最新的Y,总是包含了历史的证明。
在Solana的交易流架构图中,描述了POH机制下的交易流程,在一个称为Leader Rotation Schedule的轮换机制下,会在所有的链上验证者Validator中,产生一个Leader节点,该Leader节点收集交易并且进行排序执行,生成POH序列,之后会生成一个区块传播给其它节点。
为了避免Leader节点处产生单点故障,因此引入了时间限制。在Solana中时间单位是以epoch进行划分,每个epoch包含432,000个slot(时隙),每个slot持续400ms,在每一个slot中,轮换系统会在每个slot内分配一个Leader节点,Leader节点必须在给定的slot时间内发布区块(400ms),否则,就会跳过这个slot,重新选举下一个slot的Leader节点。
总的来说,Leader节点采用POH机制能让历史的交易全部确定下来。Solana的基本时间单位是Slot,Leader节点需要在一个slot内广播区块。用户将交易通过RPC节点给到Leader,Leader节点打包交易排序然后执行生成区块,区块传播给其它验证者,验证者需要通过一个机制来达成共识,对区块内的交易以及顺序达成共识,该共识使用的就是Tower BFT共识机制。
Tower BFT共识机制
Tower BFT共识协议来自于BFT共识算法,是其的一种具体工程实现,该算法仍然与POH算法有关。在对区块进行投票的时候,如果验证者的投票本身就是一种交易,那么用户交易以及验证者交易所形成的区块哈希,也能够作为历史证明,哪个用户的交易细节以及验证者的投票细节都能被唯一确认。
在Tower BFT算法中规定,如果所有验证者对该区块进行投票,超过2/3的验证者投了approve票,那么这个区块就能被确定下。该机制的好处是,节省大量的内存,因为仅仅需要对哈希序列进行投票即可确认区块。但是在传统的共识机制中,一般采用的是区块泛洪,就是一个验证者接收到了区块然后就会发送给周围的验证者,这样就会造成网络的大量冗余,因为一个验证者接收到了不只一次相同的区块。
在Solana中,由于存在大量的验证者投票交易,并且由于Leader节点中心化带来的高效以及400ms的Slot时间,这就导致了整体区块大小以及出块频率都特别高,大区块在传播时,也会给网络造成很大的压力,Solana采用Turbine机制来解决大区块的传播问题。
Turbine
Leader节点通过称为Sharding的过程将区块拆分为shred的子区块,其规格大小以MTU(最大传输单元,无需将其分割成更小的单元即可从一个节点发送到下一个节点的最大数据量)为单位。然后通过使用Reed-solomon擦除码方案来保障数据的完整性以及可用性。
通过将区块分成四个Data Shreds,然后为了防止数据传输过程中丢包和损坏,因此使用Reed-solomon编码将四个包编码成八个包,该套方案能容忍至多50%的丢包率。在实际的测试中,Solana的丢包率大概为15%,因此这套方案能很好的兼容当前的Solana架构。
在底层的数据传输中,一般会考虑使用UDP/ TCP协议,由于Solana的对丢包率的容忍度较高,因此采用了UDP协议进行传输,其缺点在于丢包时不会重新传输,但是优点在于更快的传输速率。相反,TCP协议会在丢包时重新多次传输,会极大的降低传输速率以及吞吐量,有了Reed-solomon以后,这套方案,能显著增加Solana的吞吐量,在真实环境中,吞吐量能够提高9倍。
Turbine将数据分片以后,使用多层传播机制来进行传播,Leader节点会在每个Slot结束之前将区块交给任意一个区块验证者,然后该验证者会将区块分片成Shreds,并且生成纠删码,该验证者之后会开启Turbine 传播。首先要传播到根节点,然后该根节点会确定哪些验证者位于第几层。其过程如下所示:
创建节点列表:根节点将所有的活跃验证者汇总到一个列表中,然后根据每个验证者在网络中的权益(也就是质押的SOL数量)进行排序,权重较高的则位于第一层,以此类推。
节点分组:然后每个位于第一层的验证者也会创建术语自己的节点列表,以构建自己的第一层。
层形成:从列表顶部将节点划分为层,通过确定深度和广度两个值,就能确定整颗树的大致形状,这个参数会影响shreds的传播速率。
权益占比较高的节点,在层级划分时,在更上一层,那么就能够提前获得完整的shreds,此时就可以恢复完整区块,而后面层的节点,由于传输的损耗,其获得完整shreds的概率会降低,如果这些shreds不足以构建完整的碎片,会要求Leader直接重新传输。那么这时数据传输会向树内部进行,而第一层的节点早就构建好了完整的区块确认,约后面层次的验证者完成区块构建之后进行投票的时间就越久。
这套机制的思想类似于Leader节点的单节点机制。在区块传播过程中也存在一些优先的节点,这些节点首先获得shreds碎片组建完整区块以达成投票共识的过程。将冗余推向更深层次,能够显著加快Finality的进行,并且最大化吞吐量和效率。因为实际上前几层可能就代表了2/3的节点了那么后续节点的投票也就无关紧要了。
SVM
Solana能够每秒处理数千笔交易,主要的原因在于其POH机制、Tower BFT共识和Turbine数据传播机制。但是SVM作为状态转换的虚拟机,如果Leader节点在进行交易执行中,SVM处理速度较慢,那么就会让整个系统的吞吐量降低,因此针对SVM,Solana提出了Sealevel并行执行引擎来加快执行交易的速度。
在SVM中,指令由4个部分组成,包含程序ID,程序指令以及读取/写入数据的账号列表。通过确定当前账户是处于读取还是写入状态以及要进行状态更改的操作是否有冲突,可以将账户的交易指令中对状态没有冲突的并行化允许,每条指令以Program ID来表示。而这也是为什么Solana的验证者的要求很高的原因之一,因为要求验证者的GPU/CPU能够支持SIMD(单指令多数据)以及AVX高级矢量拓展能力。
生态发