FilSwan开发文档
中文(简体)
  • 开始
    • FilSwan 概览
    • 协议栈
      • 跨链共识层
      • Peer-to-Peer (P2P) 网络
      • 支付频道
      • Service Discovery
      • 数据市场
      • 索引和缓存市场
      • Web3 任务bid市场
      • 存储层
      • 计算层
      • CDN 层
      • 治理
    • 联系我们
      • 社交账号&社区
      • 商业合作
  • Filswan Platform
    • 概览
      • FilSwan 竞价系统
      • Web3自动交易匹配
      • 信誉系统
    • 主要功能
      • 任务管理
        • 创建新任务
        • Navigate Tasks
        • 更新任务
        • 分配任务
      • 我的资料
        • 注册成为存储提供商
      • 寻找存储提供商
        • 存储提供商详情
      • DataCap订单续期服务
  • Multichain.Storage
    • 概览
      • Flink
    • Multichain.Storage 用户指南
      • 公链测试网
      • 设置MetaMask
      • 用Alchemy RPC URL配置MetaMask
    • 开发人员快速入门
      • SDK
        • js mcs SDK
          • 开始
          • 上传文件
          • 支付存储费用
          • 铸造NFT
          • 文件列表
          • 获取文件详情
          • 获取文件在Filecoin上的状态
          • SDK安装视频教程
        • python mcs SDK
          • 开始
          • 上传文件
          • Stream Upload Files
          • 支付存储费用
          • 铸造NFT
          • 文件列表
          • 获取文件详情
      • 更多资源
    • 运行Multichain.Storage节点
    • Multichain Storage 概述
      • Flink
      • Multichain.Storage Mumbai测试网用户指南
      • Multichain.Storage Polygon 主网用户指南
    • 开发人员快速入门
      • SDK
        • js-mcs-sdk
          • 开始
          • 上传文件
          • 支付数据存储费用
          • Mint NFTs资产
          • 列出文件
          • 获取文件详细信息
          • 获取文件的Filecoin状态
      • 其他资源
  • Swan Provider
    • 概览
    • 功能
    • 使用指南
      • 前提条件
      • 安装
      • 配置并运行
      • Swan Provider 视频教程
    • 常见问题
      • 1. Storage Provider 绑定新账号
      • 2. 如何检查您的 Storage Provider 连通性/稳定性
      • 3. 如何暂停接受自动竞价订单
      • 4. aria2_download_dir 和aria2_candidate_dirs 的区别
      • 5. Boostd 正常运行情况下如何配置从 Swan Provider 接收订单
      • 6. 接单过程中总出现拒绝信息
      • 7. 如何检查 aria2 是否在运行?
      • 8. Swan Platform 无响应
      • 9. Storage Provider 状态显示“Offline/离线”
      • 10. 如何检查任务状态
      • 11. 如何配置 Storage Provider Market
      • 12. 如何设置接单条件
  • SWAN CLIENT
    • 概览
    • 基本概念须知
    • 使用指南
      • Filecoin 交易发送引擎
        • 安装
        • 配置
        • 前提条件
        • 生成 CAR 文件
        • Meta-CAR
        • 上传 CAR 文件到 IPFS
        • 创建任务
      • 区块链 RPC 服务
        • 部署 RPC 服务
        • RPC 命令
      • Swan Client 视频教程
  • FS3
    • 概览
    • Setup your FS3
      • 前提
      • 安装 FS3
      • FS3安装视频教程
    • FS3 User Guide
    • FS3 User Guide (Cloud Version)
    • FS3手册中文版
  • 开发资源
    • Swan Token 合约
      • Acquire Testnet USDC and MATIC tokens
    • FilSwan API
    • MCS API
    • MCS 2.0 API
    • Flink API
    • FS3 API
    • API密钥
    • 有关FilSwan的常见问题
Powered by GitBook
On this page
  • 系统设计
  • MCS 是如何运行的?
  • 模块
  • 如何开始构建
  • 配置
  1. Multichain.Storage

开发人员快速入门

PreviousMultichain.Storage Polygon 主网用户指南NextSDK

Last updated 2 years ago

多链存储(以下称为“Multichain.Storage”)是一套以太坊扩展解决方案,可实现高吞吐量、低成本的智能合约,同时保持可信赖的安全性。

以下文档描述了如何使用 Multichain.Storage,它目前在 Polygon Mumbai 测试网上运行。 无论您是只想开始构建的开发人员,还是想深入了解 MCS 的内部结构及其工作原理,此站点都是适合您的地方。

系统设计

MCS 是如何运行的?

如果您想了解 MCS 的运行原理,最好从 用户指南部分开始,它提供了 MCS 内部结构的概述。 从那里,您可以跳转到有关系统各个组件的更详细的解释。

模块

代币交换: 代币交换模块负责将用户的代币换成包裹的代币,可以是USDC或其他代币。

1、用户在上传文件时支付 USDC 或其他代币,这些代币称为用户代币。

2、Multichain.Storage 在将数据存储到 Filecoin 网络时使用 FIL(称为包装代币)进行支付。

3、用户代币应通过此模块更改为包装代币,此步骤称为代币交换。

4、代币交换是通过 DEX 的 Sushi Swap 完成的。

支付模块:

1、上传文件后,根据 :

  • 矿工平均价格

  • 文件大小

  • 持续时间

3、在退款步骤中,锁定的超额支付部分将返回到用户钱包。

**DAO 签名:**如果 DAO 检测到上传的文件已被链接,则会触发签名操作。

如何开始构建

先决条件

  • 操作系统: Ubuntu 20.04 LTS

  • Mysql5.5+

  • Lotus 节点

  • IPFS Client

Lotus 节点

  • Lotus 节点用于制作Car文件和发送离线交易。

  • 在与 MCS 相同的机器上安装 Lotus 节点或 Lotus lite 节点。

  • Lotus全节点相对于Lotus轻节点来说太重了,所以首选Lotus轻节点。

  • Lotus lite 节点依赖于一个 Lotus 节点,所以在使用 Lotus lite 节点时要确保某个地方有一个 Lotus 节点。

安装

wget https://github.com/filswan/multi-chain-payment/releases/tag/v1.0.1/install.sh
./install.sh

选项2️⃣ 源代码

🔔go 1.16+ 为必填项

git clone https://github.com/filswan/multi-chain-payment.git
cd multi-chain-payment
git checkout <release_branch>
./build_from_source.sh

安装后

  • 在执行之前,您应该在 ~/.swan/mcp/config.toml 中检查您的配置,以确保它是正确的。

vi ~/.swan/mcp/config.toml
  • 在执行之前,您应该在 ~/.swan/mcp/.env 中检查您的环境变量,以确保它是正确的。

vi ~/.swan/mcp/.env
  • 在相关文件中设置配置和 env 变量后,您可以在 ./build 目录中运行多链支付。

./build/multi-chain-payment

注意

  • 日志位于目录 ./logs 中

  • 您可以在./multi-chain-payment之前添加 nohup,以忽略 HUP(挂断)信号,从而避免在注销时停止。

  • 你可以加 >> mcp.log在命令中让所有日志输出到 mcp.log.

  • 你可以加 &在命令末尾让程序在后台运行。

  • 如:

nohup ./multi-chain-payment-0.2.1-rc1-unix >> mcp.log &   #After installation from Option 1
nohup ./build/multi-chain-payment >> ./build/mcp.log &    #After installation from Option 2

配置

您需要修改配置文件并输入您的配置参数,下面将介绍配置项:

**config.toml **

  • port:Web API 端口。

  • release :在发布模式下工作时:将此设置为 true,否则设置为 false 和环境。 变量 GIN_MODE 不释放。

  • swan_platform_fil_wallet :用于在 Filecoin 网络上支付的钱包地址。

  • filink_url :可以从这里搜索交易数据。

**Lotus **

ipfs_server

  • download_url_prefix :IPFS 服务器 url 前缀,如: http://[ip]:[port]. 存储Car文件以供存储提供商下载。 Car文件网址将是 [download_url_prefix]/ipfs/[file_hash]

  • upload_url_prefix :上传文件的IPFS服务器url,如 http://[ip]:[port]

swan_task

  • dir_deal :用于保存生成的 Car 文件和 CSV 的输出目录。

  • verify_deal : [true/false] 此任务中的交易是否为真实数据。

  • fast_retrieval : [true/false] 表示数据应该可用于快速检索。

  • start_epoch_hours : start_epoch 从当前时间开始以小时为单位的交易。

  • expired_days :存储提供商密封数据的预期完成天数。

  • max_price :愿意为每个 GiB/epoch 支付离线交易的最高价格。

  • generate_md5 : [true/false] 是否为每个Car文件生成MD5,注意:这是一个消耗资源的动作。

Polygon

  • rpc_url :您的Polygon网络 RPC URL。

  • payment_contract_address :Polygon上的Swan支付网关地址以锁定资金。

  • sushi_dex_address : Polygon上的寿司地址。

  • usdc_wFil_pool_contract :从Polygon上的寿司获取 USDC 和 wFil 之间汇率的地址。

  • dao_contract_address :Polygon上的Swan DAO 地址,用于接收 DAO 签名。

  • mcp_payment_receiver_address :MCS 钱包地址,用于从解锁操作中接收资金。

  • gas_limit :交易的Gas限制。

  • unlock_interval_minute : 2 次解锁操作之间的解锁间隔(分钟),不能小于 1。

**.env **

  • privateKeyOnPolygon :钱包的私钥,用于在Polygon网络上执行合约方法并支付 gas。

然后估计的金额将被锁定到付款合同地址,请参阅。

2、在解锁步骤中,通过Swan平台FIL钱包向Filecoin网络支付的金额,将转入MCS支付接收地址,详见。

**Swan Client API:**可以找到更多信息 。

**Data DAO:**更多信息可以在 。

**IPFS:**可以找到更多信息 。

**Filecoin存储:**可以找到更多信息 。

Option1️⃣

**选项2️⃣ **

**选项1️⃣ 预构建包:**请参阅资产

client_api_url :lotus 客户端 web api 的 URL,如: http://[ip]:[port]/rpc/v0,一般来说 [port]是 1234. 请参阅

client_access_token :lotus 客户端 web api 的访问令牌。 它应该具有管理员访问权限。 您可以使用命令从您的 Lotus 节点机器获取它 lotus auth create-token --perm admin. 请参阅

配置
配置
这里
Flink
这里
这里
安装Lotus全节点
安装Lotus轻节点
release assets
Lotus API
Obtaining Tokens