29 poin oleh xguru 2025-12-12 | Belum ada komentar. | Bagikan ke WhatsApp
  • Format serialisasi biner zero-copy yang dikembangkan untuk menghilangkan batas antara parsing data dan serialisasi
  • Data dikodekan dalam struktur B-tree di dalam satu buffer kontinu, sehingga akses dan modifikasi field acak dapat dilakukan dalam waktu O(log n)
  • Format memori sekaligus menjadi format transmisi, sehingga dapat langsung dikirim dan diterima tanpa proses parsing atau serialisasi ulang terpisah
    • Segera setelah diterima, pencarian key, modifikasi nilai, hingga pengiriman dapat diproses hanya dengan penyalinan memori (memcpy)
  • Struktur tanpa skema (self-describing), sehingga dapat digunakan tanpa IDL atau definisi skema
    • Mendukung konversi dua arah dengan JSON, sehingga kompatibilitas dengan API dan dataset yang ada tetap terjaga
    • Saat debugging dan inspeksi pesan, dapat ditampilkan dalam bentuk JSON
  • Dirancang dengan fokus pada performa
    • Terdiri dari struktur B-tree yang ramah cache dan implementasi C minimal berukuran 9.3 kB
    • Hingga 120 kali lebih cepat dibanding pustaka JSON tercepat yang menggunakan SIMD, dan hingga 242 kali lebih cepat dibanding Google Flatbuffers
    • Menjadi salah satu format data tanpa skema tercepat di dunia
  • Karakteristik teknis
    • Mendukung baca/tulis zero-copy, dengan semua operasi I/O berkompleksitas O(log n)
    • Validasi pointer dan keamanan tipe saat runtime sudah terintegrasi
    • Tidak menggunakan malloc(), buffer disediakan langsung oleh pemanggil
    • Latensi yang dapat diprediksi dan penggunaan memori yang rendah
    • Berbasis C11 (sintaks GNU C), tanpa dependensi eksternal
    • Secara opsional menggunakan yyjson sebagai sub-dependensi untuk mendukung konversi JSON
  • Susunan API
    • Buffer API: berbasis buffer yang disediakan pengguna, memaksimalkan kontrol memori
    • Context API: mengabstraksikan pengelolaan memori, menyediakan antarmuka yang lebih sederhana
  • Perbandingan dan hasil benchmark
    • Menunjukkan kecepatan pemrosesan yang sangat unggul dibanding format teks seperti JSON, BSON, dan MessagePack
    • Menawarkan fleksibilitas dan kemudahan modifikasi yang lebih tinggi dibanding format biner seperti Cap’n Proto dan Flatbuffers
    • Mencatat performa papan atas pada data API Twitter nyata, Kostya JSON, benchmark serialisasi C++, dan lainnya
  • Desain keamanan
    • Mencakup pemeriksaan batas untuk perlindungan overflow, makro pointer berbasis generasi, batas rekursi, dan validasi tipe saat runtime
    • Cocok untuk menangani data input yang tidak tepercaya
  • Konteks penggunaan
    • Memaksimalkan efisiensi CPU pada messaging jaringan berperforma tinggi, pemrosesan data real-time, lingkungan embedded, dan lainnya
    • Dapat langsung diterapkan pada sistem berbasis antarmuka C
  • Lisensi dan ekstensibilitas
    • Dirilis dengan lisensi MIT sebagai implementasi C yang mandiri
    • Ke depan ada roadmap tambahan seperti language binding, benchmark kompresi, dan penulisan spesifikasi resmi
  • Asal-usul dan latar belakang
    • Berdasarkan konsep yang diusulkan dalam makalah Lite² yang dipublikasikan pada 2024, lalu diimplementasikan ulang secara independen sebagai proyek tersendiri
    • Nama Lite³ bermakna lebih ringan daripada Lite²

Belum ada komentar.

Belum ada komentar.