Огляд: RPC-запити — це шлюз додатка до кластера Solana. Запити обслуговуються так званими RPC-вузлами, які зазвичай присвячені цьому завданню, а не беруть участь у консенсусі. Проте з точки зору користувача додатка низька продуктивність RPC нічим не відрізняється від низької продуктивності кластера. Щоб забезпечити користувачам чудовий досвід і продемонструвати швидкість та низьку затримку Solana, важливо мати RPC-інфраструктуру, яка відповідає цим вимогам.
Розробка: Розробникам рекомендується використовувати локальний кластер під час розробки, особливо на ранніх етапах і для тестування. Локальні кластери більш гнучкі, ніж публічні пропозиції, надаючи свободу запускати неоптимізовані ранні ітерації. Найпростіший спосіб запустити локальний кластер — це використовувати бінарний файл solana-test-validator, що входить до пакету інструментів Solana CLI. Коли додаток досягне стабільного стану, розгортання в публічному кластері стає більш доцільним.
Як і у випадку з будь-якими завданнями оптимізації коду, коли йдеться про RPC-запити, менше — це краще. Уникайте часто повторюваних викликів для отримання тих самих даних. Уникайте створення клієнтів, які виконують RPC-запити безпосередньо. "Децентралізовані додатки без бекенду" — це міф; ви просто навантажуєте чужу інфраструктуру. Кешуйте дорогі виклики (особливо getProgramAccount, getSignaturesForAddress2 та getConfirmedBlock) у спосіб, оптимізований для вашого додатка, і обслуговуйте користувачів з кешу. Приділення часу оптимізації коду перед запуском може заощадити багато проблем через скарги на поганий користувацький досвід і значно знизити витрати на інфраструктуру.
Кілька провайдерів пропонують безкоштовний RPC-доступ до публічних кластерів Solana. Ці сервіси підходять для реального тестування, ранніх демо та невеликих приватних бета-програм. Майте на увазі, що ви отримуєте саме те, за що платите. Безкоштовні сервіси зазвичай не масштабуються автоматично, мають обмеження швидкості, не пропонують SLA і не бояться блокувати зловмисників. Коли додаток готовий до відкриття для публіки, настає час інвестувати в приватний RPC-доступ.
Деякі безкоштовні RPC-провайдери:
Testnet
Devnet
Mainnet-beta
Через варіативність вимог до RPC між додатками узагальнена публічна RPC-інфраструктура рідко підходить. Щоб забезпечити користувачам гарний досвід, публічні додатки повинні забезпечити власний приватний RPC-доступ. Це дозволить вам автоматично масштабуватися залежно від попиту користувачів, пом'якшити обмеження швидкості відповідно до вашого додатка та бути впевненими, що користувачі інших додатків не витіснять ваших. Кілька організацій пропонують RPC-сервіси з високою доступністю на вимогу; дивіться нижче. Якщо жоден із провайдерів не підходить і ви готові запускати власний RPC-сервіс, зв'яжіться з Solana Foundation для отримання консультації.