# Alchemy NFT 查询费与 429 怎么算：分开消费 CU、吞吐和重试预算

整理：链小知（AI 辅助）
资料核对日期：2026-10-12
引用地址：https://lianxiaozhi.com/tools/guides/alchemy-nft-cu-throughput-retry-budget
难度：进阶
核验方式：官方文档整理，未执行真实账户操作

用官方NFT方法表对已有调用计划做算术核对，避免把10吞吐CU当消费单价或把排队刷新当完成。

## 使用工具
- [Alchemy](https://lianxiaozhi.com/tools/alchemy) · [官方入口](https://www.alchemy.com/docs)

## 前置条件
- 准备已有脱敏请求日志或离线调用计划：方法名、网络、时间、HTTP/body错误、请求数量、当前账户吞吐与用量配额；没有配额时保留变量。
- 按2026-10-12公开NFT方法成本与吞吐说明，不发API请求、不跑429测试、不访问账户账单。CU是服务计量，不是NFT市场价格或链上Gas。

## 1. 先核对方法仍在当前产品范围

将计划里的方法名与当前NFT目录及8月18公告比较，getNFTMetadata、refreshNftMetadata在当前目录；getNFTSales、computeRarity、invalidateContract等列入9月30退役计划。

CU表仍保留部分被公告列出的条目，不能以“有价格”证明端点当前可调用。旧方法计划先标迁移待核，不自动换成另一API并假定同字段、同费用；本页只预算明确核对的两个方法。

核对结果：预算限定当前文档列出的具体方法，旧计划未混入可用调用量。
依据：[Alchemy：当前 NFT API 方法目录](https://www.alchemy.com/docs/reference/nft-api-endpoints)
依据：[Alchemy：2026-08-18 NFT 端点退役公告](https://www.alchemy.com/docs/changelog/2026/8/18)
依据：[Alchemy：NFT 方法与错误 CU 成本](https://www.alchemy.com/docs/reference/compute-unit-costs)

## 2. 给每个方法建立两列 CU

从NFT表摘录getNFTMetadata：消费80CU、吞吐10CU；refreshNftMetadata：消费40CU、吞吐10CU。第一列累计用量，第二列用于速率；不能因吞吐10就把一次Metadata的消耗写成10CU。

示例计划100次Metadata和20次Refresh，消费为100×80+20×40=8800CU，吞吐权重总和为120×10=1200；后者没有时间分布就不能推是否限流。这里是离线算术，不是账单回执。

核对结果：两列算式、数量和计量目的明确，没有CU到货币或Gas的未经证实换算。
依据：[Alchemy：NFT 方法与错误 CU 成本](https://www.alchemy.com/docs/reference/compute-unit-costs)
依据：[Alchemy：Compute Units 与 Throughput CU](https://www.alchemy.com/docs/reference/compute-units)

## 3. 用账户总流量和十秒窗口检查速率

当前Throughput页写账户级，所有apps合并，用10秒滚动token bucket及严格补充速率；不要用另一个app分流当绕开账户限额。若已知限额L CU/s，只有这类10吞吐CU方法时，L÷10是理论持续请求/s。

例如文档300CU/s示例是10秒3000权重，除10得到30请求/s的理论上限，不保证每个突发或混合方法都成功。Compute Units页仍写app专用/弹性可超，和当前Throughput表述不同；本文按后者作预算并保留差异。

核对结果：配额有单位和来源，混合方法/其他apps的权重已计入或明确未知。
依据：[Alchemy：当前账户吞吐与429](https://www.alchemy.com/docs/reference/throughput)
依据：[Alchemy：Compute Units 与 Throughput CU](https://www.alchemy.com/docs/reference/compute-units)
依据：[Alchemy：NFT 方法与错误 CU 成本](https://www.alchemy.com/docs/reference/compute-unit-costs)

## 4. 错误计费与元数据源站错误分开

成本表将429/403记0消费CU，其他4xx/5xx按具体端点CU；离线预算保留失败请求，不能笼统说“失败都免费”。没有实际账户明细时，只称表规则，实际用量待核。

HTTP429是吞吐页的HTTP分支；不要把NFT raw.error里源站429自动套进这个零CU规则，也不要将403的0CU解释为取得数据。HTTP状态、原body和服务/源站层级一起保存。

核对结果：错误是否消费CU有明确规则与未知边界，零计费未被当成功数据。
依据：[Alchemy：NFT 方法与错误 CU 成本](https://www.alchemy.com/docs/reference/compute-unit-costs)
依据：[Alchemy：当前账户吞吐与429](https://www.alchemy.com/docs/reference/throughput)
依据：[Alchemy：V3 单枚 NFT Metadata](https://www.alchemy.com/docs/reference/nft-api-endpoints/nft-api-endpoints/nft-metadata-endpoints/get-nft-metadata-v-3)

## 5. 制定有上限的重试计划

已有HTTP429若带Retry-After，整数单位秒；没有时可设计指数退避并设置最大等待和最大次数，不能无上限并发重试。该计划先离线审阅，避免把文档里的httpstat.us测试地址当本任务必做验收。

所有真正重发的调用都要纳入请求次数和成功/其他失败的CU预算；429不消耗消费CU不等于无需等待、可无限请求。403保持原权限原因待核，不按吞吐退避推一定能恢复。

核对结果：重试时间单位、上限和累计调用量可计算，未执行请求或宣称恢复成功。
依据：[Alchemy：当前账户吞吐与429](https://www.alchemy.com/docs/reference/throughput)
依据：[Alchemy：NFT 方法与错误 CU 成本](https://www.alchemy.com/docs/reference/compute-unit-costs)

## 6. 把预算结果与刷新完成条件一并交付

输出方法、成功/错误次数、预计消费CU、时间窗吞吐权重、账户限额来源及未知配额。CU到金额还需当前方案/账单规则，不凭免费示例300CU/s保证本人资格或价格。

若计划含Refresh，Queued和estimatedMsToRefresh只是队列状态/预计毫秒时间；消费预算不代表NFT已刷新。完成需要以后取得的同资产更新记录与实际用量核对；目前只交付文档规则和离线预算。

核对结果：预算、权限、数据完成与计费验收是四项独立状态。
依据：[Alchemy：V3 Refresh NFT Metadata](https://www.alchemy.com/docs/reference/nft-api-endpoints/nft-api-endpoints/nft-metadata-endpoints/refresh-nft-metadata-v-3)
依据：[Alchemy：Compute Units 与 Throughput CU](https://www.alchemy.com/docs/reference/compute-units)
依据：[Alchemy：当前账户吞吐与429](https://www.alchemy.com/docs/reference/throughput)
依据：[Alchemy：NFT 方法与错误 CU 成本](https://www.alchemy.com/docs/reference/compute-unit-costs)

## 常见错误
- CU表包含旧方法；计费条目不证明现行服务可用。
- 吞吐按账户全部应用合计，持续理论速率不能保证瞬时请求成功。
- raw.error源站429不能自动当Alchemy HTTP429免费；没有账单不称费用验收。

## 完成检查
- 对既有日志或计划形成可复算的两列CU、时间窗与有限重试预算，未知账户限额/价格保持未知。
- 只完成官方资料与算术核对，没有认证请求、消费回执、429恢复或刷新验收。

## 相关知识
- [NFT 的 Token URI、图片和链上所有权怎样对应？](https://lianxiaozhi.com/learn/erc721-tokenuri-metadata)
- [原始、解码和整理后的链上数据有什么区别？](https://lianxiaozhi.com/learn/raw-decoded-curated-data)

## 官方依据
- [Alchemy：V3 单枚 NFT Metadata](https://www.alchemy.com/docs/reference/nft-api-endpoints/nft-api-endpoints/nft-metadata-endpoints/get-nft-metadata-v-3)
- [Alchemy：V3 Refresh NFT Metadata](https://www.alchemy.com/docs/reference/nft-api-endpoints/nft-api-endpoints/nft-metadata-endpoints/refresh-nft-metadata-v-3)
- [Alchemy：NFT 方法与错误 CU 成本](https://www.alchemy.com/docs/reference/compute-unit-costs)
- [Alchemy：Compute Units 与 Throughput CU](https://www.alchemy.com/docs/reference/compute-units)
- [Alchemy：当前账户吞吐与429](https://www.alchemy.com/docs/reference/throughput)
- [Alchemy：2026-08-18 NFT 端点退役公告](https://www.alchemy.com/docs/changelog/2026/8/18)
- [Alchemy：当前 NFT API 方法目录](https://www.alchemy.com/docs/reference/nft-api-endpoints)
