Czym jest operator węzła Kora?
Jako operator węzła Kora uruchamiasz usługę paymaster, która sponsoruje opłaty transakcyjne Solana dla Twoich użytkowników. Twój węzeł akceptuje płatności w tokenach SPL i wykorzystuje Twoje SOL do opłacania faktycznych opłat sieciowych, umożliwiając transakcje bez opłat za gaz dla Twojej aplikacji.
Po co uruchamiać węzeł Kora?
- Lepsze doświadczenie użytkownika: Twoi użytkownicy dokonują transakcji bez potrzeby posiadania SOL (uproszczony onboarding, lepsza retencja itp.)
- Źródło przychodów: Pobieraj opłaty w tokenach preferowanych przez Twój biznes (USDC, BONK itp.)
Spis treści
Szybki start
Chcesz najpierw przetestować lokalnie? Uruchom lokalny węzeł Kora w kilka minut: → Przewodnik szybkiego startu lokalnego
Kluczowe koncepcje
Jako operator węzła Kora jesteś odpowiedzialny za prowadzenie bezpiecznej usługi paymaster, która umożliwia transakcje bez opłat za gaz dla Twoich użytkowników. Twój węzeł ma cztery kluczowe obowiązki:
1. Walidacja transakcji
Skonfiguruj swój węzeł tak, aby akceptował tylko transakcje spełniające
wymagania Twojego biznesu za pomocą kora.toml:
- Listy dozwolonych tokenów: Zdefiniuj, które tokeny SPL akceptujesz jako płatność (obsługuje zarówno SPL, jak i Token-2022)
- Listy dozwolonych programów: Dodaj do białej listy programy Solana, z którymi użytkownicy mogą wchodzić w interakcje
- Limity transakcji: Ustaw maksymalne opłaty, które jesteś skłonny zapłacić oraz limity podpisów
- Czarne listy kont: Zapobiegaj interakcjom z problematycznymi adresami
- Wyrocznie cenowe: Skonfiguruj Jupiter lub mockowe wyceny do obliczania opłat
- Tokeny płatności: Określ, jakie rodzaje tokenów będziesz akceptować jako płatność
- Polityki feepayer: Kontroluj, jakie operacje może wykonywać Twój feepayer (przelewy, spalanie, zatwierdzenia itp.)
- Rozszerzenia Token-2022: Blokuj określone rozszerzenia Token-2022 dla zwiększonego bezpieczeństwa
- Cachowanie: Włącz cachowanie Redis, aby poprawić wydajność poprzez zmniejszenie wywołań RPC
- Limity użytkowania: Ustaw limity transakcji na portfel, aby zapobiec nadużyciom, zapewnić sprawiedliwe użytkowanie lub nagradzaj użytkowników dotowanymi transakcjami do określonego limitu
→ Kompletna dokumentacja konfiguracji Kora.toml → Przykładowy plik kora.toml
2. Podpisywanie transakcji
Twój węzeł wymaga kluczy Solana (keypair) do podpisywania transakcji jako płatnik opłat. W przypadku wdrożeń produkcyjnych Kora obsługuje konfiguracje z wieloma podpisującymi w celu zwiększenia niezawodności i dystrybucji blokad kont. Rozważ wdrożenie rotacji kluczy, kontroli dostępu, kopii zapasowych i innych strategii zabezpieczenia podpisujących. Dostępne opcje podpisywania:
- Lokalny klucz prywatny: Przechowywanie klucza prywatnego bezpośrednio w środowisku serwera (jako base58, plik .json lub tablica u8)
- Turnkey: Uproszczone zarządzanie kluczami prywatnymi. Twórz portfele, podpisuj transakcje i automatyzuj działania onchain.
- Privy: Prosta infrastruktura kryptowalutowa. Bezpiecznie twórz portfele white-label i podpisuj transakcje.
- HashiCorp Vault: Zarządzanie sekretami i ochrona danych wrażliwych
→ Kompletny przewodnik konfiguracji podpisujących
3. Opłacanie prowizji transakcyjnych
Utrzymuj wystarczające saldo SOL, aby pokryć opłaty sieciowe dla przewidywanego wolumenu transakcji:
- Monitorowanie salda: Śledź saldo SOL i skonfiguruj alerty o niskim stanie (Kora udostępnia wbudowane metryki Prometheus - zobacz Monitorowanie)
- Automatyzacja: Wdróż procedury automatycznego uzupełniania SOL w środowiskach produkcyjnych
- Planowanie pojemności: Planuj z uwzględnieniem przewidywanego przypadku użycia, liczby użytkowników itp.
Ważne jest, abyś rozumiał, jak Kora szacuje opłaty i jak skonfigurować swój węzeł, aby zmaksymalizować przychody. Zobacz Przewodnik szacowania opłat, aby uzyskać więcej szczegółów.
4. Monitorowanie operacji
Ciągłe śledzenie bezpieczeństwa, wydajności i metryk biznesowych węzła:
- Monitorowanie bezpieczeństwa: Nietypowe wzorce, nieudane walidacje i naruszenia limitów częstotliwości
- Alerty operacyjne: Stan systemu, ostrzeżenia o saldzie i zdarzenia bezpieczeństwa
- Śledzenie finansowe: Koszty SOL vs. przychody z tokenów, analiza rentowności
- Monitorowanie salda podpisujących: Śledź saldo podpisujących i skonfiguruj alerty o niskim stanie
Kora udostępnia opcjonalny punkt końcowy /metrics, który dostarcza dane
wydajnościowe w czasie rzeczywistym w formacie Prometheus.
→ Przewodnik po monitorowaniu Kora
5. Optymalizacja wydajności (opcjonalnie)
W przypadku wdrożeń o wysokim natężeniu ruchu włącz pamięć podręczną Redis, aby zmniejszyć liczbę wywołań RPC i poprawić czasy odpowiedzi:
- Pamięć podręczna kont: Przechowuj dane kont Solana w pamięci podręcznej z konfigurowalnym czasem życia (TTL)
- Automatyczne przełączanie awaryjne: Płynne przełączanie na bezpośrednie wywołania RPC, gdy Redis jest niedostępny
- Zarządzanie pamięcią podręczną: Automatyczne wygasanie i możliwość wymuszenia odświeżenia dla krytycznych operacji
Interfejs CLI Kora
Skrzynka kora-cli to gotowy do produkcji plik binarny w języku Rust, który zapewnia wszystko, czego potrzebujesz do uruchomienia węzła paymaster Kora. Jest dystrybuowany jako samodzielny plik wykonywalny, który można zainstalować globalnie lub wdrożyć w kontenerach.
Opcje instalacji
Instalacja globalna (zalecana do celów programistycznych)
cargo install kora-cli
Lub zbuduj ze źródła (zalecane dla kontrybutorów)
git clone https://github.com/solana-foundation/kora.gitcd korajust install
Podstawowe użycie
Serwer RPC Kora udostępnia punkt końcowy JSON-RPC (domyślnie:
http://localhost:8080). Uruchom go za pomocą polecenia kora rpc:
# Run with specified kora.toml and signers.tomlkora --config path/to/kora.toml rpc start --signers-config path/to/signers.toml# Helpkora rpc --help
Więcej informacji na temat korzystania z interfejsu CLI Kora znajdziesz w Przewodniku CLI.
Aplikacje mogą uzyskać dostęp do serwera RPC Kora za pośrednictwem Kora TS SDK
Konfiguracja
Każdy węzeł RPC Kora musi być skonfigurowany co najmniej z:
- punktem końcowym Solana RPC (określonym za pomocą flagi
--rpc-urllub zmiennej środowiskowejRPC_URL) [domyślnie: http://127.0.0.1:8899] - konfiguracją podpisującego(-ych) Solana (określoną za pomocą flagi
--signers-config signers.toml) - plikiem konfiguracyjnym
kora.toml(określonym za pomocą flagi--config path/to/kora.toml)
kora.toml
Przed wdrożeniem musisz utworzyć i skonfigurować plik kora.toml, aby określić:
- Ograniczanie częstotliwości i uwierzytelnianie
- Adres docelowy płatności
- Dostępność metod RPC
- Reguły walidacji transakcji
- Zasady bezpieczeństwa (biała lub czarna lista tokenów SPL, programów, kont, rozszerzeń tokenów itp.)
- Modele wyceny opłat
- Ulepszone zasady płatnika opłat (ochrona przed niepożądanym zachowaniem podpisujących)
- Zbieranie metryk
- Konfiguracja pamięci podręcznej Redis (opcjonalnie)
signers.toml
Będziesz również musiał utworzyć plik signers.toml, aby określić:
- Sygnatariusza(-y) dla Twojego węzła
- Strategię wyboru sygnatariusza
- Konfigurację każdego sygnatariusza i odpowiednie klucze
Wdrożenie
Wdrożenie lokalne
Uruchom i przetestuj lokalny serwer Kora w kilka minut: Przewodnik szybkiego startu
Docker
Użyj przykładowego pliku Dockerfile, aby wdrożyć na dowolnej platformie kontenerowej. Plik docker-compose.yml zawiera Redis do obsługi cache:
→ Przykładowy Dockerfile → Docker Compose z Redis
Przewodniki specyficzne dla platformy
Więcej przewodników integracji wkrótce
Potrzebujesz pomocy?
- Solana Stack Exchange - Zadawaj
pytania/dziel się wiedzą (pamiętaj o użyciu tagu
kora) - GitHub Issues - Zgłaszaj błędy lub uzyskaj pomoc
- Uruchom
kora rpc --help, aby zobaczyć wszystkie dostępne flagi i opcje konfiguracji
Is this page helpful?