This web page requires JavaScript to be enabled.

JavaScript is an object-oriented computer programming language commonly used to create interactive effects within web browsers.

How to enable JavaScript?

Web Assembly (Wasm) và những triển vọng

Blog January 4, 2023 0

Ngày 5/12/2019, Wasm đã được W3C thông báo Wasm là tiêu chuẩn chính thức cho web, một ngôn ngữ mạnh mẽ tiếp theo cho web.

Wasm là hợp ngữ, high-level languages like C/C++/Rust, định nghĩa "portable binary-code" và đi kèm text format tương ứng như các interfaces để các chương trình giao tiếp với host environment. Mục tiêu chính của Wasm là giúp các applications đạt hiệu năng cao trên môi trường Web. NHƯNG… Wasm sẽ không dùng để xây dựng các chức năng đặc thù của Web, vì thế nó cũng có thể được sử dụng tốt ở các môi trường khác.

Vì Wasm có thể thực thi "binary-code" được biên dịch trước đó. Vì thế nhiều ngôn ngữ lập trình hỗ trợ compile ra Wasm. Theo wikipedia, hiện có khoảng 40 ngôn ngữ có thể làm được việc này.

Wasm không sinh ra để thay thế JS trên web browser, mà nó giúp JS xử lý được những task vụ nặng về tính toán (cryptography, processing media files, game,…) Trên môi trường Web, vẫn cần JS để làm các chức năng đặc thù của web như các action, event, xử lý DOM,…

Với sự phát triển mạnh mẽ về các ứng dụng cần nhiều tài nguyên xử lý nặng như LiveStream, xử lý media files, E2E Encryption, kèm theo đó là decentralize applications… Wasm có thể là công cụ rất đắt lực trong tương lai. Các hệ thống lớn có thể không cần phải gánh vác quá nhiều tài nguyên trên các hệ thống server tập trung.

Wasm hiện cũng còn tồn tại các giới hạn:

  1. Wasm không thao tác trực tiếp với DOM được mà vẫn phải thông qua JS. => Như vậy hiệu năng website về xử lý DOM là không đổi dù có Wasm. Với Rust, chúng ta có thể dùng các proxy như web_sys hoặc stdweb.
  2. Không có Garbage Collection (mặc dù đã có những kế hoạch để giải quyết việc này).
  3. Vẫn còn một số cân nhắc về tính bảo mật ( Spectre và Meltdown). Thậm chí kẻ gian có thể lợi dụng Wasm để vận hành thuật toán đào coin.

Nam Le
lequocnam



0 responds

Leave a Reply

Your email address will not be published. Required fields are marked *

This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.

The reCAPTCHA verification period has expired. Please reload the page.