---
title: "Direct Shreds - 快速入门"
description: "使用 SLV 开发 Direct Shreds 客户端的快速入门指南"
canonical: "https://erpc.global/zh/doc/shredstream/quickstart/"
locale: "zh"
---

# Direct Shreds - 快速入门

## 安装 SLV

```bash
curl -fsSL https://storage.slv.dev/slv/install | sh
```

## $ slv b init

![slv b init](https://erpc.global/doc/bot/ShredsTsInit.jpg)

只需一条命令 `slv b init`，即可立即搭建基于高性能流数据的 Solana 机器人开发环境。

```bash
slv b init
```

- 如果您偏好基于 TypeScript 的 Shreds 机器人，请选择 `shreds-ts`
- 如果您偏好利用 Shreds 的 Rust 机器人，请选择 `shreds-rust`

## 允许 ICMP 延迟探测源

在选择 Shreds 区域时，ERPC 会从下列代理主机向您已注册的 IP 发送 ICMP 延迟探测。请允许来自所有列出的源 IP 的入站 ICMP 回显请求。如果这些请求被防火墙（ufw、云防火墙、安全组等）阻止，测量结果可能变为 `9999ms`，并可能选择非最优区域。同一区域中的多个 IP 分别属于不同的探测主机，必须全部允许。

[ERPC_PING_SOURCES:shreds]: #
| 区域 | ICMP 源 IP |
| --- | --- |
| 🇳🇱 Amsterdam | `82.21.43.35` |
| 🇺🇸 New York | `151.243.244.162` |
| 🇩🇪 Frankfurt | `151.241.178.73` |
| 🇯🇵 Tokyo | `143.20.238.88` |
| 🇸🇬 Singapore | `151.245.186.3` |
| 🇬🇧 London | `151.241.65.10` |

[ERPC_FAR_POINT_GUIDANCE_START:shreds]: #
### 已选择 Far Point

Shared Shreds 的 Far Point 是容量有限的回退选项。每个端点为所有客户提供的并发代理流总数最多为 32 条，而不是每位客户各有 32 个名额。订阅端运行在所选 Shreds 端点附近时，流式传输效果最佳；长距离流会更长时间占用共享连接、流量控制窗口和出口容量。为帮助保持共享环境的响应能力，请允许所有列出的区域 ICMP 探测源 IP 地址，并重新运行区域选择。如需持续使用，请考虑在所选端点附近使用 ERPC VPS。UDP Forwarding 提供 Standard 和 Premium。无论使用哪一种，UDP Forwarding 的区域都在 ERPC Web Dashboard 中选择，原始 Shreds 则通过 UDP 送达您配置的公共 IPv4 地址和端口。

[在此端点附近使用 ERPC VPS](https://erpc.global/zh/vps/) · [比较 UDP Forwarding 选项](https://erpc.global/zh/shreds/)

[ERPC_FAR_POINT_GUIDANCE_END:shreds]: #

### Shreds 客户端示例 - TypeScript

1. 将 `.env.sample` 文件重命名为 `.env`。
2. 使用您的实际端点更新 `.env` 文件中的值：

```env
SHREDS_ENDPOINT=http://shreds-ams6-1.erpc.global
SOLANA_RPC_ENDPOINT="https://edge.erpc.global?api-key=YOUR_API_KEY"
```

⚠️ **重要提示**：此端点仅作为示例提供，不能直接使用。请获取并设置您的实际端点。

3. 安装依赖并运行脚本：

```bash
pnpm i
pnpm dev
```

![Shreds TypeScript VSCode](https://erpc.global/doc/bot/ShredsTsStarter.jpg)

### Shreds 客户端示例 - Rust

1. 将 `.env.sample` 重命名为 `.env`
2. 使用您的实际 Shreds 端点编辑 `.env`：

```env
SHREDS_ENDPOINT=http://shreds-ams6-1.erpc.global
SOLANA_RPC_ENDPOINT="https://edge.erpc.global?api-key=YOUR_API_KEY"
```

:::warn[**请注意：**]
此端点为示例，不能直接使用。请获取并配置适合您环境的端点。
:::

3. 构建并运行客户端：

```bash
RUST_LOG=info cargo run
```

![Shreds Rust VSCode](https://erpc.global/doc/bot/ShredsRsStarter.jpg)

打开仪表盘：https://dashboard.erpc.global/zh

## Solana Stream SDK

![Solana Stream SDK](https://storage.validators.solutions/SolanaStreamSDK.jpg)

通过 `slv b init` 命令下载的 Shreds 启动代码中包含的客户端实现  
由开源项目 **Solana Stream SDK** 提供支持。

该 SDK 同时支持 Rust 和 TypeScript，能够高效处理 Solana 的直接通信层——  
包括 Shreds 订阅、数据包解析和交易提取。

使用此 SDK，您可以立即开始 Shreds 流开发。  
`slv b init` 生成的启动代码可作为实用模板，供您在此基础上构建自己的应用。

更多详情请访问 GitHub 仓库：  
[https://github.com/ValidatorsDAO/solana-stream](https://github.com/ValidatorsDAO/solana-stream)
