Як знайти RPC-ноди, які не відстежують користувачів і стабільно працюють?
Листопад був складним: ціни на криптовалюту впали, провайдер Hetzner відключив 20% валідаторів, FTX збанкрутіла, біржі перестали приймати депозити в USDT на Solana... Попри все є дві хороші новини для спільноти Solana.
По-перше, розробники нікуди не йдуть. Вони знають, що таке Solana: швидкий блокчейн-протокол з алгоритмом консенсусу, що дозволяє додаткам працювати в реальному часі, та з сотнями популярних проєктів. Розробники розуміють перспективи, а тому продовжують працювати над інфраструктурою та будувати dApp-и для користувачів.
По-друге, Everstake, один з найнадійніших валідаторів Solana зі штаб-квартирою в Києві, хоче допомогти розробникам створювати ще кращі додатки та робити це зручніше. Для цього компанія випустила open-source load balancer, який дозволяє автоматично перескеровувати запити від публічних RPC-нод Solana, які перестали відповідати.
Everstake та команда extrnode закликають всіх охочих завантажувати та тестувати open-source рішення, і звичайно ділитись враженнями та пропозиціями в Discord. Розробники можуть зібрати Docker image з вихідного коду, або просто скористатись готовим образом з Docker Hub.
Чому RPC так важливі для блокчейн-додатків?
Блокчейн-додатки, наприклад криптовалютні гаманці, не під’єднані до блокчейну напряму. Вони просто перетворюють дії користувача в інтерфейсі в транзакції, а потім надсилають їх обраній RPC-ноді. Вона в свою чергу обробляє транзакції, розсилає їх по всій мережі, де інші ноди перевіряють операцію та включають її в блокчейн. Якщо обрана RPC-нода не відповідає, додаток втрачає зв’язок з мережею та перестає працювати.
Щоб додаток не залежав від стану чужої RPC-ноди, розробник може запустити власну ноду. Це дорого: один лише хостинг ноди Solana коштує від $1000 в місяць, але ж ще потрібно виділити ресурси на її моніторинг та обслуговування.
Щоб не витрачати гроші, більшість розробників dApp користуються публічними RPC-нодами. Їх запускають інші компанії чи проєкти і надають до них доступ безкоштовно або за підписку. У них теж є недолік: зазвичай їх хостять на централізованих сервісах типу Google Cloud, Amazon Web Services чи Hetzner.
Hetzner на початку листопада заборонив хостинг нод Solana на своїй платформі. Його рішення спричинило вимкнення 22% нод Solana, а також збої в роботі dApp, які використовували RPC-ноди на цій платформі.
Ситуація з Hetzner ще раз продемонструвала, що покладатись лише на одну RPC-ноду, та ще й на централізованому сервісі для хостинга — небезпечно. Щоб бути в безпеці, децентралізованому додатку варто мати запасні RPC та систему моніторингу з’єднання і автоматичної маршрутизації запитів. Саме це й робить extrnode open-source load balancer.
Що таке extrnode open-source load balancer?
extrnode open-source load balancer розподіляє запити користувачів всередині кластеру публічних RPC-нод Solana. Він також автоматично перескеровує запити до інших активних RPC-ендпоїнтів, якщо поточна RPC-нода пішла в офлайн. Додатки, які будуть використовувати extrnode, завжди будуть мати запасні RPC та автоматичну маршрутизацію запитів, і будуть працювати набагато стабільніше, щоб не відбувалось всередині мережі.
extrnode забезпечує децентралізованим додаткам надійне з’єднання з блокчейном. Але в нього є ще кілька переваг:
- extrnode open-source load balancer безкоштовний та простий: потрібно запустити образ в Docker, під’єднатись до нього — і все;
- open-source load balancer виявляє географічно найближчі ноди та пріорітетизує їх по швидкості з’єднання;
- extrnode драйвиться Web3-спільнотою. Користувачі можуть пропонувати ідеї та вносити зміни в вихідний код.
Чи є альтернативи extrnode?
Альтернативи є, і їх можна розділити на три категорії:
- децентралізовані load balancer, які вимагають оплати в волатильних токенах проєкту за кожен запит;
- централізовані load balancer, які дають доступ лише до кластеру RPC одного провайдера, чим підривають надійність та здатність продукту працювати під час атак на інфраструктуру;
- саморобні load balancer. Вони рідкісні: потрібна команда зі специфічними знаннями, потужна інфраструктури для хостингу та підтримка з боку валідаторів мережі.
При використанні альтернатив розробникам доводиться обирати: або вкладати гроші в токени, або ризикувати стабільністю свого блокчейн-додатку.
Як extrnode open-source load balancer може допомогти блокчейн-розробникам?
При використанні extrnode розробники можуть бути впевнені, що у їхніх dApp завжди буде доступ до активної RPC. У випадку проблем їм не доведеться просити користувачів перемкнути RPC вручну, як це зараз роблять навіть найпопулярніші додатки.
На момент публікації Everstake випустив open-source версію load balancer. ЇЇ потрібно хостити на власній машині, і вона розподіляє запити додатків всередині кластера безкоштовних публічних RPC-нод Solana. Оскільки ніхто не може гарантувати стабільність та якість роботи публічних нод, Everstake рекомендує використовувати extrnode open-source load balancer лише для тестування додатків та самого extrnode в мейннеті.
В планах Everstake — зібрати відгуки, покращити продукт та випустити безкоштовний public load balancer, а також Premium-версію, які уже можна буде задіяти для роботи customer-grade dApp.
Щоб скористатись public load balancer, розробники будуть відправляти запити до RPC-endpoint extrnode. Load balancer на сервері проєкту автоматично прийматиме та маршрутизуватиме запити всередині кластеру нод, серед яких буде RPC-нода Everstake з аптаймом 99,9%.
Після випробування extrnode load balancer в мережі Solana команда сподівається адаптувати рішення для інших блокчейнів.
Чи безпечно користуватись load balancer?
extrnode open-source load balancer має стійкий до відмов механізм маршрутизації запитів. Але оскільки це новий продукт, команда закликає охочих тестувати його в мейннеті та ділитись відгуками, щоб розробники змогли його покращити.
Переконайтесь, що ви уже підписались на extrnode в Twitter та приєднались до нашого Discord проєкта. Так ви не пропустите оновлень, зможете задати питання та взяти участь в заходах для спільноти.
4 коментарі
Додати коментар Підписатись на коментаріВідписатись від коментарів