Rumah > hujung hadapan web > tutorial js > Assassin ⚡️ - Sumber terbuka, pangkalan data percuma untuk membunuh halaman web yang perlahan

Assassin ⚡️ - Sumber terbuka, pangkalan data percuma untuk membunuh halaman web yang perlahan

DDD
Lepaskan: 2025-01-06 03:24:48
asal
798 orang telah melayarinya

Assassin ⚡️ - bunuh halaman web yang perlahan

Assassin berfungsi untuk membunuh transaksi pangkalan data yang menyekat UI.

Operasi pangkalan data boleh menjadi perlahan, tetapi tiada pangkalan data sedia ada menyelesaikan masalah ini dengan cara yang jelas: penyumberan luar tugas sukar kepada pekerja web.

Assassin ⚡️ - An open source, free database for killing slow webpages

Saya ingin membuat pangkalan data iaitu:

  • Sumber terbuka
  • Responsif
  • Terpencar
  • Dioptimumkan untuk pekerja web
  • Direka untuk penyemakan imbas peribadi

Itulah sebabnya saya mencipta pangkalan data saya sendiri dengan JavaScript.

ciri ?

? Ringan : Dihantar dengan kurang daripada 100 baris kod sisi pelanggan.

⚖️ Terpencar : Pangkalan data anda tidak mempunyai titik kegagalan tunggal. Jika pelayan rosak, data anda mudah diperoleh.

? Berfungsi dalam penyemakan imbas peribadi : Saya menyelidik pangkalan data seperti LevelDB, PouchDB dan Gun, yang bergantung pada IndexedDB untuk storan sebelah pelanggan. Saya mahu pangkalan data ini berkesan, tetapi saya akhirnya mencipta pangkalan data ini sebahagiannya kerana IndexedDB dilumpuhkan dalam penyemakan imbas peribadi, yang bermaksud tiada pangkalan data ini berfungsi untuk saya.

Kaedah:

  • killer.connect(url) - Sambung ke pelayan.
  • killer.create(key,value) - Tambahkan entri pada pangkalan data.
  • killer.update(key,new value) - Kemas kini nilai kunci dalam pangkalan data.
  • killer.delete(key) - Padamkan entri dalam pangkalan data.
  • Baca pangkalan data - Di dalam pekerja web atau utas utama, anda boleh mengakses pangkalan data melalui pembolehubah yang dipanggil pangkalan data.

Seni bina:

  • Model Data : Assassin ialah kedai kunci/nilai yang menyokong pemetaan kunci kepada nilai yang sepadan.
  • Seni Bina Sistem : Protokol DAT mengedar dan mengehoskan data antara banyak komputer, jadi tiada satu lokasi di mana data disimpan. Assassin bergantung pada protokol DAT untuk kegigihan data. Metadata pasangan nilai kunci disimpan dalam struktur percubaan teragih.
  • Tahap Pengasingan : Tahap pengasingan ditentukan oleh pengguna akhir pangkalan data. Assassin direka untuk mempunyai tahap pengasingan yang rendah.
  • Model Storan : Assassin menghantar data ke pelayan, yang kemudiannya menyimpan metadata dalam sistem fail yang diedarkan Hyperdrive, yang dibina pada protokol DAT. Data itu sendiri diedarkan dan dihoskan antara berbilang rakan sebaya.
  • Sangat Tersedia : Assassin sangat tersedia dan akhirnya konsisten. Assassin sentiasa menyimpan suntingan terakhir yang dibuat ke pangkalan data apabila konflik timbul. CRDT ini mungkin berubah kemudian.

Mengapa ia dipanggil Assassin?

  • Tapak web peribadi saya pada masa ini menggunakan pangkalan data Gun.
  • Senjata mempunyai banyak ciri yang saya suka dan pengasasnya cukup bagus.
  • Senjata berhenti bekerja untuk saya.
  • RAD penyesuai storan Gun bergantung pada IndexedDB, yang dilumpuhkan dalam penyemakan imbas peribadi.
  • Senjata menyegerakkan data peer to peer melalui WebRTC, yang tidak berfungsi pada pekerja web.
  • Assassin adalah sejenis (serius, sangat sedikit) seperti Gun tetapi untuk pekerja web.
  • Pekerja senjata api = Assassin ?

Dibina dengan ?

  • Hyperdrive - Terima kasih kerana membina lapisan abstraksi di atas protokol DAT!
  • HTML - Untuk mencipta demo web
  • CSS - Untuk menggayakan demo web
  • JavaScript - Untuk logik
  • Node.js - Untuk menyampaikan logik

Pastikan anda berkongsi pendapat anda tentang:

  • repositori GitHub Assassin
  • pelayan Gitter

Dan jika anda benar-benar ingin membantu menjadikan Assassin lebih baik, sumbangkan kepada repo GitHub!

Assassin ialah sumber terbuka, dan akan sentiasa begitu.

Sokong saya di:

  • Ko-Fi

Bintangkan repo di GitHub, Tweet dan kongsi di kalangan rakan, pasukan dan kenalan anda!

Atas ialah kandungan terperinci Assassin ⚡️ - Sumber terbuka, pangkalan data percuma untuk membunuh halaman web yang perlahan. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:dev.to
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan