Trong Ethereum, mọi hoạt động đều có chi phí gas liên quan. Một số chi phí điển hình bao gồm:
Điều quan trọng là phải hiểu những điều này vì nhiều kỹ thuật tối ưu hóa khí liên quan đến việc giao dịch các hoạt động đắt tiền hơn để lấy những hoạt động rẻ hơn.
Với Remix, việc phân biệt lượng khí tiêu thụ trong các hoạt động trong hợp đồng của chúng tôi trở nên đơn giản hơn nhiều.
Phân tích tĩnh: Điều hướng đến tab Analysis
trong Remix (được biểu thị bằng biểu tượng kính hiển vi). Công cụ mạnh mẽ này sẽ cung cấp thông tin chi tiết về những cạm bẫy tiềm ẩn và cơ hội tối ưu hóa trong mã của bạn.
Triển khai & Tương tác: Sau khi triển khai hợp đồng của bạn (như bạn đã làm trong Bài học 1), mỗi tương tác sẽ hiển thị ước tính gas. Khi bạn gọi một hàm, gas được sử dụng sẽ hiển thị ở khung bên phải phía dưới.
Ngăn chi tiết: Khi triển khai hoặc tương tác với một chức năng, hãy nhấp vào mũi tên xuống trong nhật ký giao dịch (dưới cùng bên phải). Thao tác này sẽ mở rộng nhật ký, hiển thị chi phí gas chi tiết cho giao dịch.
Hãy đánh giá một hợp đồng mẫu và các hoạt động của nó:
Độ vững chắc
// SPDX-Mã định danh giấy phép: GPL-3.0
độ rắn pragma ^0.8.9;
hợp đồng GasDemo {
uint256 public count;
bản đồ(địa chỉ => uint256) số dư công cộng;
hàm tăng() công khai {
count += 1;
}
hàm updateBalance(uint256 newBalance) công khai {
balances[msg.sender] = newBalance;
}
}
Triển khai hợp đồng GasDemo
trên Goerli Testnet thông qua Remix.
Tương tác với hàm increment
một vài lần.
Kiểm tra lượng gas được sử dụng trong chi tiết giao dịch.
Bây giờ, hãy tương tác với hàm updateBalance
, thiết lập các số dư khác nhau.
Một lần nữa, hãy kiểm tra lượng gas đã sử dụng.
Phản ánh:
Bạn vừa hiểu sâu hơn về sự phức tạp của gas trong hợp đồng thông minh Ethereum. Bằng cách thực hành với Remix, bạn có thể hình dung và nắm bắt được các hoạt động khác nhau tác động như thế nào đến tổng lượng gas của một giao dịch. Trong bài học tiếp theo, chúng ta sẽ đề cập đến các kỹ thuật tối ưu hóa, nơi bạn sẽ học cách làm cho hợp đồng của mình tiết kiệm gas hơn.
Hãy tò mò và tiếp tục thử nghiệm!
Trong Ethereum, mọi hoạt động đều có chi phí gas liên quan. Một số chi phí điển hình bao gồm:
Điều quan trọng là phải hiểu những điều này vì nhiều kỹ thuật tối ưu hóa khí liên quan đến việc giao dịch các hoạt động đắt tiền hơn để lấy những hoạt động rẻ hơn.
Với Remix, việc phân biệt lượng khí tiêu thụ trong các hoạt động trong hợp đồng của chúng tôi trở nên đơn giản hơn nhiều.
Phân tích tĩnh: Điều hướng đến tab Analysis
trong Remix (được biểu thị bằng biểu tượng kính hiển vi). Công cụ mạnh mẽ này sẽ cung cấp thông tin chi tiết về những cạm bẫy tiềm ẩn và cơ hội tối ưu hóa trong mã của bạn.
Triển khai & Tương tác: Sau khi triển khai hợp đồng của bạn (như bạn đã làm trong Bài học 1), mỗi tương tác sẽ hiển thị ước tính gas. Khi bạn gọi một hàm, gas được sử dụng sẽ hiển thị ở khung bên phải phía dưới.
Ngăn chi tiết: Khi triển khai hoặc tương tác với một chức năng, hãy nhấp vào mũi tên xuống trong nhật ký giao dịch (dưới cùng bên phải). Thao tác này sẽ mở rộng nhật ký, hiển thị chi phí gas chi tiết cho giao dịch.
Hãy đánh giá một hợp đồng mẫu và các hoạt động của nó:
Độ vững chắc
// SPDX-Mã định danh giấy phép: GPL-3.0
độ rắn pragma ^0.8.9;
hợp đồng GasDemo {
uint256 public count;
bản đồ(địa chỉ => uint256) số dư công cộng;
hàm tăng() công khai {
count += 1;
}
hàm updateBalance(uint256 newBalance) công khai {
balances[msg.sender] = newBalance;
}
}
Triển khai hợp đồng GasDemo
trên Goerli Testnet thông qua Remix.
Tương tác với hàm increment
một vài lần.
Kiểm tra lượng gas được sử dụng trong chi tiết giao dịch.
Bây giờ, hãy tương tác với hàm updateBalance
, thiết lập các số dư khác nhau.
Một lần nữa, hãy kiểm tra lượng gas đã sử dụng.
Phản ánh:
Bạn vừa hiểu sâu hơn về sự phức tạp của gas trong hợp đồng thông minh Ethereum. Bằng cách thực hành với Remix, bạn có thể hình dung và nắm bắt được các hoạt động khác nhau tác động như thế nào đến tổng lượng gas của một giao dịch. Trong bài học tiếp theo, chúng ta sẽ đề cập đến các kỹ thuật tối ưu hóa, nơi bạn sẽ học cách làm cho hợp đồng của mình tiết kiệm gas hơn.
Hãy tò mò và tiếp tục thử nghiệm!