Skip to main content
Không bao giờ bỏ lỡ dữ liệu: Tính năng Phát lại lịch sử của LaserStream đảm bảo bạn có thể khôi phục sau khi mất kết nối và bổ sung dữ liệu còn thiếu trong 48 giờ hoạt động blockchain gần nhất.

Phát lại lịch sử là gì?

Phát lại lịch sử là tính năng của LaserStream cho phép bạn phát lại dữ liệu blockchain gần đây bằng cách thiết lập điểm bắt đầu fromSlot. Tính năng này hữu ích để xử lý tình trạng mất kết nối và đảm bảo tính liên tục của dữ liệu trong các ứng dụng thời gian thực.

Bạn có thể phát lại dữ liệu từ bao lâu trước đây

Bạn có thể phát lại tối đa khoảng 48 giờ lịch sử (khoảng 691.200 slot với thời gian mỗi slot hiện tại của Solana là khoảng 250 mili giây — số lượng slot chính xác sẽ thay đổi khi thời gian slot của mạng thay đổi), bất kể bạn đăng ký ở mức commitment nào. Hãy truyền một fromSlot nằm trong khoảng thời gian đó và LaserStream sẽ truyền dữ liệu từ điểm ấy đến hiện tại. Các lần phát lại cũ hơn trả về dữ liệu đã hoàn tất. LaserStream lưu khoảng 20 phút slot gần nhất trong bộ nhớ; mọi dữ liệu cũ hơn được cung cấp từ kho lưu trữ lịch sử chỉ chứa các khối đã hoàn tất. Vì vậy, khi bạn phát lại một fromSlot cũ hơn khoảng 20 phút, dữ liệu sẽ phản ánh chuỗi đã hoàn tất — bạn sẽ không thấy các slot thuộc nhánh rẽ, các slot bị loại bỏ hoặc các bản cập nhật tài khoản trong cùng slot ở phạm vi đó, ngay cả khi đăng ký processed hoặc confirmed. Các slot trong khoảng 20 phút gần nhất vẫn tuân theo ngữ nghĩa commitment thực tế, bao gồm các nhánh rẽ và bản cập nhật tài khoản trong cùng slot.
Khoảng thời gian giới hạn: Tính năng phát lại lịch sử chỉ bao gồm khoảng 48 giờ gần nhất. Bạn không thể phát lại dữ liệu từ các thời điểm tùy ý trong quá khứ.

Handle Disconnections

Khôi phục dữ liệu bị mất trong các lần mất kết nối ngắn (tối đa 48 giờ)

Bootstrap Applications

Khởi động ứng dụng với ngữ cảnh gần đây trong 48 giờ qua

Analyze Recent Events

Xem lại các giao dịch và thay đổi tài khoản gần đây

Test with Recent Data

Sử dụng dữ liệu thực tế gần đây để kiểm thử và phát triển

Kiểm tra khả năng phát lại

Gọi SubscribeReplayInfo để kiểm tra slot sớm nhất hiện có thể phát lại. Nếu slot đã lưu nằm ngoài khoảng thời gian phát lại, ứng dụng của bạn có thể khôi phục riêng phần lịch sử còn thiếu hoặc tiếp tục từ một slot mới hơn. Hãy bắt đầu một lượt đăng ký mới với fromSlot bạn đã chọn. Khả năng cung cấp dữ liệu có thể thay đổi giữa các yêu cầu.

Cách hoạt động

1

Specify Starting Point

Sử dụng tham số fromSlot để đặt điểm bắt đầu phát lại (phải nằm trong khoảng 48 giờ gần nhất, tương đương khoảng 691.200 slot ở tốc độ mạng hiện tại)
2

Stream Historical Data

LaserStream cung cấp tất cả sự kiện kể từ slot bạn chỉ định
3

Catch Up to Real-Time

Dữ liệu lịch sử tiếp tục được truyền cho đến khi bạn bắt kịp slot hiện tại
4

Continue Live Streaming

Chuyển đổi liền mạch sang truyền dữ liệu thời gian thực
Tự động kết nối lại: LaserStream SDK tự động xử lý việc kết nối lại và phát lại. Không cần mã bổ sung!
Quá trình phát lại tuân theo cờ bộ lọc giao dịch matchMints, vì vậy một lượt phát lại được lọc theo mint sẽ trả về cùng tập hợp giao dịch mà luồng trực tiếp sẽ cung cấp.

Bắt đầu nhanh

Bắt đầu sử dụng LaserStream từ Bảng điều khiển Helius. Mainnet yêu cầu gói Business hoặc Professional; Devnet khả dụng từ gói Developer trở lên. Xem Gói dịch vụ và giá để biết chi tiết.

Tùy chọn cấu hình

number
bắt buộc
Số slot để bắt đầu phát lại, dưới dạng u64. Số này phải nằm trong khoảng thời gian phát lại (khoảng 48 giờ gần nhất tính từ slot hiện tại, tương đương khoảng 691.200 slot ở tốc độ mạng hiện tại) ở bất kỳ mức commitment nào.Ví dụ: currentSlot - 1000Quan trọng: Nếu bạn truyền một slot cũ hơn khoảng thời gian cho phép, LaserStream sẽ từ chối yêu cầu với Operation was attempted past the valid range.

Trường hợp sử dụng

Khi ứng dụng kết nối lại sau một lần mất kết nối ngắn (dưới 48 giờ), bạn có thể sử dụng tính năng Phát lại lịch sử để đảm bảo không bỏ lỡ dữ liệu. getCurrentSlot gọi Helius RPC; lastProcessedSlot được lưu trong bộ nhớ bên dưới — hãy lưu trữ lâu dài theo cách phù hợp với ứng dụng của bạn (Redis, Postgres, một tệp, v.v.).
Khởi động ứng dụng với ngữ cảnh gần đây từ vài phút vừa qua:
Sử dụng dữ liệu lịch sử gần đây để kiểm thử (giới hạn trong 48 giờ gần nhất):

Các bước tiếp theo

LaserStream gRPC

Tìm hiểu thêm về các tính năng và khả năng truyền dữ liệu qua gRPC

Get Started

Bật LaserStream từ Bảng điều khiển Helius và bắt đầu truyền dữ liệu.

SDK Documentation

Xem toàn bộ tài liệu SDK

Contact Support

Nhận trợ giúp cho quá trình triển khai của bạn