Pada 14 Oktober 2026 tim Node.js merilis Node.js 24.22.0 (LTS) dan Node.js 26.12.0 (Current). Node 24 dengan nama rilis "Krypton" adalah jalur Long-Term Support yang dipakai untuk produksi, sedangkan Node 26 masih di jalur Current. Kabar baiknya, versi LTS kali ini membawa beberapa utilitas yang selama ini kita pasang lewat paket pihak ketiga, mulai dari debounce, throttle, sampai pembacaan sertifikat .p12. Artinya aplikasi Node.js kita bisa lebih ramping tanpa menambah dependensi.
Node 24 LTS: jalur yang aman untuk produksi
Menurut halaman rilis resmi Node.js, Node 24 (Krypton) berstatus LTS dan menjadi versi yang direkomendasikan untuk server produksi, sementara Node 26 masih Current sehingga lebih cocok untuk uji coba. Beberapa versi lama sudah berhenti didukung: Node 20 (Iron) berakhir masa dukungannya pada Maret 2026, dan Node 22 (Jod) kini berada di fase Maintenance LTS. Mulai Node.js 27, siklus rilis berubah menjadi tahunan dan setiap versi mayor naik ke status LTS setelah fase Current. Bagi tim pengelola aplikasi ini sinyal jelas: pindahkan proyek ke Node 24 LTS sekarang agar tidak kaget saat dukungan versi lama dipangkas.
1. util.debounce(): pengganti lodash.debounce
Fungsi util.debounce(fn, wait) menunda pemanggilan fn sampai tidak ada panggilan baru selama wait milidetik. Cocok untuk kotak pencarian, autosave, atau validasi formulir. Nilai baliknya berupa Promise, dan fungsi hasilnya punya cancel(), flush(), serta properti pending.
import { debounce } from 'node:util';
const cari = debounce(async (kata) => {
return await fetch('/api/cari?q=' + kata);
}, 300);
cari('majalengka'); // hanya panggilan terakhir yang dieksekusi
2. util.throttle(): batasi jumlah panggilan per interval
Kalau debounce menunggu jeda, util.throttle(fn, limit, interval) membatasi berapa kali fungsi boleh dijalankan dalam satu interval. Panggilan berlebih diantre secara default, atau langsung ditolak bila memakai opsi overflow: 'drop'. Panggilan yang ditolak menghasilkan error ERR_THROTTLED.
import { throttle } from 'node:util';
const kirimLog = throttle(async (data) => {
await fetch('/api/log', { method: 'POST', body: JSON.stringify(data) });
}, 10, 1000); // maksimal 10 panggilan per detik
Pola ini berguna saat aplikasi memanggil API pihak ketiga yang punya batas kuota, misalnya layanan pesan WhatsApp atau payment gateway.
3. crypto.parsePKCS12(): baca sertifikat .p12 langsung dari modul inti
Fitur ini relevan untuk aplikasi layanan publik dan integrasi tanda tangan digital. crypto.parsePKCS12() membaca bundel PKCS#12 (file .p12 atau .pfx) beserta passphrase, lalu mengembalikan privateKey, certificate, dan additionalCertificates.
import { parsePKCS12 } from 'node:crypto';
import { readFileSync } from 'node:fs';
const { privateKey, certificate } = parsePKCS12(
readFileSync('bundle.p12'),
{ passphrase: 'rahasia' },
);
console.log(certificate.subject);
Sebelumnya pekerjaan ini butuh paket tambahan seperti node-forge. Sekarang cukup modul node:crypto.
4. node:sqlite dan peningkatan modul kripto lain
statement.close()padanode:sqliteuntuk menutup prepared statement secara eksplisit, plus dukunganSymbol.disposeagar bisa dipakai di blokusing.- Mode cipher SIV dan GCM-SIV kini tersedia di API Cipher/Decipher.
- API MAC generik, serta penemuan cipher dan hash langsung dari OpenSSL provider.
net.BoundSocketbisa dikirim ke worker thread dan proses anak, berguna untuk beberapa proses yang berbagi port yang sama.util.markPromiseAsHandled()untuk menandai promise yang memang sengaja tidak ditangani, supaya log server tidak dipenuhi peringatan unhandledRejection.
Cara upgrade di server produksi
- Cek versi yang berjalan sekarang:
node -vdannpm -v. - Bila memakai nvm:
nvm install 24 && nvm alias default 24. - Pasang ulang dependensi secara bersih dengan
npm cisetelah menghapus folder node_modules. - Jalankan test suite dan uji aplikasi di staging dulu, baru naikkan ke produksi.
- Kunci proyek di jalur LTS, dan catat tanggal akhir dukungan Node 22 agar migrasi berikutnya tidak mepet.
Sumber: Node.js 24.22.0 (LTS), Node.js Releases, Dokumentasi node:util, Dokumentasi node:crypto.
