11L 이더리움 안전모 : 채굴 모드
6674 단어 ethereumblockchainhardhat
• Mempool behavior
• Mining transactions in FIFO order
• Removing and replacing transactions
• Using RPC methods
• hardhat Tutorials , hardhat 教程
• Contact 联系方式
• 소개하다
Hardhat Network는 각 거래를 수신하는 즉시 블록을 자동 채굴하도록 구성하거나 가능한 한 많은 보류 중인 거래를 통합하여 새 블록을 주기적으로 채굴하는 간격 채굴을 위해 구성할 수 있습니다.
이러한 모드 중 하나를 사용하거나 둘 다 사용할 수 있습니다. 기본적으로 자동 모드만 활성화되어 있습니다.
자동 채굴이 비활성화되면 전송된 모든 트랜잭션이 미래에 채굴될 수 있는 모든 트랜잭션을 포함하는 mempool에 추가됩니다. 기본적으로 Hardhat Network의 mempool은 Geth와 동일한 규칙을 따릅니다. 이것은 무엇보다도 트랜잭션이 채굴자에게 지불된 수수료(및 도착 시간)에 따라 우선 순위가 지정되고 유효하지 않은 트랜잭션이 삭제됨을 의미합니다. 기본 mempool 동작 외에도 alternative FIFO behavior is also available .
자동 채굴이 비활성화된 경우 보류 중인 트랜잭션은 eth_getBlockByNumber
RPC 방법(블록 번호 인수로 "pending"
사용)을 통해 쿼리할 수 있으며 hardhat_dropTransaction
RPC 방법을 사용하여 제거할 수 있으며 새 트랜잭션을 제출하여 교체할 수 있습니다. nonce는 같지만 채굴자에게 지불하는 수수료가 10% 이상 증가한 트랜잭션입니다.
채굴 모드가 활성화되지 않은 경우 새 블록이 채굴되지 않지만 evm_mine
RPC 방법을 사용하여 새 블록을 수동으로 채굴할 수 있습니다. 이렇게 하면 보류 중인 트랜잭션을 가능한 한 많이 포함하는 새 블록이 생성됩니다.
• 멤풀 동작
자동 채굴이 비활성화되면 전송된 모든 트랜잭션이 미래에 채굴될 수 있는 모든 트랜잭션을 포함하는 mempool에 추가됩니다. 기본적으로 Hardhat Network의 mempool은 Geth와 동일한 규칙을 따릅니다. 이것은 무엇보다도 다음을 의미합니다.
자동 채굴이 비활성화되면 전송된 모든 트랜잭션이 미래에 채굴될 수 있는 모든 트랜잭션을 포함하는 mempool에 추가됩니다. 기본적으로 Hardhat Network의 mempool은 Geth와 동일한 규칙을 따릅니다. 이것은 무엇보다도 다음을 의미합니다.
"pending"블록 태그를 사용하여 다음 블록에 포함될 보류 중인 트랜잭션 목록을 얻을 수 있습니다.
const pendingBlock = await network.provider.send("eth_getBlockByNumber", [
"pending",
false,
]);
• FIFO 순서의 마이닝 트랜잭션
Hardhat Network의 mempool 주문 거래 방식은 사용자 정의할 수 있습니다. 기본적으로 Geth의 규칙에 따라 우선 순위가 지정되지만 대신 FIFO 동작을 활성화하여 트랜잭션이 전송된 순서대로 블록에 추가되도록 하고 다른 네트워크에서 블록을 재생성하는 데 유용합니다.
다음을 사용하여 구성에서 FIFO 동작을 활성화할 수 있습니다.
networks: {
hardhat: {
mining: {
mempool: {
order: "fifo"
}
}
}
}
• 트랜잭션 제거 및 교체
네트워크 도우미를 사용하여 mempool의 트랜잭션을 제거할 수 있습니다.
const txHash = "0xabc...";
await helpers.dropTransaction(txHash);
이미 mempool에 있는 것과 동일한 nonce를 사용하지만 가스 가격이 더 높은 새 트랜잭션을 전송하여 트랜잭션을 교체할 수도 있습니다. Geth에서와 같이 이것이 작동하려면 새로운 가스/수수료 가격이 현재 거래의 가스 가격보다 최소 10% 높아야 합니다.
• RPC 방법 사용
evm_setAutomine
및 evm_setIntervalMining
두 가지 RPC 방법을 사용하여 런타임 시 마이닝 동작을 변경할 수 있습니다. 예를 들어 자동 마이닝을 비활성화하려면 다음을 수행하십시오.
await network.provider.send("evm_setAutomine", [false]);
간격 마이닝을 활성화하려면:
await network.provider.send("evm_setIntervalMining", [5000]);
• hardhat 자습서 , hardhat 教程
CN 중국어 Github hardhat 教程 : github.com/565ee/hardhat_CN
CN 중국어 CSDNhardhat 教程 : blog.csdn.net/wx468116118
EN 英文 Github hardhat Tutorials : github.com/565ee/hardhat_EN
• 연락처 联系方式
홈페이지 : 565.ee
GitHub : github.com/565ee
이메일 : [email protected]
페이스북 : facebook.com/565.ee
트위터 :
텔레그램 : t.me/ee_565
Reference
이 문제에 관하여(11L 이더리움 안전모 : 채굴 모드), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://dev.to/565ee/11l-ethereum-hardhat-mining-modes-3nae
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
networks: {
hardhat: {
mining: {
mempool: {
order: "fifo"
}
}
}
}
네트워크 도우미를 사용하여 mempool의 트랜잭션을 제거할 수 있습니다.
const txHash = "0xabc...";
await helpers.dropTransaction(txHash);
이미 mempool에 있는 것과 동일한 nonce를 사용하지만 가스 가격이 더 높은 새 트랜잭션을 전송하여 트랜잭션을 교체할 수도 있습니다. Geth에서와 같이 이것이 작동하려면 새로운 가스/수수료 가격이 현재 거래의 가스 가격보다 최소 10% 높아야 합니다.
• RPC 방법 사용
evm_setAutomine
및 evm_setIntervalMining
두 가지 RPC 방법을 사용하여 런타임 시 마이닝 동작을 변경할 수 있습니다. 예를 들어 자동 마이닝을 비활성화하려면 다음을 수행하십시오.
await network.provider.send("evm_setAutomine", [false]);
간격 마이닝을 활성화하려면:
await network.provider.send("evm_setIntervalMining", [5000]);
• hardhat 자습서 , hardhat 教程
CN 중국어 Github hardhat 教程 : github.com/565ee/hardhat_CN
CN 중국어 CSDNhardhat 教程 : blog.csdn.net/wx468116118
EN 英文 Github hardhat Tutorials : github.com/565ee/hardhat_EN
• 연락처 联系方式
홈페이지 : 565.ee
GitHub : github.com/565ee
이메일 : [email protected]
페이스북 : facebook.com/565.ee
트위터 :
텔레그램 : t.me/ee_565
Reference
이 문제에 관하여(11L 이더리움 안전모 : 채굴 모드), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://dev.to/565ee/11l-ethereum-hardhat-mining-modes-3nae
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
await network.provider.send("evm_setAutomine", [false]);
await network.provider.send("evm_setIntervalMining", [5000]);
CN 중국어 Github hardhat 教程 : github.com/565ee/hardhat_CN
CN 중국어 CSDNhardhat 教程 : blog.csdn.net/wx468116118
EN 英文 Github hardhat Tutorials : github.com/565ee/hardhat_EN
• 연락처 联系方式
홈페이지 : 565.ee
GitHub : github.com/565ee
이메일 : [email protected]
페이스북 : facebook.com/565.ee
트위터 :
텔레그램 : t.me/ee_565
Reference
이 문제에 관하여(11L 이더리움 안전모 : 채굴 모드), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://dev.to/565ee/11l-ethereum-hardhat-mining-modes-3nae
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여(11L 이더리움 안전모 : 채굴 모드), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/565ee/11l-ethereum-hardhat-mining-modes-3nae텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)