Node.js 8 mang đến các cải tiến dành cho native module dependencies

Ngoc Huynh

Ngoài các cải tiến về buffer, runtime và URL parsing, bản phát hành mới còn cam kết duy trì các native module dependencies khắp các nâng cấp.

NodeJS là một nền tảng mã nguồn mở nổi tiếng được viết dựa trên JavaScript, đã phát hành phiên bản mới với những cải tiến liên quan đến runtime, buffer security, URL parsing, và duy trì các dependencies trên các native module của các cập nhật quan trọng của Node.js.

Phiên bản Node.js 8.0.0 giới thiệu Node.js API, hoặc N-API, nhưng vẫn còn đang trong giai đoạn thử nghiệm. N-API được thiết kế để loại trừ sự gián đoạn của các dependencies trên các native module mà thường xảy ra giữa các dòng phát hành.

Mặc dù các native module chỉ là một phần nhỏ của hệ sinh thái theo mô đun, nhưng có 30% các JavaScript module phụ thuộc gián tiếp vào các native module, được viết trong C hoặc C++ và được gắn chặt với Chrome V8 JavaScript engine. Mỗi lần Node.js có cập nhật quan trọng, thì các package maintainer đều phải cập nhật những dependencies này.

Bên cạnh đó, còn có sự nâng cấp dành cho V8 5.8 JavaScript runtime, cải thiện hiệu suất và cung cấp các developer-facing APIs (APIs trực diện nhà phát triển). Với V8 5.8 engine, Node thiết lập một sự chuyển tiếp sang trình biên dịch Turbofan và Ignition, cho phép tiêu thụ bộ nhớ thấp hơn và thời gian khởi động ứng dụng nhanh hơn. V8 5.8 engine có giao diện nhị phân ứng dụng (ABI – Application Binary Interface) tương hợp với V8 5.9 và bản phát hành V8 6.0 sắp tới. TurboFan và Ignition sẽ được mặc định với V8 5.9.

Đối với buffer, zero-filling buffer và một buffer mới sẽ được thêm vào mặc định. Tác dụng của zero-filling buffer là sẽ giúp ngăn chặn việc rò rỉ thông tin bảo mật. Nhưng điểm yếu của buffer này đó là sẽ gặp phải các vấn đề liên quan đến hiệu suất, tuy nhiên bạn có thể tránh được điều này bằng sử dụng buffer.allocUnsafe(). Các nhà phát triển nên sử dụng hàm này chỉ khi họ quan tâm đến các rủi ro và biết cách tránh các vấn đề này.

Với bản phát hành Node 8, WHATWG URL parser sẽ chuyển từ giai đoạn thử nghiệm sang giai đoạn được hỗ trợ đầy đủ. Việc cài đặt URL (URL implementation) và API trong WHATWG sẽ phù hợp với những gì hiện có trong các trình duyệt như Chrome, Firefox, Edge, và Safari, cho phép việc chia sẻ code khi sử dụng URLs khắp các môi trường khác nhau này.

Node 8 thay thế Node 7 ở dòng phát hành hiện tại và sẽ trở thành bản phát hành Long Term Support (Hỗ trợ dài hạn) vào tháng 10. Dòng LTS chú trọng đến tính ổn định và bảo mật và được đề xuất cho các deploy ở cấp công ty.

Chia sẻ bài viết ngay

Nguồn bài viết : http://www.infoworld.com