Każdy program Solany odczytuje i zapisuje ten sam stan, więc swap, spłata pożyczki i aktualizacja wyroczni mogą zostać wykonane w jednej atomowej transakcji. Zacznij od działającej aplikacji Anchor, zintegruj płynność na żywo i wdrażaj z zastosowaniem praktyk produkcyjnych.
Właściwości, na których możesz oprzeć projekt swojego protokołu
Atomowa kompozycyjność
Programy wywołują się nawzajem przez Cross Program Invocation w ramach jednej transakcji. Jeśli którykolwiek krok się nie powiedzie, cała transakcja jest wycofywana, więc strategia obejmująca wiele protokołów nigdy nie rozliczy się częściowo.
Każda transakcja z góry deklaruje konta, które odczytuje i zapisuje. Środowisko uruchomieniowe wykonuje równolegle transakcje, które nie dotykają tych samych kont z możliwością zapisu, więc jeden obciążony rynek nie blokuje niezwiązanych z nim rynków.
Transakcje zapisujące dane na spornym koncie konkurują o udział tego konta w bloku. Ustalaj opłaty priorytetowe na podstawie kont, na które zapisujesz, a nie średnich dla całej sieci.
Czasy slot w mainnecie są skracane etapami, a Alpenglow zastąpi obecny protokół głosowania i finalności. Śledź oba, zanim dostroisz wygasanie wycen, limity czasu i okna likwidacji.
Domyślna ścieżka dla nowego protokołu: Anchor dla programu, LiteSVM i Surfpool do testów, Codama dla klientów i Kit dla aplikacji.
01Napisz program
Anchor lub Pinocchio
Anchor to zalecany framework dla większości programów, z wbudowaną walidacją kont, generowaniem IDL i pomocnikami CPI. Sięgnij po Pinocchio, bibliotekę bez zależności, na gorących ścieżkach, gdzie liczy się każda jednostka obliczeniowa.
Uruchamiaj szybkie testy w procesie z LiteSVM lub Mollusk. Następnie uruchom testy integracyjne na Surfpool, lokalnej sieci, która ładuje konta z mainnetu na żądanie, dzięki czemu możesz testować na prawdziwych pulach i wyroczniach.
Generuj typowane klienty TypeScript i Rust na podstawie IDL programu, aby konstruktory instrukcji i dekodery kont pozostawały zsynchronizowane z każdym wdrożeniem.
@solana/kit to standardowy SDK JavaScript. Jego wtyczka portfela wykrywa zainstalowane portfele przez Wallet Standard, bez pakietów adapterów dla poszczególnych portfeli.
Te protokoły publikują dokumentację deweloperską swoich programów i API. Przeczytaj dokumentację i raporty z audytów każdego protokołu, zanim przekierujesz przez niego środki użytkowników.
Swapy i routing
Kieruj swapy przez płynność Solany za pomocą API agregatora lub żądaj surowych instrukcji, aby złożyć swap we własnej transakcji.
Emituj aktywa z wbudowanym zachowaniem, które musi obsłużyć Twój protokół: hooki transferu, salda oprocentowane, skalowane kwoty UI i poufne transfery.
Tylko przykłady. Umieszczenie protokołu na liście nie oznacza poparcia ze strony Solana Foundation.
Dostarczanie transakcji
Dostarczaj transakcje, gdy rynki się ruszają
Ruch DeFi osiąga szczyt podczas zmienności, dokładnie wtedy, gdy użytkownicy potrzebują, by ich transakcje zostały zatwierdzone. Wbuduj te rozwiązania w klienta przed uruchomieniem na mainnecie.
1
Ustaw limity obliczeń i opłaty priorytetowe
Symuluj, aby zmierzyć jednostki obliczeniowe, ustaw ścisły limit i ustalaj opłaty priorytetowe na podstawie ostatnich opłat na kontach, na które zapisujesz.
Transakcje v1 podnoszą limit rozmiaru; address lookup tables kompresują długie listy kont. Każde z tych rozwiązań ma swoje kompromisy w przypadku złożonych tras.
Stake-weighted QoS rezerwuje pojemność lidera dla transakcji przekazywanych przez węzły validator z zastakowanymi środkami. Wybierz dostawcę RPC, który to obsługuje.
Śledź wygasanie blockhash, ponownie rozgłaszaj transakcję, aż zostanie zatwierdzona lub wygaśnie, i potwierdzaj na poziomie commitment wymaganym przez Twoją logikę.
Program DeFi może przechowywać środki użytkowników od pierwszego wdrożenia. Kontroluj, kto może go zmieniać, udowodnij, co zostało wdrożone, i obserwuj, co robi.
Umieść uprawnienia za multisig
Przechowuj uprawnienia do aktualizacji programu i administratora w multisig Squads z blokadą czasową zmian.
Zleć niezależne audyty przed uruchomieniem na mainnecie i prowadź program bug bounty. Solana Foundation finansuje oceny bezpieczeństwa STRIDE i bezpłatne narzędzia dla zespołów z ekosystemu.