Tác giả: Fuelchina; Nguồn: Fuel Network
Với việc sử dụng mạng ngày càng tăng, Máy ảo Ethereum (EVM) dần bộc lộ những hạn chế về hiệu suất của nó. Hiện tại, Ethereum chỉ có thể xử lý khoảng 15-30 giao dịch mỗi giây, không đủ trong thời gian cao điểm, khiến phí giao dịch tăng cao và trải nghiệm người dùng bị ảnh hưởng. Ngoài ra, với sự gia tăng ngày càng nhiều ứng dụng và người dùng, dữ liệu trạng thái của Ethereum đã mở rộng đáng kể, khiến chi phí vận hành và độ khó bảo trì của các nút đầy đủ ngày càng tăng. Những vấn đề này hạn chế tiềm năng của Ethereum và gây khó khăn cho việc hỗ trợ các ứng dụng phi tập trung quy mô lớn.
Để giải quyết những vấn đề này, giải pháp Rollups dưới dạng Lớp 2 cung cấp một cách để cải thiện hiệu quả và giảm chi phí bằng cách di chuyển hầu hết công việc tính toán và lưu trữ được chuyển ra khỏi chuỗi để thực thi và sau đó kết quả được gửi đến chuỗi chính Ethereum, từ đó cải thiện đáng kể thông lượng giao dịch và giảm phí giao dịch. Bản tổng hợp được chia thành hai loại chính: Bản tổng hợp lạc quan và Bản tổng hợp ZK dựa vào giai đoạn thử thách để xác minh tính hợp lệ của các giao dịch, trong khi loại sau được xác minh trực tiếp thông qua bằng chứng không có kiến thức. Các giải pháp này hoạt động tốt về khả năng mở rộng, nhưng kết quả cuối cùng vẫn cần được xử lý và xác nhận trên chuỗi chính, vốn vẫn bị hạn chế bởi kiến trúc và thiết kế của EVM.
Khi số lượng giao dịch mà giao thức cơ bản có thể xử lý bị hạn chế, ngay cả khi tốc độ xử lý của EVM không cao, nó vẫn có thể đáp ứng nhu cầu. Tuy nhiên, Ethereum đang cải thiện đáng kể khả năng mở rộng của giao thức cơ bản thông qua các phương tiện kỹ thuật (chẳng hạn như giới thiệu EIP-4844 trong bản nâng cấp Cancun). Khi lớp cơ sở Ethereum có thể xử lý nhiều giao dịch hơn, tốc độ thực thi của EVM đã trở thành một nút thắt cổ chai mới. Do đó, việc nâng cao hiệu quả thực thi của EVM sẽ là chìa khóa để cải thiện hiệu suất của toàn bộ hệ thống trong tương lai.
Để giải quyết nút thắt cổ chai mới này, nhóm Fuel đã phát triển kiến trúc máy ảo FuelVM hiệu quả hơn. FuelVM là một máy ảo được thiết kế để xử lý song song và thực thi mô-đun hiệu quả. Nó triển khai xử lý song song thông qua mô hình UTXO, cải thiện đáng kể tốc độ xử lý giao dịch.
Giải mã những ưu điểm độc đáo của FuelVM
Fuel là lớp thực thi mô-đun được thiết kế cho Ethereum Rollups có thể hoạt động như một phần của một chuỗi hoặc như một môi trường thực thi độc lập, tách biệt với các lớp khác (chẳng hạn như lớp giải quyết, lớp đồng thuận và lớp sẵn có của dữ liệu) . FuelVM là máy ảo cốt lõi trong hệ thống Nhiên liệu, được thiết kế để có băng thông tính toán cao và xử lý song song. FuelVM triển khai xử lý song song bằng cách áp dụng mô hình UTXO, sử dụng danh sách truy cập để tránh xung đột giao dịch và giảm sự phụ thuộc vào hợp đồng thông minh thông qua hệ thống tài sản gốc được tích hợp sẵn.
Mô hình UTXO thực hiện xử lý song song: mô hình UTXO Bắt nguồn từ Bitcoin, trong mô hình này, tài sản được lưu trữ giữa các địa chỉ khác nhau dưới dạng biểu đồ chu kỳ có hướng (DAG). Mỗi giao dịch tiêu thụ đầu ra chưa được sử dụng để tạo đầu ra mới. Fuel sử dụng mô hình UTXO để thực hiện xử lý song song các giao dịch. Do mô hình UTXO chia trạng thái thành các phần tử độc lập nên mỗi giao dịch phải chỉ định rõ ràng UTXO nào sẽ được sử dụng để có thể thực hiện đồng thời nhiều giao dịch không xung đột. Ngoài ra, FuelVM còn giới thiệu các khái niệm về vị từ và tập lệnh để nâng cao tính hoàn thiện Turing của hợp đồng thông minh. Các vị từ xác định các điều kiện có thể sử dụng UTXO, trong khi tập lệnh là các chương trình được sử dụng để thực hiện nhiều lệnh gọi hợp đồng thông minh. Trạng thái trong mô hình UTXO là nguyên tử. Mỗi UTXO chỉ có thể được sử dụng một lần và UTXO mới sẽ được tạo sau khi sử dụng. Do đó, tập lệnh và vị từ không lưu trữ dữ liệu liên tục, làm giảm sự tăng trưởng của trạng thái. Điều này giúp giảm bớt vấn đề phình to trạng thái trên blockchain và giảm chi phí chạy các nút.
Danh sách truy cập tránh xung đột giữa các giao dịch song song: trong FuelVM, mỗi giao dịch A phải rõ ràng chỉ định UTXO nó sẽ truy cập. Thông tin được chỉ định này tạo thành danh sách truy cập. Thông qua danh sách truy cập, FuelVM có thể biết trước trạng thái mà mỗi giao dịch sẽ ảnh hưởng, từ đó các giao dịch không xung đột có thể được thực thi song song trên nhiều luồng CPU cùng lúc để tránh xung đột giữa các giao dịch.
Hệ thống tài sản gốc: FuelVM xử lý tài sản gốc trực tiếp ở cấp độ máy ảo. Mỗi nội dung gốc được xác định bởi một bộ opcode cụ thể có thể thực hiện các hoạt động tạo, chuyển giao và hủy tài sản mà không cần phải viết và triển khai hợp đồng thông minh cho từng nội dung. Cách tiếp cận này làm giảm số lượng và độ phức tạp của các cuộc gọi hợp đồng thông minh, từ đó giảm chi phí gas cho giao dịch. Điều này đặc biệt quan trọng đối với các kịch bản ứng dụng có chuyển giao tài sản thường xuyên. Ngoài ra, bằng cách giảm sự phụ thuộc vào các hợp đồng thông minh phức tạp, nguy cơ lỗ hổng hợp đồng thông minh tiềm ẩn cũng giảm đi.
Hỗ trợ việc trừu tượng hóa tài khoản: Việc trừu tượng hóa tài khoản cho phép các nhà phát triển xác định các chương trình xác minh giao dịch tùy chỉnh (chẳng hạn như như xác thực đa chữ ký, đa yếu tố, v.v.) mà không cần phải dựa vào các quy tắc xác minh đặt trước trong giao thức. Trong FuelVM, tính linh hoạt này đạt được thông qua các vị từ. Vị từ đóng vai trò là điều kiện xác thực có thể được lập trình để xác định xem có thể sử dụng UTXO hay không. Vì các vị từ không cần lưu trữ trạng thái trên chuỗi nên chúng chỉ được đánh giá khi giao dịch được xác minh, do đó, sự kết hợp giữa các vị từ và mô hình UTXO làm giảm sự phát triển của trạng thái trên chuỗi.
Thách thức của FuelVM: thử nghiệm kép từ công nghệ đến thị trường h2 >
Để tận dụng tối đa các tính năng kiến trúc của FuelVM, nhóm dự án Fuel đã phát triển ngôn ngữ Sway và chuỗi công cụ dành cho nhà phát triển Forc. Sway là ngôn ngữ lập trình mới lấy cảm hứng từ Rust và Solidity, được thiết kế dành riêng cho FuelVM, cung cấp các tính năng của các ngôn ngữ lập trình hiện đại như cấu trúc, kế thừa dựa trên thuộc tính và các kiểu chung. Chuỗi công cụ Forc cung cấp giải pháp tất cả trong một để phát triển, triển khai và thử nghiệm mã Sway, bao gồm trình quản lý gói, plugin VSCode, cơ sở hạ tầng thử nghiệm và trình khám phá khối. Vì FuelVM sử dụng ngôn ngữ lập trình mới nên đây là môi trường phát triển hoàn toàn mới dành cho các nhà phát triển, điều này có thể ảnh hưởng đến tỷ lệ áp dụng sớm của nó. Do đó, nhóm dự án Fuel cần xây dựng một cộng đồng nhà phát triển mạnh mẽ và năng động để hỗ trợ và thúc đẩy việc phổ biến công nghệ.
Ngoài ra, FuelVM không tương thích với EVM, điều đó có nghĩa là các ứng dụng EVM hiện tại không thể được di chuyển trực tiếp sang FuelVM. Điều này có thể hạn chế sự nhiệt tình của những người dùng và nhà phát triển ban đầu trong việc áp dụng FuelVM. Để vượt qua trở ngại này, dự án Fuel cần cung cấp các công cụ và tài nguyên di chuyển để giúp các nhà phát triển di chuyển các ứng dụng hiện có sang nền tảng FuelVM. Các công cụ và tài nguyên này có thể bao gồm các công cụ chuyển mã, lớp tương thích và hướng dẫn di chuyển chi tiết để giúp các nhà phát triển thực hiện chuyển đổi suôn sẻ sang nền tảng mới.
FuelVM cũng cần cạnh tranh giữa các giải pháp Rollups vốn đã tương đối hoàn thiện và chứng minh lợi thế kỹ thuật độc đáo cũng như giá trị thị trường của mình. Ví dụ: rủi ro lạm phát trạng thái và các cuộc tấn công hợp đồng thông minh thấp hơn, nhưng ngôn ngữ lập trình và kiến trúc máy ảo mới này cũng cần thời gian để xác minh hiệu suất và độ ổn định của nó.
Tầm nhìn tương lai: Thực thi song song đã trở thành xu hướng tất yếu
Khi ngày càng có nhiều DApp xuất hiện, mô hình thực thi đơn luồng truyền thống không còn có thể đáp ứng nhu cầu của các ứng dụng quy mô lớn. Vì vậy, việc khám phá khả năng thực thi song song đã trở thành xu hướng tất yếu trong phát triển công nghệ. Trong nửa đầu năm nay, việc thực thi song song đã trở thành chủ đề thảo luận sôi nổi và trở thành một hướng quan trọng trong việc phát triển công nghệ blockchain. Ngày càng có nhiều dự án nhận thấy tiềm năng của nó và tích cực tham gia vào nó. Bằng cách tận dụng tốt hơn sức mạnh tính toán của CPU đa lõi, việc thực thi song song có thể tăng đáng kể tốc độ xử lý giao dịch và hiệu suất hệ thống mà không làm mất đi tính bảo mật và tính nhất quán. Là một phương pháp thực thi song song đổi mới, FuelVM đạt được khả năng thực thi song song bằng cách kết hợp mô hình UTXO, từ đó cải thiện thông lượng và hiệu suất của mạng tổng thể. Tính năng này đặc biệt phù hợp với các ứng dụng yêu cầu giao dịch tần suất cao và độ trễ thấp, chẳng hạn như sàn giao dịch phái sinh, trò chơi toàn chuỗi, v.v. Đồng thời, bằng cách giảm sự phình to trạng thái và cải thiện hiệu quả sử dụng tài nguyên, FuelVM cung cấp một môi trường thực thi hiệu quả và có khả năng mở rộng hơn cho các ứng dụng phi tập trung.