Artikel
Apa itu pemrosesan client-side?
Sebagian besar alat file bekerja dengan mengirimkan dokumen Anda ke komputer jarak jauh yang melakukan pekerjaan berat lalu mengirimkan hasilnya kembali. Pemrosesan client-side membalik itu: browser Anda sendiri yang bekerja, dan file tidak pernah meninggalkan perangkat Anda.
Dua cara kerja alat: di mesin Anda atau di mesin mereka
Dengan pemrosesan sisi server, mengunggah file sedikit seperti menitipkan cucian: Anda menyerahkannya, mesin jarak jauh menanganinya, dan Anda mengambil hasilnya nanti. Pemrosesan client-side lebih seperti mencuci pakaian di rumah sendiri. Alat berjalan di dalam tab browser Anda, membaca file dari memori, memprosesnya, dan memberikan hasilnya kepada Anda, semuanya tanpa file menyentuh koneksi jaringan mana pun. Situs web hanya perlu mengirimkan kode pemrosesan sekali. Setelah itu, semuanya berjalan sepenuhnya di pihak Anda.
Apa yang dibawa WebAssembly ke browser
Selama bertahun-tahun, browser hanya bisa menjalankan JavaScript, yang baik untuk antarmuka tetapi terlalu lambat untuk tugas seperti mengkodekan ulang video atau menerapkan kompresi pada gambar besar. WebAssembly (biasa disingkat WASM) mengubah itu. Ini adalah format biner ringkas yang dapat dieksekusi oleh browser dengan kecepatan mendekati native, sehingga kode yang awalnya ditulis dalam C atau C++ dapat dikompilasi ke WASM dan dijalankan di dalam tab browser tanpa plugin apa pun. Codec dan pustaka kompresi yang sama yang mendukung perangkat lunak desktop kini berjalan langsung di halaman. JavaScript dan WebAssembly bekerja bersama: JavaScript menangani antarmuka dan orkestrasi, sementara WASM menangani komputasi berat.
Apa yang sebenarnya terjadi selama pemrosesan
Saat Anda menjatuhkan file ke alat client-side, halaman memuat mesin pemrosesan kecil (sering berupa modul WASM) jika belum ada, lalu meneruskan file Anda ke sana melalui JavaScript. Pemrosesan sebenarnya biasanya berjalan di utas latar belakang yang disebut Web Worker, yang menjaga antarmuka browser tetap responsif selama pekerjaan berlangsung. Anda bisa membuka tab Network browser kapan saja selama proses ini, dan tidak ada permintaan yang membawa file Anda yang akan muncul. Hasilnya dirakit di memori dan ditawarkan kepada Anda sebagai unduhan.
Pertukaran jujur yang perlu Anda ketahui
Pertama kali Anda menggunakan alat yang mengandalkan mesin WASM besar, browser mengunduh mesin tersebut dan menyimpannya di cache. Penggunaan berikutnya melewati unduhan dan dapat bekerja sepenuhnya secara luring. Karena pemrosesan berjalan di perangkat Anda, file yang sangat besar membutuhkan waktu sesuai dengan kemampuan CPU dan memori yang tersedia, dan pusat data akan menyelesaikan beberapa tugas berat lebih cepat. Yang Anda dapatkan sebagai gantinya bersifat nyata: file Anda tidak pernah dikirimkan, tidak ada waktu tunggu unggah pada koneksi lambat, dan alat tetap bekerja tanpa internet setelah pemuatan pertama itu.
Alat dalam artikel ini
- Kompres gambar Kurangi ukuran berkas gambar tanpa mengunggah. Slider kualitas atau ukuran target dalam KB. Batch didukung.
- Kompres video Kurangi ukuran berkas video melalui re-enkode H.264 di browser. Tanpa unggah, tanpa server.
- Gabungkan berkas PDF Gabungkan beberapa berkas PDF menjadi satu, langsung di browser Anda.
Pertanyaan yang sering diajukan
Apakah pemrosesan client-side secara otomatis berarti data saya bersifat privat?
Client-side berarti file tidak dikirim ke server berdasarkan desainnya, itulah yang membuat privasi itu mungkin. Anda bisa mengonfirmasinya sendiri dengan membuka tab Network di alat pengembang browser Anda sambil memproses file: tidak ada permintaan keluar yang seharusnya membawa data file Anda. Meski begitu, bijaksana untuk memeriksa bahwa sebuah alat benar-benar berperilaku seperti ini daripada sekadar mempercayai labelnya.
Mengapa penggunaan pertama sebuah alat kadang lebih lambat?
Browser perlu mengunduh mesin pemrosesan (modul WASM) pertama kali Anda menggunakannya, yang bisa memakan beberapa detik tergantung ukurannya dan kecepatan koneksi Anda. Setelah itu, mesin disimpan di cache secara lokal, sehingga sesi berikutnya langsung dimulai dan alat bekerja secara luring.