Node.js v0.12.0 (Stable) Telah Rilis!

Ridwan Fajar 22 Februari 2015

Node.js v0.12.0 (Stable) Telah Rilis!

Pada tanggal 6 Februari 2015 tepatnya pukul 22:03 UTC, Node.js v0.12.0 telah dirilis. Perubahan dari v0.10 ke v0.12 telah melibatkan banyak kontributor hingga hal ini tercapai, perubahan yang terjadi pada pembaharuan API akan membutuhkan pembaharuan beberapa dependency. Berikut ini adalah sekilas pembaharuan yang terdapat di v0.12.0:

  • Streams 3
    • Implementasi stream sekarang bekerja sebagaimana seharusnya. Pada dasarnya hanya akan ada ada stream yang mengalir atau tidak
    • Sekarang stream mendukung penggunaan mekanisme cork atau uncork untuk mencegah flushing pada penulisan kepada sistem, jika aplikasi akan melakukan penulisan banyak baris. Terdapat pula implicit uncork yang muncul ketika Anda mengakhiri writable stream
  • HTTP
    • maxSockets tidak lagi hanya dibatasi sampai 5. Secara default sekarang diatur hingga Infinity oleh developer dan sistem operasi mengendalikan seberapa banyak koneksi simultan yang dapat dibuka oleh aplikasi
    • developer juga sekarang dapat secara eksplisit melakukan flushHeaders untuk menentukan waktu first byte dalam keadaan rendah dan proxied connections tetap dibuka
    • Proper KeepAlive sudah mendukung socket yang akan tetap terbuka sampai waktu habis dari waktu yang ditentukan, ditutup dari remote side, atau proses telah keluar. Developer tidak lagi harus melakukan request agar socket tetap terbuka, atau menggunakan modul alternatif untuk mendapatkan dukungan tersebut
  • Cluster
    • Sekarang cluster mempunyai dua mode operasi, mode default terbaru adalah mekanisme distribusi round robin dimana master menerima koneksi baru dan mendistribusikannya ke worker yang Anda ciptakan. Jika Anda mau, Anda masih dapat mengembalikannya ke mode lama dimana worker Anda bertanggung jawab dalam menerima koneksi
  • TLS
    • Node.js versi terbaru memiliki mekanisme TLSWrap tersembunyi, hal ini menghilangkan sedikit hops back and forth antara Javascript dan implementasi C++
    • Menambahkan API untuk asynchronous SNI callbacks, OCSP stapling, dan penyimpanan event
  • Buffer
    • Node.js versi terbaru menggunakan mekanisme yang lebih akurat dalam alokasi memori untuk buffers, yang artinya Anda akan melihat overhead dan impact yang lebih kecil ketika menggunakan potongan buffer yang lebih kecil. Hal ini mengurangi penggunaan tekanan memori di dalam sistem, yang membuat GC berjalan lebih cepat, Node.js bekerja lebih kecil di CPU, dan menurungkan latency dari aplikasi Anda
  • child_process
    • spawnSync/execSync telah ditambahkan untuk menfasilitasi synchronous child process, memperingatkan proses Node aplikasi Anda, tidak akan membuat sebuah progres kecuali menunggu child untuk berhenti
  • Crypto
    • Menambahkan API untuk loading custom engines dalam penggunaan terkompilasi di OpenSSL
    • Dukungan API lebih banyak untuk pass phrases
    • Menambahkan API untuk kunci publik/privat enkripsi/dekripsi RSA
  • VM
    • Sekarang modul ini berbasis modul Contextify, yang membagikan nilai dari sandbox untuk mencegah perubahan yang hilang di dalam eksekusi dari kemunculan di parent context
  • mulai mendukung ECMAScript Internationalization API 1.0 (ECMA-402)
    • Secara default, binari Node.js v0.12.0 dikemas dengan dukungan ECMA-402, tapi hanya untuk Bahasa Inggris saja. Dalam hal ini, ECMA-402 API bekerja sesuai harapan Anda, tapi hanya untuk Bahasa Inggris saja. Untuk menyertakan bahasa lain, Anda dapat memeriksanya di Node.js Wiki
Versi ini telah lolos uji dengan berbagai skenario yang dicoba. Untuk daftar lengkap perubahan yang ada di v0.12.0, silahkan kunjungi selengkapnya di Node.js Wiki.

(rfs/nodejs)