Penggantian Transaksi & Perbaikan Alat Pemantauan
Implementasi Fungsionalitas
Ganti set transaksi dan pendaftaran di ConsensusData dengan hashes dan / atau root Merkle #1228 (Blockchain, Peningkatan)
Voting pada seluruh set transaksi tidak dapat diskalakan. Ini akan menjadi lebih jelas ketika:
- Ada banyak transaksi dalam kumpulan untuk dinominasikan
- Batas ukuran blok ditingkatkan (bayangkan pemungutan suara pada set transaksi 4MB, mungkin perlu beberapa menit untuk mentransfer data ini)
- Ada lusinan, ratusan, atau bahkan ribuan node validator
Sebagai langkah pertama kami melakukan hal berikut:
- Menambahkan titik akhir API untuk node agar dapat mengambil sekumpulan transaksi dari kumpulan transaksi node lain. Seperti apa tampilan API itu? Jika kita mendesainnya sebagai getTransaction (Hash tx) maka ini dapat menyebabkan banyak permintaan ke node. Bisa jadi getTransactions (Set! Hash txs). Mungkin ada alternatif lain.
- Kolom internal ConsensusData diganti menjadi hash dari tx dan hash pendaftaran.
Simpan informasi build di biner #1472 (Alat Pemantauan, Peningkatan)
Untuk tujuan pemantauan, kami ingin memiliki nomor versi di dalam Agora. Kami memiliki dukungan untuk itu di statistik, tetapi kami [saat ini hanya menulis “HEAD”] ().
Tindakan yang disarankan:
- Tulis sedikit skrip D untuk melakukannya yang bersifat lintas platform;
- Gunakan skrip di preGenerateCommands;
- Skrip dapat menulis:
-D file seperti ini;
-File teks dengan hanya info yang dibaca menggunakan ekspresi impor (bukan deklarasi impor);
- Skrip harus menghindari pembuatan ulang aplikasi jika versinya belum berubah;
- Skrip harus memiliki variabel lingkungan yang dapat dibaca versinya (misalnya AGORA_VERSION);
- Jika tidak, skrip harus meminta git mendeskripsikan versi;
Buat interval penangkapan blok dapat dikonfigurasi #1478 (Blockchain, Peningkatan)
Sebelumnya, node Agora mencoba mengejar node lain dan meminta blok yang diketahui darinya setiap 2 detik. Ini terlalu rendah dan itu juga harus dapat dikonfigurasi.
Terapkan dukungan pelarangan koneksi masuk di vibe.d #202 (Komunikasi Jaringan, Fitur)
Kami perlu mencegah Agora mengalami satu bentuk serangan DDoS dari node lain, lebih khusus lagi kami memerlukan dukungan untuk melarang koneksi masuk dari alamat tertentu.
Definisi selesai untuk ini adalah sebagai berikut:
- Ketika permintaan mencapai server, itu dapat dibuat untuk ditolak sebelum pemrosesan / alokasi memori yang signifikan terjadi
- Fungsionalitasnya mendukung pelarangan secara dinamis
- Fungsionalitasnya mendukung pelepasan secara dinamis
- Fungsionalitas tersebut tidak menambah banyak biaya tambahan pada pemrosesan permintaan
Terapkan registri di sistem pengujian kami #99 (Infrastruktur, Peningkatan)
Sebelumnya, daftar node telah di-hardcode. Untuk membuat TestNet layak, kami perlu menerapkan registri.
Definisi selesai untuk ini adalah sebagai berikut:
- Siapkan DNS untuk itu;
- Deploy itu pada eu-001 dan komit konfigurasi ke ansible;
- Ganti konfigurasi node untuk menggunakannya;
- Pastikan bahwa validator (misalnya yang lokal) dapat terhubung dan mendaftar;
Pengembangan Berkelanjutan
- Menerapkan bukti konsep Eltoo #1267
- Menerapkan saluran pembayaran tidak langsung melalui HTLC #1419
- Agora akhirnya memblokir, kehabisan memori dan mati di bawah beban #1480
- Memotong validasi informasi #1444
- Tambahkan persyaratan untuk halaman “Transisi” ke dompet #93
- Dapatkan pengetahuan latar belakang tentang Kontrak Cerdas #1463 (Berkelanjutan)
- Kerentanan hashing dengan array #1331
- Buat dokumentasi Flash Layer untuk Whitepaper #1510
- Bagian jaringan dalam konfigurasi tidak boleh wajib #1536
- Github harus membuat gambar bpfk: agora buruh pelabuhan bukan Dockerhub #1513
Website(Kor): https://bosagora.io/ko
Website(Eng): https://bosagora.io
Telegram(Kor): https://t.me/bpf_korea
Telegram(Eng): https://t.me/bpf_eng
BOSAGORA Official Announcement: https://t.me/boa_announcement
Medium: medium.com/bosagora
Twitter: https://twitter.com/BOSAGORA1
Reddit: https://www.reddit.com/r/BOSAGORA_BOA/
Facebook: https://www.facebook.com/BOSAGORA/
Linkedin: https://www.linkedin.com/company/bpf-korea/
Youtube: http://bit.ly/2YFpd5r
Github: https://github.com/bpfkorea