가스는 수수료를 내는 것과 같다.
수수료는 우리가 보낸 트랜잭션의 유효성을 검증하고, 블록체인에 추가하려고 노력하는 채굴자에게 보상으로 돌아간다.
수수료 지불의 예:
1. 다른 계정으로 돈 보낼 때
2. 스마트 컨트랙 배포할 때
3. 함수에서 상태 변수에 변화를 줄 때
...
함수 실행중인 계정에서 가스비를 지불한다.
가스비도 ETH를 사용한다. 실제돈!!
그렇다면, 에더를 사용해서 그냥 내면 되는걸 왜 굳이 가스라는 단위를 만들었을까?
1. 에더는 화폐 변동성이 있다.
2. 가스 가격은 거의 변동하지 않는다.
가스 비용은 함수의 복잡성에 따라 결정된다.
연산에 소모되는 비용 == 옵코드(opcode)
네트워크 상태, 컴퓨팅 자원에 따라 비용이 결정된다.
메타마스크는 gas limit을 미리 보여준다.
gas price; 가스 가격은 이 트랜잭션을 끝내기 위해 채굴자에게 지불하는 임금과 같다. GWEI라는 단위를 통해 지급.
http://ethgasstation.info에 가면 현재 네트워크에서 트랜잭션을 처리하는 데 드는 가스가격의 평균값을 알 수 있다.
가스가격을 더 높게 책정해서 내면 채굴자들이 내 트랜잭션을 먼저 처리하겠지요
보통 평균가 근처로 내지만 급한 경우 더 올려서 낸다고 한다.
http://converter.murkin.me는 여러가지 단위로 변환시켜주는 사이트.
가스라는 개념이 생기고, 가스한도가 있는 이유는?
1. 무한 반복문 저지를 위해
2. 함수내의 실수로 인한 네트워크 성능 저하를 방지하기위해.
'study > BlockChain' 카테고리의 다른 글
부동산 dapp 미리보기 및 주의점 (2) | 2019.10.13 |
---|---|
컨트랙 최적화 (10) | 2019.10.12 |
값 타입 (2) | 2019.10.05 |
함수 타입 제어자 (2) | 2019.10.05 |
접근 제어자 (2) | 2019.10.05 |