Thử chi trả USDT trước mainnet: Nile thay đổi gì và môi trường thử nghiệm mô phỏng gì
Một hệ thống tích hợp chi trả nên gặp thất bại đầu tiên của nó ở nơi nào đó rẻ hơn mainnet, và trên TRON có hai nơi như vậy. Nile là một testnet công khai: một chuỗi thật nơi các giao dịch được ký và rơi vào các khối, chạy trên các tham số riêng của nó. Một môi trường thử nghiệm như của chúng tôi sao chép API trên một chuỗi mô phỏng, thứ từ bỏ mạng lưới thật và đổi lại các kết quả mà một mạng lưới thật sẽ không tạo ra theo yêu cầu. Chúng tôi đọc các tham số chuỗi của mainnet và Nile ngày 3 tháng 9 năm 2026 và ký các giao dịch trên Nile vào hôm sau.
Những gì Nile chia sẻ với mainnet
Nile trả lời cùng lệnh gọi getchainparameters như mainnet, và các tham số định giá một lần chuyển quay về giống hệt nhau. Năng lượng tốn 100 sun mỗi đơn vị trên cả hai mạng, nên một lần chuyển thiếu năng lượng đốt TRX ở cùng mức trên mỗi mạng. Băng thông miễn phí, phí tạo tài khoản, phí memo và ba tham số năng lượng động cũng khớp nhau.
| Tham số chuỗi, đọc ngày 3 tháng 9 năm 2026 | Mainnet | Nile |
|---|---|---|
Phí năng lượng tính bằng sun mỗi đơn vị, getEnergyFee | 100 | 100 |
Băng thông miễn phí cho mỗi tài khoản, getFreeNetLimit | 600 | 600 |
Phí tạo tài khoản tính bằng sun, getCreateAccountFee | 100,000 | 100,000 |
Phí memo tính bằng sun, getMemoFee | 1,000,000 | 1,000,000 |
Ngưỡng năng lượng động, getDynamicEnergyThreshold | 5,000,000,000 | 5,000,000,000 |
Hệ số tăng của năng lượng động, getDynamicEnergyIncreaseFactor | 2,000 | 2,000 |
Hệ số tối đa của năng lượng động, getDynamicEnergyMaxFactor | 34,000 | 34,000 |
Độ trễ unstake tính bằng ngày, getUnfreezeDelayDays | 14 | 1 |
Khóa ủy quyền dài nhất tính bằng khối, getMaxDelegateLockPeriod | 864,000 | 144,000 |
Chu kỳ bảo trì, getMaintenanceTimeInterval | 21,600,000 | 1,800,000 |
Trần thời gian CPU của một giao dịch, getMaxCpuTimeOfOneTx | 80 | 160 |
Những gì Nile thay đổi
Với bất kỳ ai xử lý năng lượng, khác biệt đầu tiên là unstake: nó mất một ngày trên Nile so với mười bốn ngày trên mainnet, nên một bài kiểm thử đóng băng TRX rồi rút nó ra kết thúc sớm hơn mười ba ngày so với cùng chuỗi thao tác đó trong môi trường thật. Khóa dài nhất mà một lần ủy quyền có thể mang là 144,000 khối trên Nile, năm ngày ở ba giây một khối, so với 864,000 khối, ba mươi ngày, trên mainnet. Một khóa dài hơn năm ngày hoàn toàn không thể diễn tập trên Nile; những gì một khóa từ chối thì giống nhau trên cả hai mạng.
Tám trong số các tham số mà mainnet trả về mang một giá trị khác trên Nile. Ngoài hai tham số đó, chúng là chu kỳ bảo trì, trần CPU trong bảng, và bốn tham số điều chỉnh các bên sản xuất khối, các đề xuất và các tính năng hợp đồng. Chúng tôi chưa lần theo cái nào trong sáu tham số đó vào một luồng chi trả.
Stake cũng cho ra một lượng năng lượng khác, vì mỗi mạng chia cùng một hạn mức năng lượng cho tổng stake của riêng nó, và stake của Nile nhỏ hơn nhiều. Ở cả hai lần chạy trên Nile ngày 4 tháng 9, khoản stake mà chúng tôi ủy quyền hiện ra trên tài khoản nhận là 7,376 đơn vị năng lượng. Cùng khoản stake đó trên mainnet, theo tổng đọc một ngày trước, ra 958 đơn vị, nên Nile phát ra gần gấp tám lần. Một khoản stake được định cỡ theo Nile sẽ để một chiếc ví mainnet thiếu hụt.
| Năng lượng từ stake | Mainnet, 3 tháng 9 năm 2026 | Nile, 4 tháng 9 năm 2026 |
|---|---|---|
Hạn mức năng lượng của cả mạng, TotalEnergyLimit | 180,000,000,000 | 180,000,000,000 |
Tổng stake lấy năng lượng, TotalEnergyWeight | 18,770,236,993 | 2,440,088,105 |
| Năng lượng trên bên nhận từ 100 TRX được ủy quyền | 958 đơn vị, tính ra | 7,376 đơn vị, đo được |
USDT thử nghiệm là một hợp đồng khác
Mã chi trả mang địa chỉ của hợp đồng USDT mà nó gọi. Ngày 27 tháng 10 năm 2026, chúng tôi hỏi một nút Nile về hợp đồng ở địa chỉ USDT của mainnet, TR7NHqjeKQxGTCi8q8ZY4pL8otSzgjLj6t, và câu trả lời là một đối tượng rỗng, {}: không có hợp đồng nào ở địa chỉ đó trên testnet. Token thử nghiệm trên Nile đến từ một hợp đồng khác ở một địa chỉ khác, nên địa chỉ hợp đồng thuộc về cấu hình, cạnh URL của nút, và một bản dựng cứng mã nó sẽ gọi sai địa chỉ trên một trong hai mạng.
Chúng tôi chưa đo một lần chuyển token thử nghiệm của Nile tốn bao nhiêu năng lượng. Nile tính cùng mức phí cho mỗi đơn vị, nhưng token là một hợp đồng khác, nên không có gì trên Nile xác nhận các con số của mainnet là khoảng 65,000 đơn vị cho một người đang giữ và khoảng 131,000 đơn vị cho một địa chỉ không có USDT. TRX thử nghiệm đến từ các faucet, và họ phân phối có hạn mức: cái mà chúng tôi dùng hồi tháng 9 cho phép một yêu cầu cho mỗi ví và mỗi IP trong mỗi 24 giờ.
Một giao dịch đã ký cũng ở lại trên mạng mà nó được dựng cho. Mỗi giao dịch TRON mang một tham chiếu tới một khối gần đây của chính chuỗi của nó, và API của chúng tôi kiểm tra tham chiếu đó với mainnet trước khi mua bất kỳ năng lượng nào. Một giao dịch mode B được dựng theo Nile bị từ chối với 400 và details.reason đặt là ref_block_unknown. Khi chuỗi không trả lời phép kiểm tra của chúng tôi, đơn hàng được chấp nhận mà không kiểm tra và lời từ chối của nút sau khi giao được tính tiền, nên hãy dựng mọi giao dịch theo khối mainnet hiện tại trước khi bạn gửi nó.
Môi trường thử nghiệm mô phỏng những gì
Môi trường thử nghiệm của chúng tôi trả lời tại https://sandbox.nrg.market/v1 và chạy cùng mã với môi trường thật trên tiền thử, một chuỗi mô phỏng và các nhà cung cấp năng lượng mô phỏng. Khóa ở đó bắt đầu bằng nrg_test_ và lấy từ trang tài khoản của môi trường thử nghiệm, nơi đăng ký là tự phục vụ. Hai môi trường không dùng chung gì: cơ sở dữ liệu, số dư, webhook và bí mật đều tách biệt. Khi tích hợp chạy được ở đó, bạn đổi URL gốc và khóa; luồng API giống nhau ở cả hai.
Tiền thử tới mà không cần faucet. Xác nhận email sẽ ghi có một số dư khởi đầu, và POST /v1/sandbox/deposit ghi có thêm qua cùng đường mà một khoản nạp thật đi: một dòng deposit trong sổ cái với một txid bắt đầu bằng sandbox-, và một webhook deposit.credited thật. Trên môi trường thật, đường đó không tồn tại và trả lời 404.
| Tiền thử trong môi trường thử nghiệm | Theo đặc tả API |
|---|---|
| Khi xác nhận email, hoặc lần đăng nhập Google đầu tiên | 10000 TRX |
Một lần gọi POST /v1/sandbox/deposit | tối đa 100000 TRX |
| Số lần gọi nạp tiền cho mỗi khách hàng mỗi ngày UTC | 10 |
Một testnet sẽ không tạo ra một kết quả cụ thể theo yêu cầu. Môi trường thử nghiệm gắn một vài địa chỉ với hành vi cố định, theo cách các số thẻ thử nghiệm hoạt động: các địa chỉ TRON hợp lệ không có khóa riêng nào đứng sau. Người nhận quyết định loại năng lượng và điều gì xảy ra sau ready; người gửi quyết định việc mua và việc ủy quyền diễn ra thế nào.
| Địa chỉ | Vai trò | Môi trường thử nghiệm làm gì |
|---|---|---|
TLLmUhBYgU125KkPpeTdP1vz1zqhoZwn9v | Người nhận | Không giữ USDT, nên kind: double. Nó cũng chưa được kích hoạt, và nó vẫn trống dù có bao nhiêu lần chuyển đáp xuống nó. |
TDUvBqzR3cYY6zYopYdJ9jWrxQRs9QmvQM | Người nhận | Không bao giờ có lần chuyển nào xuất hiện. Mục đợi ở ready, chuyển sang expired tại send_before và bị tính tiền, như ở môi trường thật. |
TKLeQhXSUba1GG1wdznyMc49oqModZ8Fbm | Người nhận | Nằm trong danh sách đen USDT: đơn hàng bị từ chối với 422 blacklisted_recipient. |
TQ6ey8qT87bnzBJXj7gVTGCkrU4wUJ1EWQ | Người gửi | Việc mua hỏng ở mọi nhà cung cấp. Mục kết thúc ở failed với purchase_failed, và phần giữ lại được nhả ra. |
TYWZsWdM9u8QKJTi6XEmenpvCPwg1xmPCC | Người gửi | Nhà cung cấp đầu tiên không khả dụng và việc chuyển sang dự phòng thành công. Không có gì trong phản hồi nói vậy. |
TNhq25t5XTEuk3mC9cTcAGB5rr3xuCkGyr | Người gửi | Lần ủy quyền được xác nhận sau khoảng 25 giây, dành cho đoạn mã phải chờ. |
| Bất kỳ địa chỉ hợp lệ nào khác | Vai nào cũng được | Một người nhận giữ USDT, và một lần ủy quyền được xác nhận trong 2 tới 8 giây. |
Hai phía kết hợp với nhau, nên một lô trộn người gửi hỏng với các người gửi bình thường sẽ kết thúc ở partially_completed mà không cần yêu cầu gì đặc biệt (trạng thái đó nghĩa là gì với hóa đơn). Các người gửi kịch bản được mọi khách hàng của môi trường dùng chung, nên khi thời gian là thứ đang được kiểm thử, hãy dùng một địa chỉ người gửi mới của riêng bạn: nó nhận 2 tới 8 giây bình thường, và các lần ủy quyền của nó là riêng tư với nó.
Giá trên môi trường là giá thật. Biểu giá của môi trường thử nghiệm đi theo biểu giá của môi trường thật chậm khoảng hai phút, ba phút ở mức tệ nhất, nên một ước tính diễn tập ở đó trả về mức giá mà môi trường thật đã báo hai hoặc ba phút trước. Mode B không cần khóa thật: chuỗi mô phỏng không kiểm tra chữ ký, nên một giao dịch được ký bằng bất kỳ khóa dùng một lần nào đều được phân tích như môi trường thật phân tích và đi qua broadcasting, broadcasted và confirmed, với việc phát được xác nhận sau khoảng ba giây.
Những gì chỉ mainnet cho thấy
Môi trường thử nghiệm không thể chứng minh phần mà chuỗi làm: năng lượng thực sự không bao giờ tới đâu trên đó, và một lần ủy quyền được xác nhận ở đó là một sự thật về trình mô phỏng của chúng tôi. Nile cũng không thể giải quyết chuyện đó cho dịch vụ của chúng tôi, vì chúng tôi không bán năng lượng trên bất kỳ testnet nào. Bạn biết trong môi trường thật liệu năng lượng thật có đáp xuống một chiếc ví thật hay không, và liệu lần chuyển sau đó có đi qua mà không đốt TRX hay không.
Một số nhánh không thể được tạo ra trên cả hai nơi thử này bằng bất kỳ yêu cầu nào: 503 capacity_unavailable, và các lỗi của mục broadcast_failed, transaction_reverted và broadcast_window_missed. Mỗi nhánh phụ thuộc vào nguồn cung năng lượng, vào chuỗi, hoặc vào việc dịch vụ bị chúng tôi tạm dừng. Hãy viết phần xử lý đó từ đặc tả API và phần thân của các webhook, và rà soát nó như mã chưa từng chạy.
Một phần lớn môi trường thật không tốn gì để thử. POST /v1/estimate nhận tối đa 500 người nhận và trả về cùng kind, energy_units và warnings mà một đơn hàng sẽ tính, và POST /v1/webhooks/{webhook_id}/test gửi cho bên nhận của bạn một lần giao có chữ ký thật. POST /v1/orders tốn TRX thật ở mọi chế độ, điều đó khiến một đơn hàng thật đầu tiên cho một lần chuyển là buổi diễn tập cuối cùng và là buổi duy nhất cho thấy năng lượng đáp xuống.
Mọi địa chỉ kịch bản trong bài này đều trả lời trên môi trường, trên tiền thử và khóa nrg_test_ của riêng bạn: mở trang tài khoản của môi trường thử nghiệm và cấp một khóa →