对Solana的一些学习 本文内容主要来自Solana官方文档和一些查阅的网上资料。时间:2023.12
本文介绍了如何为 Solana gRPC 流实现重新连接逻辑,并具有重放功能,以确保不会错过任何插槽。通过跟踪最后接收的插槽并在断开连接后从该插槽恢复,可以避免错过更新或重复数据,从而提高应用程序的可靠性和实时性。
MEV是个大生意, MEV的钱主要被Jito协议、高质押节点、区块空间销售掮客所捕获
本文介绍了如何在Solana上使用Yellowstone gRPC动态修改订阅请求,而无需断开流或丢失数据。通过stream.write()方法,可以在连接中发送新的订阅请求,从而实现实时更新订阅,同时保持流的活动状态,避免断开和重新连接的开销,适用于需要根据用户行为或外部事件进行调整的应用场景,例如追踪新上线的Token、监控钱包活动或响应治理提议。
stream.write()
文章详细介绍了在 Solana 的 Anchor 框架中如何处理函数参数的限制,类似于以太坊中的 require 语句。通过代码示例展示了如何使用 require! 宏和错误处理机制来确保函数参数的有效性,并解释了 Solana 和以太坊在错误处理上的差异。
require
require!
本文详细介绍了如何安装 Solana 开发环境,并提供了一个从安装到运行“Hello World”程序的完整教程,包含问题排查和常见错误的解决方案。
本文详细介绍了 Solana 如何使用 IDL(接口定义语言)来描述如何与 Solana 程序交互,并通过 Anchor 框架自动生成 IDL 文件。文章还展示了如何通过 Rust 编写 Solana 程序,并通过 TypeScript 单元测试进行验证。
本文详细讲解了如何在Solana上使用Anchor框架部署程序,并解释了Solana程序的可变性和与Ethereum的差异。通过代码示例和命令行操作,展示了程序的部署、升级和测试过程。
本文深入探讨了Solana中lamport转移的潜在危险,通过一个“King of the SOL”的智能合约游戏案例,揭示了rent-exemption、可写账户的lamport转移失败以及write-demotion等问题可能导致程序出错甚至瘫痪。文章强调了在Solana上转移lamport并非总是直接的,需要考虑多种runtime-specific的特殊情况。
本节将探讨 Solana 中的日志和事件日志,以及如何查询历史交易。
本文介绍了如何使用Solana Web3.js 2.0与Metis Pump.fun API进行交互,包括如何获取报价、执行交易以及处理交易的签名和发送。提供了详细的TypeScript实现步骤,并附有相关代码示例。
本文介绍了如何使用Jito Bundles在Solana上实现多个交易的原子性执行。通过创建一个Rust应用程序,演示了如何将多个交易打包在一起,并添加小费以激励验证者。文章详细介绍了项目设置、代码实现、运行应用以及验证bundle的过程,帮助开发者了解和使用Jito Bundles。
Solana 是一个高性能的区块链平台,旨在实现快速、安全且可扩展的去中心化应用(dApps)和加密货币交易。它的设计初衷是解决传统区块链网络在扩展性和速度方面的局限,特别是比特币和以太坊在交易吞吐量和确认时间上的瓶颈。
Solana编程模型:Solana开发入门
Solana AppKit 是一个开源的 React Native 工具包,旨在简化在 Solana 上构建 iOS 和 Android 移动应用程序的过程。它通过提供预构建的模块和集成的协议,减少了开发 Solana 移动应用所需的复杂性和时间,使开发者能够专注于提供用户价值,支持钱包管理、交易处理、获取链上数据和资金管理等功能。