wie man den Gaspreis und das Gaslimit des Smart Contracts kennt, wenn man den Vertrag mit web3j bereitstellt

Ich bin neu bei Smart Contracts und Ethereum. Ich verwende web3j, um Verträge im privaten Netzwerk bereitzustellen. Befolgen Sie dies als Leitfaden https://github.com/web3j/web3j

Im unteren Abschnitt des Codes fragt es nach dem Gaslimit und dem Gaspreis des Vertrags

Web3j web3 = Web3j.build(new HttpService());  // defaults to http://localhost:8545/
Credentials credentials = WalletUtils.loadCredentials("password", "/path/to/walletfile");

YourSmartContract contract = YourSmartContract.deploy(
        <web3j>, <credentials>,
        GAS_PRICE, GAS_LIMIT,
        <param1>, ..., <paramN>).send();  // constructor params

Wie soll ich das GAS_PRICEbestimmen GAS_LIMIT? Davor habe ich Ethereum Wallet verwendet, um einen Vertrag bereitzustellen, der automatisch den Gaspreis und das Limit schätzt. Ich bin ein Anfänger, ich weiß nicht, wie ich den Gaspreis und das Limit ohne Ethereum-Brieftasche schätzen kann?

Antworten (1)

Gas pricemuss von Ihnen nicht zu niedrig definiert werden, um von den Minern abgeholt zu werden. Es ist im Grunde ein Bieterkrieg zwischen Ihnen und den anderen Leuten, die wollen, dass ihre Transaktionen (einschließlich Vertragsanrufe und Vertragsbereitstellungen) abgebaut werden.

Gas limitkann ermittelt werden, indem derselbe Vertrag zuerst in einem Testnetzwerk oder in einem der Testnetzwerke bereitgestellt wird. Stellen Sie sicher, dass Sie etwas mehr verfügbares Gas hinzufügen (10%-20%), um sicherzustellen, dass Ihre Transaktion nicht fehlschlägt und Sie die Transaktionsgebühr nicht verlieren.