Computation Cost
Since Kaia aims to maintain 1-second block time, the execution time of transactions has to be managed. Here are three approaches to achieve that:
1. Giới hạn giới hạn gas của giao dịch (không có trong Kaia)
Limiting the gas limit of a transaction was not a feasible solution because the concept of the gas represents the current exchange value of the various resources in the blockchain platform such as computation, storage, network bandwidth, and so on. It is not suitable as a metric for the transaction execution time.
2. Giới hạn thời gian thực hiện giao dịch (không có trong Kaia)
Limiting the execution time of a transaction was not feasible either because the execution time can vary between nodes on the blockchain platform. Ví dụ, hãy xem xét trường hợp chúng ta giới hạn thời gian thực hiện của một giao dịch là 100 ms. If a node executes a transaction in 90 ms and another node executes it in 110 ms, the two nodes cannot reach a consensus. Hence, this solution is not appropriate.
3. Giới hạn thời gian thực hiện của một khối (có hiệu lực trong Kaia)
Kaia có giới hạn thời gian thực hiện khối không được xác thực. Do thời gian thực hiện không thể được thống nhất giữa các trình xác thực nên giới hạn này không phải tuân theo xác thực khối. Tuy nhiên, người đề xuất khối sẽ phải thực thi giới hạn thời gian thực hiện khối. Người đề xuất chỉ nên bao gồm các giao dịch cho đến khi quá trình thực hiện hoàn tất trong vòng 250 ms (BlockGenerationTimeLimit). Một ngoại lệ là giao dịch đầu tiên của khối, nhằm ngăn chặn một giao dịch dài hạn giả định bị từ chối mãi mãi. Nhưng giao dịch đầu tiên vẫn bị giới hạn bởi chi phí tính toán nên không thể mất quá nhiều thời gian. Một ngoại lệ khác là gói KIP-245.