Faru.dev 视角

文章

关于软件架构、产品策略与可靠交付的技术视角。

内容地图

4 栏目

显示 120 篇

架构 · 手册

金融科技公司真正在寻找什么?

职业视角:金融科技公司而非 Stripe SDK;它寻求失败思维、和解、幂等性和证据驱动的思维。

系列目录

分布式支付引擎

第 22 / 22

  1. 第 1 なぜ決済システムは分散型システムなのでしょうか?
  2. 第 2 チェックアウト ステータス マシンの設計: チェックアウトと支払いが同じものではないのはなぜですか?
  3. 第 3 収集(キャプチャ)は簡単だが、ファイナライズはな​​ぜ難しいのか?
  4. 第 4 不変のチェックアウト スナップショットの設計: カートを凍結する決定
  5. 第 5 API (アプリケーション プログラミング インターフェイス) リクエストを超えた冪等性 (反復可能で安全なトランザクション)
  6. 第 6 決済システムにおける Webhook の信頼性
  7. 第 7 決済システムにおける送信箱/受信箱のパターン
  8. 第 8 支払い証明書と支払いステータス: 混同すべきではない理由
  9. 第 9 SDK (ソフトウェア開発キット) を漏らさないプロバイダーの抽象化: ゲートウェイの限界
  10. 第 10 语义事件而不是原始提供者数据
  11. 第 11 付款错误分类
  12. 第 12 支付工作人员的重试算法
  13. 第 13 数据库支持租赁作品
  14. 第 14 付款对账工人施工
  15. 第 15 已付款但无订单:改进
  16. 第 16 为什么最终一致性优于分布式事务
  17. 第 17 Webhook 下的乐观并发
  18. 第 18 付款可观察性和相关性
  19. 第 19 付款回收管道和操作手册
  20. 第 20 一次性有效处理付款
  21. 第 21 设计生产支付引擎
  22. 第 22 金融科技公司真正在寻找什么?
架构 · 手册

设计生产支付引擎

22 部分系列的综合:具有结账协调器和提供商网关的生产支付引擎的架构清单。

系列目录

分布式支付引擎

第 21 / 22

  1. 第 1 なぜ決済システムは分散型システムなのでしょうか?
  2. 第 2 チェックアウト ステータス マシンの設計: チェックアウトと支払いが同じものではないのはなぜですか?
  3. 第 3 収集(キャプチャ)は簡単だが、ファイナライズはな​​ぜ難しいのか?
  4. 第 4 不変のチェックアウト スナップショットの設計: カートを凍結する決定
  5. 第 5 API (アプリケーション プログラミング インターフェイス) リクエストを超えた冪等性 (反復可能で安全なトランザクション)
  6. 第 6 決済システムにおける Webhook の信頼性
  7. 第 7 決済システムにおける送信箱/受信箱のパターン
  8. 第 8 支払い証明書と支払いステータス: 混同すべきではない理由
  9. 第 9 SDK (ソフトウェア開発キット) を漏らさないプロバイダーの抽象化: ゲートウェイの限界
  10. 第 10 语义事件而不是原始提供者数据
  11. 第 11 付款错误分类
  12. 第 12 支付工作人员的重试算法
  13. 第 13 数据库支持租赁作品
  14. 第 14 付款对账工人施工
  15. 第 15 已付款但无订单:改进
  16. 第 16 为什么最终一致性优于分布式事务
  17. 第 17 Webhook 下的乐观并发
  18. 第 18 付款可观察性和相关性
  19. 第 19 付款回收管道和操作手册
  20. 第 20 一次性有效处理付款
  21. 第 21 设计生产支付引擎
  22. 第 22 金融科技公司真正在寻找什么?
架构 · 手册

一次性有效处理付款

一次性消息传递是一个谎言。深度防御与幂等、去重、发件箱、对账相结合,如何实现一次见效的业务成果?

系列目录

分布式支付引擎

第 20 / 22

  1. 第 1 なぜ決済システムは分散型システムなのでしょうか?
  2. 第 2 チェックアウト ステータス マシンの設計: チェックアウトと支払いが同じものではないのはなぜですか?
  3. 第 3 収集(キャプチャ)は簡単だが、ファイナライズはな​​ぜ難しいのか?
  4. 第 4 不変のチェックアウト スナップショットの設計: カートを凍結する決定
  5. 第 5 API (アプリケーション プログラミング インターフェイス) リクエストを超えた冪等性 (反復可能で安全なトランザクション)
  6. 第 6 決済システムにおける Webhook の信頼性
  7. 第 7 決済システムにおける送信箱/受信箱のパターン
  8. 第 8 支払い証明書と支払いステータス: 混同すべきではない理由
  9. 第 9 SDK (ソフトウェア開発キット) を漏らさないプロバイダーの抽象化: ゲートウェイの限界
  10. 第 10 语义事件而不是原始提供者数据
  11. 第 11 付款错误分类
  12. 第 12 支付工作人员的重试算法
  13. 第 13 数据库支持租赁作品
  14. 第 14 付款对账工人施工
  15. 第 15 已付款但无订单:改进
  16. 第 16 为什么最终一致性优于分布式事务
  17. 第 17 Webhook 下的乐观并发
  18. 第 18 付款可观察性和相关性
  19. 第 19 付款回收管道和操作手册
  20. 第 20 一次性有效处理付款
  21. 第 21 设计生产支付引擎
  22. 第 22 金融科技公司真正在寻找什么?
架构 · 手册

付款回收管道和操作手册

自动化之前:协调工作人员和恢复管道。当独特性之墙阻碍重播时,基于证据的人类操作手册就会发挥作用。

系列目录

分布式支付引擎

第 19 / 22

  1. 第 1 なぜ決済システムは分散型システムなのでしょうか?
  2. 第 2 チェックアウト ステータス マシンの設計: チェックアウトと支払いが同じものではないのはなぜですか?
  3. 第 3 収集(キャプチャ)は簡単だが、ファイナライズはな​​ぜ難しいのか?
  4. 第 4 不変のチェックアウト スナップショットの設計: カートを凍結する決定
  5. 第 5 API (アプリケーション プログラミング インターフェイス) リクエストを超えた冪等性 (反復可能で安全なトランザクション)
  6. 第 6 決済システムにおける Webhook の信頼性
  7. 第 7 決済システムにおける送信箱/受信箱のパターン
  8. 第 8 支払い証明書と支払いステータス: 混同すべきではない理由
  9. 第 9 SDK (ソフトウェア開発キット) を漏らさないプロバイダーの抽象化: ゲートウェイの限界
  10. 第 10 语义事件而不是原始提供者数据
  11. 第 11 付款错误分类
  12. 第 12 支付工作人员的重试算法
  13. 第 13 数据库支持租赁作品
  14. 第 14 付款对账工人施工
  15. 第 15 已付款但无订单:改进
  16. 第 16 为什么最终一致性优于分布式事务
  17. 第 17 Webhook 下的乐观并发
  18. 第 18 付款可观察性和相关性
  19. 第 19 付款回收管道和操作手册
  20. 第 20 一次性有效处理付款
  21. 第 21 设计生产支付引擎
  22. 第 22 金融科技公司真正在寻找什么?
架构 · 手册

付款可观察性和相关性

如何将每个日志、指标和跟踪与付款 ID 相关联?逐步事件日志和延迟最终确定指标如何保存操作?

系列目录

分布式支付引擎

第 18 / 22

  1. 第 1 なぜ決済システムは分散型システムなのでしょうか?
  2. 第 2 チェックアウト ステータス マシンの設計: チェックアウトと支払いが同じものではないのはなぜですか?
  3. 第 3 収集(キャプチャ)は簡単だが、ファイナライズはな​​ぜ難しいのか?
  4. 第 4 不変のチェックアウト スナップショットの設計: カートを凍結する決定
  5. 第 5 API (アプリケーション プログラミング インターフェイス) リクエストを超えた冪等性 (反復可能で安全なトランザクション)
  6. 第 6 決済システムにおける Webhook の信頼性
  7. 第 7 決済システムにおける送信箱/受信箱のパターン
  8. 第 8 支払い証明書と支払いステータス: 混同すべきではない理由
  9. 第 9 SDK (ソフトウェア開発キット) を漏らさないプロバイダーの抽象化: ゲートウェイの限界
  10. 第 10 语义事件而不是原始提供者数据
  11. 第 11 付款错误分类
  12. 第 12 支付工作人员的重试算法
  13. 第 13 数据库支持租赁作品
  14. 第 14 付款对账工人施工
  15. 第 15 已付款但无订单:改进
  16. 第 16 为什么最终一致性优于分布式事务
  17. 第 17 Webhook 下的乐观并发
  18. 第 18 付款可观察性和相关性
  19. 第 19 付款回收管道和操作手册
  20. 第 20 一次性有效处理付款
  21. 第 21 设计生产支付引擎
  22. 第 22 金融科技公司真正在寻找什么?
架构 · 手册

Webhook 下的乐观并发

当使用 webhook 的同步响应同时触及相同的付款时,版本令牌和租约如何解决竞争?终端支付中陈旧的读取客户端秘密...

系列目录

分布式支付引擎

第 17 / 22

  1. 第 1 なぜ決済システムは分散型システムなのでしょうか?
  2. 第 2 チェックアウト ステータス マシンの設計: チェックアウトと支払いが同じものではないのはなぜですか?
  3. 第 3 収集(キャプチャ)は簡単だが、ファイナライズはな​​ぜ難しいのか?
  4. 第 4 不変のチェックアウト スナップショットの設計: カートを凍結する決定
  5. 第 5 API (アプリケーション プログラミング インターフェイス) リクエストを超えた冪等性 (反復可能で安全なトランザクション)
  6. 第 6 決済システムにおける Webhook の信頼性
  7. 第 7 決済システムにおける送信箱/受信箱のパターン
  8. 第 8 支払い証明書と支払いステータス: 混同すべきではない理由
  9. 第 9 SDK (ソフトウェア開発キット) を漏らさないプロバイダーの抽象化: ゲートウェイの限界
  10. 第 10 语义事件而不是原始提供者数据
  11. 第 11 付款错误分类
  12. 第 12 支付工作人员的重试算法
  13. 第 13 数据库支持租赁作品
  14. 第 14 付款对账工人施工
  15. 第 15 已付款但无订单:改进
  16. 第 16 为什么最终一致性优于分布式事务
  17. 第 17 Webhook 下的乐观并发
  18. 第 18 付款可观察性和相关性
  19. 第 19 付款回收管道和操作手册
  20. 第 20 一次性有效处理付款
  21. 第 21 设计生产支付引擎
  22. 第 22 金融科技公司真正在寻找什么?
架构 · 手册

为什么最终一致性优于分布式事务

在PSP、订单和财务之间设置2PC是一个陷阱。 Saga 和和解是分布式支付一致性的真正答案。

系列目录

分布式支付引擎

第 16 / 22

  1. 第 1 なぜ決済システムは分散型システムなのでしょうか?
  2. 第 2 チェックアウト ステータス マシンの設計: チェックアウトと支払いが同じものではないのはなぜですか?
  3. 第 3 収集(キャプチャ)は簡単だが、ファイナライズはな​​ぜ難しいのか?
  4. 第 4 不変のチェックアウト スナップショットの設計: カートを凍結する決定
  5. 第 5 API (アプリケーション プログラミング インターフェイス) リクエストを超えた冪等性 (反復可能で安全なトランザクション)
  6. 第 6 決済システムにおける Webhook の信頼性
  7. 第 7 決済システムにおける送信箱/受信箱のパターン
  8. 第 8 支払い証明書と支払いステータス: 混同すべきではない理由
  9. 第 9 SDK (ソフトウェア開発キット) を漏らさないプロバイダーの抽象化: ゲートウェイの限界
  10. 第 10 语义事件而不是原始提供者数据
  11. 第 11 付款错误分类
  12. 第 12 支付工作人员的重试算法
  13. 第 13 数据库支持租赁作品
  14. 第 14 付款对账工人施工
  15. 第 15 已付款但无订单:改进
  16. 第 16 为什么最终一致性优于分布式事务
  17. 第 17 Webhook 下的乐观并发
  18. 第 18 付款可观察性和相关性
  19. 第 19 付款回收管道和操作手册
  20. 第 20 一次性有效处理付款
  21. 第 21 设计生产支付引擎
  22. 第 22 金融科技公司真正在寻找什么?
架构 · 手册

已付款但无订单:改进

事件响应指南:客户已付费但未下订单;多方故意篮子杂乱;仔细清理重复数据。

系列目录

分布式支付引擎

第 15 / 22

  1. 第 1 なぜ決済システムは分散型システムなのでしょうか?
  2. 第 2 チェックアウト ステータス マシンの設計: チェックアウトと支払いが同じものではないのはなぜですか?
  3. 第 3 収集(キャプチャ)は簡単だが、ファイナライズはな​​ぜ難しいのか?
  4. 第 4 不変のチェックアウト スナップショットの設計: カートを凍結する決定
  5. 第 5 API (アプリケーション プログラミング インターフェイス) リクエストを超えた冪等性 (反復可能で安全なトランザクション)
  6. 第 6 決済システムにおける Webhook の信頼性
  7. 第 7 決済システムにおける送信箱/受信箱のパターン
  8. 第 8 支払い証明書と支払いステータス: 混同すべきではない理由
  9. 第 9 SDK (ソフトウェア開発キット) を漏らさないプロバイダーの抽象化: ゲートウェイの限界
  10. 第 10 语义事件而不是原始提供者数据
  11. 第 11 付款错误分类
  12. 第 12 支付工作人员的重试算法
  13. 第 13 数据库支持租赁作品
  14. 第 14 付款对账工人施工
  15. 第 15 已付款但无订单:改进
  16. 第 16 为什么最终一致性优于分布式事务
  17. 第 17 Webhook 下的乐观并发
  18. 第 18 付款可观察性和相关性
  19. 第 19 付款回收管道和操作手册
  20. 第 20 一次性有效处理付款
  21. 第 21 设计生产支付引擎
  22. 第 22 金融科技公司真正在寻找什么?
架构 · 手册

付款对账工人施工

扫地机如何改善漂移:虽然PSP成功,但本地注册可能会过期;如何恢复老化的 FinalizePending。

系列目录

分布式支付引擎

第 14 / 22

  1. 第 1 なぜ決済システムは分散型システムなのでしょうか?
  2. 第 2 チェックアウト ステータス マシンの設計: チェックアウトと支払いが同じものではないのはなぜですか?
  3. 第 3 収集(キャプチャ)は簡単だが、ファイナライズはな​​ぜ難しいのか?
  4. 第 4 不変のチェックアウト スナップショットの設計: カートを凍結する決定
  5. 第 5 API (アプリケーション プログラミング インターフェイス) リクエストを超えた冪等性 (反復可能で安全なトランザクション)
  6. 第 6 決済システムにおける Webhook の信頼性
  7. 第 7 決済システムにおける送信箱/受信箱のパターン
  8. 第 8 支払い証明書と支払いステータス: 混同すべきではない理由
  9. 第 9 SDK (ソフトウェア開発キット) を漏らさないプロバイダーの抽象化: ゲートウェイの限界
  10. 第 10 语义事件而不是原始提供者数据
  11. 第 11 付款错误分类
  12. 第 12 支付工作人员的重试算法
  13. 第 13 数据库支持租赁作品
  14. 第 14 付款对账工人施工
  15. 第 15 已付款但无订单:改进
  16. 第 16 为什么最终一致性优于分布式事务
  17. 第 17 Webhook 下的乐观并发
  18. 第 18 付款可观察性和相关性
  19. 第 19 付款回收管道和操作手册
  20. 第 20 一次性有效处理付款
  21. 第 21 设计生产支付引擎
  22. 第 22 金融科技公司真正在寻找什么?
架构 · 手册

数据库支持租赁作品

带条件更新的租赁,可以挽救陷入困境的工作的观察者,以及为什么仅仅取消消息不足以支付生产费用。

系列目录

分布式支付引擎

第 13 / 22

  1. 第 1 なぜ決済システムは分散型システムなのでしょうか?
  2. 第 2 チェックアウト ステータス マシンの設計: チェックアウトと支払いが同じものではないのはなぜですか?
  3. 第 3 収集(キャプチャ)は簡単だが、ファイナライズはな​​ぜ難しいのか?
  4. 第 4 不変のチェックアウト スナップショットの設計: カートを凍結する決定
  5. 第 5 API (アプリケーション プログラミング インターフェイス) リクエストを超えた冪等性 (反復可能で安全なトランザクション)
  6. 第 6 決済システムにおける Webhook の信頼性
  7. 第 7 決済システムにおける送信箱/受信箱のパターン
  8. 第 8 支払い証明書と支払いステータス: 混同すべきではない理由
  9. 第 9 SDK (ソフトウェア開発キット) を漏らさないプロバイダーの抽象化: ゲートウェイの限界
  10. 第 10 语义事件而不是原始提供者数据
  11. 第 11 付款错误分类
  12. 第 12 支付工作人员的重试算法
  13. 第 13 数据库支持租赁作品
  14. 第 14 付款对账工人施工
  15. 第 15 已付款但无订单:改进
  16. 第 16 为什么最终一致性优于分布式事务
  17. 第 17 Webhook 下的乐观并发
  18. 第 18 付款可观察性和相关性
  19. 第 19 付款回收管道和操作手册
  20. 第 20 一次性有效处理付款
  21. 第 21 设计生产支付引擎
  22. 第 22 金融科技公司真正在寻找什么?
架构 · 手册

支付工作人员的重试算法

指数退避、抖动、上限、延迟与重试差异以及断路器——将上一节中的分类法转换为工作代码。

系列目录

分布式支付引擎

第 12 / 22

  1. 第 1 なぜ決済システムは分散型システムなのでしょうか?
  2. 第 2 チェックアウト ステータス マシンの設計: チェックアウトと支払いが同じものではないのはなぜですか?
  3. 第 3 収集(キャプチャ)は簡単だが、ファイナライズはな​​ぜ難しいのか?
  4. 第 4 不変のチェックアウト スナップショットの設計: カートを凍結する決定
  5. 第 5 API (アプリケーション プログラミング インターフェイス) リクエストを超えた冪等性 (反復可能で安全なトランザクション)
  6. 第 6 決済システムにおける Webhook の信頼性
  7. 第 7 決済システムにおける送信箱/受信箱のパターン
  8. 第 8 支払い証明書と支払いステータス: 混同すべきではない理由
  9. 第 9 SDK (ソフトウェア開発キット) を漏らさないプロバイダーの抽象化: ゲートウェイの限界
  10. 第 10 语义事件而不是原始提供者数据
  11. 第 11 付款错误分类
  12. 第 12 支付工作人员的重试算法
  13. 第 13 数据库支持租赁作品
  14. 第 14 付款对账工人施工
  15. 第 15 已付款但无订单:改进
  16. 第 16 为什么最终一致性优于分布式事务
  17. 第 17 Webhook 下的乐观并发
  18. 第 18 付款可观察性和相关性
  19. 第 19 付款回收管道和操作手册
  20. 第 20 一次性有效处理付款
  21. 第 21 设计生产支付引擎
  22. 第 22 金融科技公司真正在寻找什么?
架构 · 手册

付款错误分类

超时、429、5xx、业务下降和基础设施错误不是一回事。每个类别都需要不同的重试策略。

系列目录

分布式支付引擎

第 11 / 22

  1. 第 1 なぜ決済システムは分散型システムなのでしょうか?
  2. 第 2 チェックアウト ステータス マシンの設計: チェックアウトと支払いが同じものではないのはなぜですか?
  3. 第 3 収集(キャプチャ)は簡単だが、ファイナライズはな​​ぜ難しいのか?
  4. 第 4 不変のチェックアウト スナップショットの設計: カートを凍結する決定
  5. 第 5 API (アプリケーション プログラミング インターフェイス) リクエストを超えた冪等性 (反復可能で安全なトランザクション)
  6. 第 6 決済システムにおける Webhook の信頼性
  7. 第 7 決済システムにおける送信箱/受信箱のパターン
  8. 第 8 支払い証明書と支払いステータス: 混同すべきではない理由
  9. 第 9 SDK (ソフトウェア開発キット) を漏らさないプロバイダーの抽象化: ゲートウェイの限界
  10. 第 10 语义事件而不是原始提供者数据
  11. 第 11 付款错误分类
  12. 第 12 支付工作人员的重试算法
  13. 第 13 数据库支持租赁作品
  14. 第 14 付款对账工人施工
  15. 第 15 已付款但无订单:改进
  16. 第 16 为什么最终一致性优于分布式事务
  17. 第 17 Webhook 下的乐观并发
  18. 第 18 付款可观察性和相关性
  19. 第 19 付款回收管道和操作手册
  20. 第 20 一次性有效处理付款
  21. 第 21 设计生产支付引擎
  22. 第 22 金融科技公司真正在寻找什么?
架构 · 手册

语义事件而不是原始提供者数据

提供商网关接收到的 Webhook 是否应该通过 PSP 的事件名称或语义事件(例如 PaymentCaptured/PaymentFailed)到达下游?

系列目录

分布式支付引擎

第 10 / 22

  1. 第 1 なぜ決済システムは分散型システムなのでしょうか?
  2. 第 2 チェックアウト ステータス マシンの設計: チェックアウトと支払いが同じものではないのはなぜですか?
  3. 第 3 収集(キャプチャ)は簡単だが、ファイナライズはな​​ぜ難しいのか?
  4. 第 4 不変のチェックアウト スナップショットの設計: カートを凍結する決定
  5. 第 5 API (アプリケーション プログラミング インターフェイス) リクエストを超えた冪等性 (反復可能で安全なトランザクション)
  6. 第 6 決済システムにおける Webhook の信頼性
  7. 第 7 決済システムにおける送信箱/受信箱のパターン
  8. 第 8 支払い証明書と支払いステータス: 混同すべきではない理由
  9. 第 9 SDK (ソフトウェア開発キット) を漏らさないプロバイダーの抽象化: ゲートウェイの限界
  10. 第 10 语义事件而不是原始提供者数据
  11. 第 11 付款错误分类
  12. 第 12 支付工作人员的重试算法
  13. 第 13 数据库支持租赁作品
  14. 第 14 付款对账工人施工
  15. 第 15 已付款但无订单:改进
  16. 第 16 为什么最终一致性优于分布式事务
  17. 第 17 Webhook 下的乐观并发
  18. 第 18 付款可观察性和相关性
  19. 第 19 付款回收管道和操作手册
  20. 第 20 一次性有效处理付款
  21. 第 21 设计生产支付引擎
  22. 第 22 金融科技公司真正在寻找什么?
架构 · 手册

SDK (ソフトウェア開発キット) を漏らさないプロバイダーの抽象化: ゲートウェイの限界

プロバイダー ゲートウェイは PSP SDK をどのように所有しているのですか。なぜチェックアウト オーケストレーターはセマンティック インターフェイスのみを参照する必要があるのでしょうか?カードとウォレットの流れは異なります...

系列目录

分散型決済エンジン

第 9 / 22

  1. 第 1 なぜ決済システムは分散型システムなのでしょうか?
  2. 第 2 チェックアウト ステータス マシンの設計: チェックアウトと支払いが同じものではないのはなぜですか?
  3. 第 3 収集(キャプチャ)は簡単だが、ファイナライズはな​​ぜ難しいのか?
  4. 第 4 不変のチェックアウト スナップショットの設計: カートを凍結する決定
  5. 第 5 API (アプリケーション プログラミング インターフェイス) リクエストを超えた冪等性 (反復可能で安全なトランザクション)
  6. 第 6 決済システムにおける Webhook の信頼性
  7. 第 7 決済システムにおける送信箱/受信箱のパターン
  8. 第 8 支払い証明書と支払いステータス: 混同すべきではない理由
  9. 第 9 SDK (ソフトウェア開発キット) を漏らさないプロバイダーの抽象化: ゲートウェイの限界
  10. 第 10 语义事件而不是原始提供者数据
  11. 第 11 付款错误分类
  12. 第 12 支付工作人员的重试算法
  13. 第 13 数据库支持租赁作品
  14. 第 14 付款对账工人施工
  15. 第 15 已付款但无订单:改进
  16. 第 16 为什么最终一致性优于分布式事务
  17. 第 17 Webhook 下的乐观并发
  18. 第 18 付款可观察性和相关性
  19. 第 19 付款回收管道和操作手册
  20. 第 20 一次性有效处理付款
  21. 第 21 设计生产支付引擎
  22. 第 22 金融科技公司真正在寻找什么?
架构 · 手册

支払い証明書と支払いステータス: 混同すべきではない理由

PSPがそう言っているのが証拠です。状態はあなたが決めるものです。これら 2 つを同じレジストリに保存しておくと、回復中にどちらを信頼すればよいかがわかります。

系列目录

分散型決済エンジン

第 8 / 22

  1. 第 1 なぜ決済システムは分散型システムなのでしょうか?
  2. 第 2 チェックアウト ステータス マシンの設計: チェックアウトと支払いが同じものではないのはなぜですか?
  3. 第 3 収集(キャプチャ)は簡単だが、ファイナライズはな​​ぜ難しいのか?
  4. 第 4 不変のチェックアウト スナップショットの設計: カートを凍結する決定
  5. 第 5 API (アプリケーション プログラミング インターフェイス) リクエストを超えた冪等性 (反復可能で安全なトランザクション)
  6. 第 6 決済システムにおける Webhook の信頼性
  7. 第 7 決済システムにおける送信箱/受信箱のパターン
  8. 第 8 支払い証明書と支払いステータス: 混同すべきではない理由
  9. 第 9 SDK (ソフトウェア開発キット) を漏らさないプロバイダーの抽象化: ゲートウェイの限界
  10. 第 10 语义事件而不是原始提供者数据
  11. 第 11 付款错误分类
  12. 第 12 支付工作人员的重试算法
  13. 第 13 数据库支持租赁作品
  14. 第 14 付款对账工人施工
  15. 第 15 已付款但无订单:改进
  16. 第 16 为什么最终一致性优于分布式事务
  17. 第 17 Webhook 下的乐观并发
  18. 第 18 付款可观察性和相关性
  19. 第 19 付款回收管道和操作手册
  20. 第 20 一次性有效处理付款
  21. 第 21 设计生产支付引擎
  22. 第 22 金融科技公司真正在寻找什么?
架构 · 手册

決済システムにおける送信箱/受信箱のパターン

データベースへの書き込みとイベントのパブリッシュが同じトランザクション内にない場合、そのうちの 1 つが失われるか、繰り返されます。送信トレイのブロードキャスト、コンシューマでの受信トレイの重複排除。

系列目录

分散型決済エンジン

第 7 / 22

  1. 第 1 なぜ決済システムは分散型システムなのでしょうか?
  2. 第 2 チェックアウト ステータス マシンの設計: チェックアウトと支払いが同じものではないのはなぜですか?
  3. 第 3 収集(キャプチャ)は簡単だが、ファイナライズはな​​ぜ難しいのか?
  4. 第 4 不変のチェックアウト スナップショットの設計: カートを凍結する決定
  5. 第 5 API (アプリケーション プログラミング インターフェイス) リクエストを超えた冪等性 (反復可能で安全なトランザクション)
  6. 第 6 決済システムにおける Webhook の信頼性
  7. 第 7 決済システムにおける送信箱/受信箱のパターン
  8. 第 8 支払い証明書と支払いステータス: 混同すべきではない理由
  9. 第 9 SDK (ソフトウェア開発キット) を漏らさないプロバイダーの抽象化: ゲートウェイの限界
  10. 第 10 语义事件而不是原始提供者数据
  11. 第 11 付款错误分类
  12. 第 12 支付工作人员的重试算法
  13. 第 13 数据库支持租赁作品
  14. 第 14 付款对账工人施工
  15. 第 15 已付款但无订单:改进
  16. 第 16 为什么最终一致性优于分布式事务
  17. 第 17 Webhook 下的乐观并发
  18. 第 18 付款可观察性和相关性
  19. 第 19 付款回收管道和操作手册
  20. 第 20 一次性有效处理付款
  21. 第 21 设计生产支付引擎
  22. 第 22 金融科技公司真正在寻找什么?
架构 · 手册

決済システムにおける Webhook の信頼性

Webhook が繰り返されたり、消えたり、順序が乱れたり、遅れて到着したりします。署名を検証し、迅速な ACK を返し、同期的な重労働を実行しないでください。

系列目录

分散型決済エンジン

第 6 / 22

  1. 第 1 なぜ決済システムは分散型システムなのでしょうか?
  2. 第 2 チェックアウト ステータス マシンの設計: チェックアウトと支払いが同じものではないのはなぜですか?
  3. 第 3 収集(キャプチャ)は簡単だが、ファイナライズはな​​ぜ難しいのか?
  4. 第 4 不変のチェックアウト スナップショットの設計: カートを凍結する決定
  5. 第 5 API (アプリケーション プログラミング インターフェイス) リクエストを超えた冪等性 (反復可能で安全なトランザクション)
  6. 第 6 決済システムにおける Webhook の信頼性
  7. 第 7 決済システムにおける送信箱/受信箱のパターン
  8. 第 8 支払い証明書と支払いステータス: 混同すべきではない理由
  9. 第 9 SDK (ソフトウェア開発キット) を漏らさないプロバイダーの抽象化: ゲートウェイの限界
  10. 第 10 语义事件而不是原始提供者数据
  11. 第 11 付款错误分类
  12. 第 12 支付工作人员的重试算法
  13. 第 13 数据库支持租赁作品
  14. 第 14 付款对账工人施工
  15. 第 15 已付款但无订单:改进
  16. 第 16 为什么最终一致性优于分布式事务
  17. 第 17 Webhook 下的乐观并发
  18. 第 18 付款可观察性和相关性
  19. 第 19 付款回收管道和操作手册
  20. 第 20 一次性有效处理付款
  21. 第 21 设计生产支付引擎
  22. 第 22 金融科技公司真正在寻找什么?
架构 · 手册

API (アプリケーション プログラミング インターフェイス) リクエストを超えた冪等性 (反復可能で安全なトランザクション)

冪等性は単一のヘッダーではありません。これは、API キーからステップ ポインターまで、5 つの異なるレイヤーで個別に設定する必要がある防御スタックです。

系列目录

分散型決済エンジン

第 5 / 22

  1. 第 1 なぜ決済システムは分散型システムなのでしょうか?
  2. 第 2 チェックアウト ステータス マシンの設計: チェックアウトと支払いが同じものではないのはなぜですか?
  3. 第 3 収集(キャプチャ)は簡単だが、ファイナライズはな​​ぜ難しいのか?
  4. 第 4 不変のチェックアウト スナップショットの設計: カートを凍結する決定
  5. 第 5 API (アプリケーション プログラミング インターフェイス) リクエストを超えた冪等性 (反復可能で安全なトランザクション)
  6. 第 6 決済システムにおける Webhook の信頼性
  7. 第 7 決済システムにおける送信箱/受信箱のパターン
  8. 第 8 支払い証明書と支払いステータス: 混同すべきではない理由
  9. 第 9 SDK (ソフトウェア開発キット) を漏らさないプロバイダーの抽象化: ゲートウェイの限界
  10. 第 10 语义事件而不是原始提供者数据
  11. 第 11 付款错误分类
  12. 第 12 支付工作人员的重试算法
  13. 第 13 数据库支持租赁作品
  14. 第 14 付款对账工人施工
  15. 第 15 已付款但无订单:改进
  16. 第 16 为什么最终一致性优于分布式事务
  17. 第 17 Webhook 下的乐观并发
  18. 第 18 付款可观察性和相关性
  19. 第 19 付款回收管道和操作手册
  20. 第 20 一次性有效处理付款
  21. 第 21 设计生产支付引擎
  22. 第 22 金融科技公司真正在寻找什么?
架构 · 手册

不変のチェックアウト スナップショットの設計: カートを凍結する決定

支払い開始時にカートをライブで読み取ると、金額と通貨は未定のままになります。インテントの瞬間にフリーズするスナップショットがなければ、ファイナライゼーションは確実に機能しません。

系列目录

分散型決済エンジン

第 4 / 22

  1. 第 1 なぜ決済システムは分散型システムなのでしょうか?
  2. 第 2 チェックアウト ステータス マシンの設計: チェックアウトと支払いが同じものではないのはなぜですか?
  3. 第 3 収集(キャプチャ)は簡単だが、ファイナライズはな​​ぜ難しいのか?
  4. 第 4 不変のチェックアウト スナップショットの設計: カートを凍結する決定
  5. 第 5 API (アプリケーション プログラミング インターフェイス) リクエストを超えた冪等性 (反復可能で安全なトランザクション)
  6. 第 6 決済システムにおける Webhook の信頼性
  7. 第 7 決済システムにおける送信箱/受信箱のパターン
  8. 第 8 支払い証明書と支払いステータス: 混同すべきではない理由
  9. 第 9 SDK (ソフトウェア開発キット) を漏らさないプロバイダーの抽象化: ゲートウェイの限界
  10. 第 10 语义事件而不是原始提供者数据
  11. 第 11 付款错误分类
  12. 第 12 支付工作人员的重试算法
  13. 第 13 数据库支持租赁作品
  14. 第 14 付款对账工人施工
  15. 第 15 已付款但无订单:改进
  16. 第 16 为什么最终一致性优于分布式事务
  17. 第 17 Webhook 下的乐观并发
  18. 第 18 付款可观察性和相关性
  19. 第 19 付款回收管道和操作手册
  20. 第 20 一次性有效处理付款
  21. 第 21 设计生产支付引擎
  22. 第 22 金融科技公司真正在寻找什么?
架构 · 手册

収集(キャプチャ)は簡単だが、ファイナライズはな​​ぜ難しいのか?

PSPが資金を得るのはほんの一歩だ。注文を完了してください。これは、在庫、財務、報告、清掃の各ステップをすべて成功させる必要がある物語です。

系列目录

分散型決済エンジン

第 3 / 22

  1. 第 1 なぜ決済システムは分散型システムなのでしょうか?
  2. 第 2 チェックアウト ステータス マシンの設計: チェックアウトと支払いが同じものではないのはなぜですか?
  3. 第 3 収集(キャプチャ)は簡単だが、ファイナライズはな​​ぜ難しいのか?
  4. 第 4 不変のチェックアウト スナップショットの設計: カートを凍結する決定
  5. 第 5 API (アプリケーション プログラミング インターフェイス) リクエストを超えた冪等性 (反復可能で安全なトランザクション)
  6. 第 6 決済システムにおける Webhook の信頼性
  7. 第 7 決済システムにおける送信箱/受信箱のパターン
  8. 第 8 支払い証明書と支払いステータス: 混同すべきではない理由
  9. 第 9 SDK (ソフトウェア開発キット) を漏らさないプロバイダーの抽象化: ゲートウェイの限界
  10. 第 10 语义事件而不是原始提供者数据
  11. 第 11 付款错误分类
  12. 第 12 支付工作人员的重试算法
  13. 第 13 数据库支持租赁作品
  14. 第 14 付款对账工人施工
  15. 第 15 已付款但无订单:改进
  16. 第 16 为什么最终一致性优于分布式事务
  17. 第 17 Webhook 下的乐观并发
  18. 第 18 付款可观察性和相关性
  19. 第 19 付款回收管道和操作手册
  20. 第 20 一次性有效处理付款
  21. 第 21 设计生产支付引擎
  22. 第 22 金融科技公司真正在寻找什么?
架构 · 手册

チェックアウト ステータス マシンの設計: チェックアウトと支払いが同じものではないのはなぜですか?

支払いが成功しても、注文が完了したことを意味するものではありません。チェックアウトと支払いのライフサイクルを分離しないと、運用環境で 2 つの現実が重複してしまいます。

系列目录

分散型決済エンジン

第 2 / 22

  1. 第 1 なぜ決済システムは分散型システムなのでしょうか?
  2. 第 2 チェックアウト ステータス マシンの設計: チェックアウトと支払いが同じものではないのはなぜですか?
  3. 第 3 収集(キャプチャ)は簡単だが、ファイナライズはな​​ぜ難しいのか?
  4. 第 4 不変のチェックアウト スナップショットの設計: カートを凍結する決定
  5. 第 5 API (アプリケーション プログラミング インターフェイス) リクエストを超えた冪等性 (反復可能で安全なトランザクション)
  6. 第 6 決済システムにおける Webhook の信頼性
  7. 第 7 決済システムにおける送信箱/受信箱のパターン
  8. 第 8 支払い証明書と支払いステータス: 混同すべきではない理由
  9. 第 9 SDK (ソフトウェア開発キット) を漏らさないプロバイダーの抽象化: ゲートウェイの限界
  10. 第 10 语义事件而不是原始提供者数据
  11. 第 11 付款错误分类
  12. 第 12 支付工作人员的重试算法
  13. 第 13 数据库支持租赁作品
  14. 第 14 付款对账工人施工
  15. 第 15 已付款但无订单:改进
  16. 第 16 为什么最终一致性优于分布式事务
  17. 第 17 Webhook 下的乐观并发
  18. 第 18 付款可观察性和相关性
  19. 第 19 付款回收管道和操作手册
  20. 第 20 一次性有效处理付款
  21. 第 21 设计生产支付引擎
  22. 第 22 金融科技公司真正在寻找什么?
架构 · 手册

衡量什么:以用户为中心的绩效的关键指标

以用户为中心的绩效衡量;它结合了行为、感知、保留和技术指标。通过 Lab 了解现场、核心 Web Vitals(LCP、INP、CLS)、RUM 和预算真正重要的因素。

系列目录

人工智能时代的网络性能工程

第 2 / 13

  1. 第 1 为什么性能就是用户体验
  2. 第 2 衡量什么:以用户为中心的绩效的关键指标
架构 · 手册

なぜ決済システムは分散型システムなのでしょうか?

支払いは単一のサービスの仕事ではありません。バスケット、株式、プロバイダーゲートウェイ、金融は同じ事実について合意する必要があります。同期チェーンが壊れるのはなぜですか?

系列目录

分散型決済エンジン

第 1 / 22

  1. 第 1 なぜ決済システムは分散型システムなのでしょうか?
  2. 第 2 チェックアウト ステータス マシンの設計: チェックアウトと支払いが同じものではないのはなぜですか?
  3. 第 3 収集(キャプチャ)は簡単だが、ファイナライズはな​​ぜ難しいのか?
  4. 第 4 不変のチェックアウト スナップショットの設計: カートを凍結する決定
  5. 第 5 API (アプリケーション プログラミング インターフェイス) リクエストを超えた冪等性 (反復可能で安全なトランザクション)
  6. 第 6 決済システムにおける Webhook の信頼性
  7. 第 7 決済システムにおける送信箱/受信箱のパターン
  8. 第 8 支払い証明書と支払いステータス: 混同すべきではない理由
  9. 第 9 SDK (ソフトウェア開発キット) を漏らさないプロバイダーの抽象化: ゲートウェイの限界
  10. 第 10 语义事件而不是原始提供者数据
  11. 第 11 付款错误分类
  12. 第 12 支付工作人员的重试算法
  13. 第 13 数据库支持租赁作品
  14. 第 14 付款对账工人施工
  15. 第 15 已付款但无订单:改进
  16. 第 16 为什么最终一致性优于分布式事务
  17. 第 17 Webhook 下的乐观并发
  18. 第 18 付款可观察性和相关性
  19. 第 19 付款回收管道和操作手册
  20. 第 20 一次性有效处理付款
  21. 第 21 设计生产支付引擎
  22. 第 22 金融科技公司真正在寻找什么?
架构 · 手册

内側からの垂直スライスはどのように機能しますか?

垂直スライスは、リクエストから検証、ハンドラーから集計、アウトボックス イベントからモデルの読み取り、そしてクラウド コストまで、内部的にどのように流れるのでしょうか? CQRS…

系列目录

垂直スライス — 機能指向エンジニアリング

第 2 / 4

  1. 第 1 レイヤーからフィーチャへ: 垂直スライスはなぜ生まれたのか?
  2. 第 2 内側からの垂直スライスはどのように機能しますか?
架构 · 手册

レイヤーからフィーチャへ: 垂直スライスはなぜ生まれたのか?

階層構造のアーキテクチャが成長するにつれて変化が遅くなるのはなぜですか?垂直スライスのフォルダー レイアウトではありません。機能の所有権、動作の局所性、スイッチング コストの決定…

系列目录

垂直スライス — 機能指向エンジニアリング

第 1 / 4

  1. 第 1 レイヤーからフィーチャへ: 垂直スライスはなぜ生まれたのか?
  2. 第 2 内側からの垂直スライスはどのように機能しますか?
架构 · 手册

本番環境における DDD: 分散システムと最新化戦略

運用環境で DDD を実装するにはどうすればよいですか? Event Storming、Saga、Transactional Outbox、Anti-Corrupting Layer、Strangler を使用したレガシー変換ガイド 図 1

系列目录

DDD - ソフトウェアのビジネス言語

第 4 / 4

  1. 第 1 DDD - データベースのためではなく、ビジネスのためのソフトウェアを設計する
  2. 第 2 DDD コード: エンティティ、値オブジェクト、および集計
  3. 第 3 DDD は大規模システムでどのように動作しますか?
  4. 第 4 本番環境における DDD: 分散システムと最新化戦略
架构 · 手册

DDD - データベースのためではなく、ビジネスのためのソフトウェアを設計する

ドメイン駆動設計とは何ですか?データベース駆動設計の限界、共通言語の力、DDD が実際の投資となる場合についてのガイドです。

系列目录

DDD - ソフトウェアのビジネス言語

第 1 / 4

  1. 第 1 DDD - データベースのためではなく、ビジネスのためのソフトウェアを設計する
  2. 第 2 DDD コード: エンティティ、値オブジェクト、および集計
  3. 第 3 DDD は大規模システムでどのように動作しますか?
  4. 第 4 本番環境における DDD: 分散システムと最新化戦略
架构 · 手册

DDD コード: エンティティ、値オブジェクト、および集計

DDD 戦術パターンはどのように機能しますか?値オブジェクト、エンティティ、集計、ドメイン サービス、アプリケーション サービス、リポジトリの境界と実際の注文例…

系列目录

DDD - ソフトウェアのビジネス言語

第 2 / 4

  1. 第 1 DDD - データベースのためではなく、ビジネスのためのソフトウェアを設計する
  2. 第 2 DDD コード: エンティティ、値オブジェクト、および集計
  3. 第 3 DDD は大規模システムでどのように動作しますか?
  4. 第 4 本番環境における DDD: 分散システムと最新化戦略
架构 · 手册

DDD は大規模システムでどのように動作しますか?

DDD は大規模システムでどのように拡張されますか?有界コンテキスト、コンテキスト マッピング、コンウェイの法則、モジュラー モノリス、マイクロサービス境界、トランザクション アウトボックスの決定…

系列目录

DDD - ソフトウェアのビジネス言語

第 3 / 4

  1. 第 1 DDD - データベースのためではなく、ビジネスのためのソフトウェアを設計する
  2. 第 2 DDD コード: エンティティ、値オブジェクト、および集計
  3. 第 3 DDD は大規模システムでどのように動作しますか?
  4. 第 4 本番環境における DDD: 分散システムと最新化戦略
架构 · 手册

分散システムにおける CQRS (コマンド クエリ責任分離): イベント、ブローカー、プロジェクション

CQRS は分散システムでどのように機能しますか?ドメイン イベント、メッセージ ブローカー、プロジェクション、送信ボックス、冪等性、および最終的な整合性の決定をエンドツーエンドで検査します。

系列目录

CQRS (コマンド クエリ責任分離) — 意思決定の構造

第 3 / 4

  1. 第 1 CRUD (作成、読み取り、更新、削除) から CQRS (コマンド クエリ責任分離) まで: 問題はコードではなくモデルです
  2. 第 2 CQRS (コマンドクエリ責任分離) パイプラインはどのように機能しますか?コマンドとクエリのフローの構造
  3. 第 3 分散システムにおける CQRS (コマンド クエリ責任分離): イベント、ブローカー、プロジェクション
  4. 第 4 本番環境における CQRS (コマンド クエリ責任分離): 一貫性、エラー、および回復戦略
架构 · 手册

BareToken:NFT(不可替代代币)-门控发行和滥用

Hashmasks 式 NFT 门控声明:~10e18/天,INITIAL_ALLOTMENT,10 年排放结束。开放薄荷表面和滥用场景。

系列目录

裸加密货币 Solidity 市场协议

第 5 / 5

  1. 第 1 Remix + OpenZeppelin:无需安全帽即可交付
  2. 第 2 BareNFT:角色、可暂停和令牌 URI
  3. 第 3 BareNFTReserve:托管、RandomBuy 和弱 RNG
  4. 第 4 BareNFTAuction:索赔、退款和紧急权力
  5. 第 5 BareToken:NFT(不可替代代币)-门控发行和滥用
架构 · 手册

BareNFTAuction:索赔、退款和紧急权力

英国拍卖:投标、索赔、取消、保留下返回和所有者紧急转移Nft/transferFunds权衡。

系列目录

裸加密货币 Solidity 市场协议

第 4 / 5

  1. 第 1 Remix + OpenZeppelin:无需安全帽即可交付
  2. 第 2 BareNFT:角色、可暂停和令牌 URI
  3. 第 3 BareNFTReserve:托管、RandomBuy 和弱 RNG
  4. 第 4 BareNFTAuction:索赔、退款和紧急权力
  5. 第 5 BareToken:NFT(不可替代代币)-门控发行和滥用
架构 · 手册

BareNFTReserve:托管、RandomBuy 和弱 RNG

仅限所有者 createNewListing、buy 和 randomBuy — keccak256(revealNonce, block.difficulty, msg.sender) % 3. 所有者运营的市场 ADR 和紧急转移。

系列目录

裸加密货币 Solidity 市场协议

第 3 / 5

  1. 第 1 Remix + OpenZeppelin:无需安全帽即可交付
  2. 第 2 BareNFT:角色、可暂停和令牌 URI
  3. 第 3 BareNFTReserve:托管、RandomBuy 和弱 RNG
  4. 第 4 BareNFTAuction:索赔、退款和紧急权力
  5. 第 5 BareToken:NFT(不可替代代币)-门控发行和滥用
架构 · 手册

BareNFT:角色、可暂停和令牌 URI

BareNFT 提供具有 ERC721 Enumerable/Burnable/Pausable 和 AccessControl 的角色门控铸币(to,id,uri)。每个令牌 URI 和暂停权衡。

系列目录

裸加密货币 Solidity 市场协议

第 2 / 5

  1. 第 1 Remix + OpenZeppelin:无需安全帽即可交付
  2. 第 2 BareNFT:角色、可暂停和令牌 URI
  3. 第 3 BareNFTReserve:托管、RandomBuy 和弱 RNG
  4. 第 4 BareNFTAuction:索赔、退款和紧急权力
  5. 第 5 BareToken:NFT(不可替代代币)-门控发行和滥用
架构 · 手册

Remix + OpenZeppelin:无需安全帽即可交付

在没有 Hardhat/Foundry 的情况下,如何使用 Remix IDE 和 OpenZeppelin v4.1 GitHub 导入来编译和部署 Bare Crypto 协议? ADR 和权衡。

系列目录

裸加密货币 Solidity 市场协议

第 1 / 5

  1. 第 1 Remix + OpenZeppelin:无需安全帽即可交付
  2. 第 2 BareNFT:角色、可暂停和令牌 URI
  3. 第 3 BareNFTReserve:托管、RandomBuy 和弱 RNG
  4. 第 4 BareNFTAuction:索赔、退款和紧急权力
  5. 第 5 BareToken:NFT(不可替代代币)-门控发行和滥用
架构 · 手册

主网 Web3Modal 和钱包加固

从仅 MetaMask 迁移到 Web3Modal + WalletConnect + Coinbase WalletLink; chainId、gas 和地址强化。

系列目录

NFT Collection 铸币和主网强化

第 4 / 4

  1. 第 1 集合登陆和 WIP 白名单漏斗
  2. 第 2 IPFS(星际文件系统)元数据、铸币和多次铸币
  3. 第 3 占位符 URI 和所有者显示行
  4. 第 4 主网 Web3Modal 和钱包加固
架构 · 手册

占位符 URI 和所有者显示行

在 Mint 中,占位符元数据、uridata 映射、reveal(tokenId, uriHash) 和只有所有者才能打开的reveal surface。

系列目录

NFT Collection 铸币和主网强化

第 3 / 4

  1. 第 1 集合登陆和 WIP 白名单漏斗
  2. 第 2 IPFS(星际文件系统)元数据、铸币和多次铸币
  3. 第 3 占位符 URI 和所有者显示行
  4. 第 4 主网 Web3Modal 和钱包加固
架构 · 手册

IPFS(星际文件系统)元数据、铸币和多次铸币

Infura IPFS + Pinata pin、元数据 JSON、mint(tokenId, uri) 和 multipleMint:0.1 ETH × n,750 供应。

系列目录

NFT Collection 铸币和主网强化

第 2 / 4

  1. 第 1 集合登陆和 WIP 白名单漏斗
  2. 第 2 IPFS(星际文件系统)元数据、铸币和多次铸币
  3. 第 3 占位符 URI 和所有者显示行
  4. 第 4 主网 Web3Modal 和钱包加固
架构 · 手册

集合登陆和 WIP 白名单漏斗

CBD 全明星薄荷登陆:#GETINTHEWIP、750 个插槽、折扣漏斗和仅限 MetaMask 的薄荷表面如何结合在一起?

系列目录

NFT Collection 铸币和主网强化

第 1 / 4

  1. 第 1 集合登陆和 WIP 白名单漏斗
  2. 第 2 IPFS(星际文件系统)元数据、铸币和多次铸币
  3. 第 3 占位符 URI 和所有者显示行
  4. 第 4 主网 Web3Modal 和钱包加固