Khi đọc tài liệu chính thức của Dusk, có một câu mình đã đọc hai lần mới kịp hiểu ra: lớp thực thi của DuskEVM dùng kiến trúc OP Stack—sequencer chạy op-geth để thực thi các giao dịch EVM, batcher gom dữ liệu giao dịch thành blob và đăng lên DuskDS, sau đó proposer lại công bố các cam kết trạng thái, dẫn chiếu tới những batch đã được thực thi đó. Nói thẳng ra thì DuskEVM về bản chất là một Layer 2, còn DuskDS (lớp thanh toán L1 do chính Dusk vận hành) mới là nền tảng về khả năng khả dụng dữ liệu và quyết toán cuối cùng.
Lựa chọn kiến trúc này khá thông minh. Môi trường hợp đồng thông minh “nguyên bản” của Dusk là DuskVM, chạy trên bộ ảo WASM của Piecrust—một bộ ảo viết bằng Rust—hướng tới những nhà phát triển muốn dùng thẳng Rust/WASM, muốn sử dụng tài sản cấp độ giao thức và năng lực zero-knowledge; còn DuskEVM hướng tới các đội ngũ muốn dùng luôn toolchain Solidity có sẵn, không muốn phải học thứ gì mới. Đi hai hướng thay vì ép tất cả mọi người đổi ngôn ngữ. Vài phiên bản gần đây của Piecrust cũng đang bổ sung hỗ trợ memory64 và thay runtime nền từ wasmer sang wasmtime, đều là để mở đường cho trạng thái hợp đồng lớn hơn và hiệu năng thực thi cao hơn.
Điều đáng suy nghĩ thực sự là cấu trúc phí: giao dịch trên DuskEVM phải trả hai khoản tiền—một khoản là phí thực thi kiểu EIP-1559 ở L2, khoản còn lại là phí khả dụng dữ liệu cho việc đăng dữ liệu batch lên DuskDS. Điều này có nghĩa là thông lượng và chi phí thực tế của DuskEVM cuối cùng vẫn bị “cổ” bởi dung lượng khả dụng dữ liệu của L1 là DuskDS—L2 có nhanh đến đâu mà lớp quyết toán phía dưới bị nghẽn thì vẫn không đi lên được. Đây không khác bản chất so với đa số các blockchain công khai “L2 dựa vào Ethereum làm DA”, chỉ là đổi Ethereum thành L1 do Dusk tự vận hành.
Đối với các nhà phát triển chuẩn bị triển khai hợp đồng trên DuskEVM, chi tiết kiến trúc này không phải kiến thức nền không liên quan—nó quyết định trực tiếp trong mô hình chi phí Gas của bạn liệu phí DA có trở thành một phần chi phí lớn hơn phí thực thi hay không, nhất là với các ứng dụng tài chính tần suất cao và khối lượng dữ liệu lớn.
@Dusk $DUSK #dusk
Lựa chọn kiến trúc này khá thông minh. Môi trường hợp đồng thông minh “nguyên bản” của Dusk là DuskVM, chạy trên bộ ảo WASM của Piecrust—một bộ ảo viết bằng Rust—hướng tới những nhà phát triển muốn dùng thẳng Rust/WASM, muốn sử dụng tài sản cấp độ giao thức và năng lực zero-knowledge; còn DuskEVM hướng tới các đội ngũ muốn dùng luôn toolchain Solidity có sẵn, không muốn phải học thứ gì mới. Đi hai hướng thay vì ép tất cả mọi người đổi ngôn ngữ. Vài phiên bản gần đây của Piecrust cũng đang bổ sung hỗ trợ memory64 và thay runtime nền từ wasmer sang wasmtime, đều là để mở đường cho trạng thái hợp đồng lớn hơn và hiệu năng thực thi cao hơn.
Điều đáng suy nghĩ thực sự là cấu trúc phí: giao dịch trên DuskEVM phải trả hai khoản tiền—một khoản là phí thực thi kiểu EIP-1559 ở L2, khoản còn lại là phí khả dụng dữ liệu cho việc đăng dữ liệu batch lên DuskDS. Điều này có nghĩa là thông lượng và chi phí thực tế của DuskEVM cuối cùng vẫn bị “cổ” bởi dung lượng khả dụng dữ liệu của L1 là DuskDS—L2 có nhanh đến đâu mà lớp quyết toán phía dưới bị nghẽn thì vẫn không đi lên được. Đây không khác bản chất so với đa số các blockchain công khai “L2 dựa vào Ethereum làm DA”, chỉ là đổi Ethereum thành L1 do Dusk tự vận hành.
Đối với các nhà phát triển chuẩn bị triển khai hợp đồng trên DuskEVM, chi tiết kiến trúc này không phải kiến thức nền không liên quan—nó quyết định trực tiếp trong mô hình chi phí Gas của bạn liệu phí DA có trở thành một phần chi phí lớn hơn phí thực thi hay không, nhất là với các ứng dụng tài chính tần suất cao và khối lượng dữ liệu lớn.
@Dusk $DUSK #dusk