Apa yang Sangat Diantisipasi oleh Firedancer pada Breakpoint?
Pada konferensi Solana Breakpoint minggu lalu, suasananya sangat meriah dengan peluncuran produk dan berbagai acara sampingan yang menarik. Sorotan yang menonjol adalah versi awal klien validator Solana, Firedancer, yang secara resmi diluncurkan di mainnet.
Pencapaian penting ini mendapat perhatian khusus, menandakan lompatan kinerja yang signifikan untuk jaringan Solana sekaligus mengurangi risiko downtime jaringan yang disebabkan oleh kegagalan satu klien.
Pengembangan Firedancer dimulai pada tahun 2021-2022, dipelopori oleh Jump Trading Group sebagai klien validator kedua Solana (dengan klien asli, Agave, yang dikembangkan oleh Anza). Tujuan utamanya adalah untuk menghilangkan satu titik kegagalan, meningkatkan ketahanan dan ketahanan jaringan secara keseluruhan.
Tidak seperti validator berbasis Rust yang asli, Firedancer ditulis dalam bahasa C, tidak termasuk kode Rust. Pilihan ini secara signifikan mengurangi potensi dampak kerentanan pada jaringan, menambahkan lapisan keamanan yang kuat pada Solana.
Bagaimana Kinerja Firedancer?
Selama presentasi di Solana Breakpoint, Kepala Ilmuwan Jump Crypto, Kevin Bowers, memamerkan kemampuan Firedancer untuk memproses lebih dari 1 juta transaksi per detik (TPS), jauh melebihi batas teoritis Solana saat ini yang hanya puluhan ribu TPS. Dia secara metaforis membandingkan pencapaian ini dengan pelebaran “jalan desa” menjadi “jalan raya antarnegara bagian,” yang menunjukkan optimalisasi ganda dari biaya dan kapasitas jaringan.
Insinyur inti Liam Heeger membagikan kemajuan pada testnet, mencatat bahwa Firedancer berhasil menghasilkan lebih dari 20.000 blok dengan rasio staking sebesar 1%. Insinyur lainnya, Aryaman Jain, mendemonstrasikan kinerja Firedancer dalam kondisi tertentu, mengungkapkan TPS hingga satu juta dalam lingkungan 10 validator, dengan lebih dari 1,2 miliar komputasi per detik dan kapasitas blockspace 3,5 Gbps.
Bagaimana Cara Kerja Firedancer?
Firedancer dibangun dengan tiga komponen utama: tumpukan komputasi berkinerja tinggi, tumpukan jaringan, dan mekanisme runtime dan konsensus. Kemampuannya untuk meningkatkan performa Solana hingga 1 juta TPS (batas protokol saat ini sekitar 81.000 TPS) terletak pada arsitektur inovatif dan optimalisasi aliran data.
Validator menggunakan model konkurensi yang menjalankan beragam tugas di beberapa thread, dengan setiap thread berfokus pada tugas-tugas tertentu seperti pemrosesan paket jaringan, validasi transaksi, dan pengemasan blok. Desain ini memaksimalkan pemanfaatan sumber daya dan secara signifikan mempercepat pemrosesan transaksi.
Secara khusus, setiap thread mengeksekusi salah satu dari 11 tugas yang berbeda. Beberapa tugas hanya membutuhkan satu thread, sementara yang lain membutuhkan beberapa thread yang bekerja secara paralel. Setiap thread beroperasi pada inti CPU khusus, memastikannya tidak pernah tidur atau digunakan kembali oleh sistem operasi.
Firedancer juga memperkenalkan arsitektur yang disebut “ubin”, di mana setiap ubin mewakili sebuah pekerjaan, thread yang sedang berjalan, dan inti CPU yang dialokasikan. Kombinasi ini memungkinkan penyetelan kinerja yang fleksibel dan efisien penyetelan kinerja. Sebagai contoh, net dan quic tiles dapat menangani lebih dari 1 juta TPS, sedangkan verify dan bank tiles fokus pada validasi transaksi dan eksekusi blok, cukup untuk skenario konkurensi tinggi.
Dokumentasi resmi Firedancer mencantumkan 11 ubin berikut ini:
- bersih: Mengirim dan menerima paket jaringan (setiap ubin dapat menangani >1 juta TPS);
- quic: Menerima transaksi dari klien, mengelola koneksi dan pemrosesan paket untuk protokol QUIC (setiap ubin dapat menangani >1 juta TPS);
- memverifikasi: Memvalidasi tanda tangan kriptografi dari transaksi yang masuk, menyaring transaksi yang tidak valid (setiap tile dapat menangani 20-40.000 TPS);
- dedup: Memeriksa dan menyaring transaksi masuk yang duplikat;
- pak: Mengemas transaksi yang masuk ketika bertindak sebagai pemimpin, dengan cerdas menjadwalkannya untuk dieksekusi;
- bank: Menjalankan transaksi terjadwal (setiap ubin dapat menangani 20-40.000 TPS);
- poh: Terus menerus melakukan hash di latar belakang, mencampur hash yang dihasilkan dengan transaksi yang dieksekusi untuk membuktikan pemesanan dan waktu;
- rusak: Mendistribusikan data blok ke jaringan ketika bertindak sebagai pemimpin; ketika tidak, ia menerima dan mengirimkan kembali data blok (throughput terutama tergantung pada ukuran cluster, dengan tolok ukur yang menunjukkan >1 juta TPS untuk cluster kecil);
- toko: Menerima data blok ketika bertindak sebagai pemimpin atau dari node lain ketika menjadi pemimpin, menyimpannya dalam basis data disk lokal;
- metrik: Mengumpulkan informasi pemantauan tentang ubin lain dan memberikannya ke titik akhir HTTP;
- tanda: Memegang kunci pribadi validator dan merespons permintaan penandatanganan dari ubin lain.
Khususnya, sebelum Firedancer matang, versi transisinya, Frankendancer, telah memasuki Solana mainnet. Frankendancer adalah hibrida dari kode Firedancer dan Agave, memanfaatkan keunggulan Firedancer dalam tumpukan jaringan dan produksi blok sambil mempertahankan fungsi eksekusi dan konsensus Agave. Sebaliknya, Firedancer dibangun sepenuhnya dari awal tanpa kode Agave.
Apa Dampak Firedancer?
Tidak diragukan lagi, peluncuran Firedancer memiliki implikasi yang signifikan bagi ekosistem Solana, sangat meningkatkan keragaman validator dan semakin mengurangi risiko kegagalan tunggal, sehingga memperkuat keandalan jaringan.
Selain itu, Firedancer mempertahankan kompatibilitas ke belakang dengan protokol yang ada, memastikan transisi yang mulus untuk ekosistem tanpa memerlukan penyesuaian substansial dari pengembang dan pengguna DApp.
Meskipun Firedancer saat ini dalam mode non-voting dan sedang menjalani optimasi dan audit yang berkelanjutan, Firedancer memberikan gambaran yang penuh harapan untuk pengembangan jaringan Solana di masa depan.