Strona 1 z 1

Kalkulacja kosztów transakcji w Ethereum

: środa, 15 maja 2019, 22:40
autor: rav3n_pl
Ponieważ okresowo pojawiają się wątki dotyczące problemów z transakcjami z ETH postanowiłem napisać po ludzku jak wygląda opłata transakcyjna w Ethereum.
Mam nadzieję, że się przyda.

Tym razem Rafał prostuje Ethereum :P

Najpierw mała definicja, czym jest mityczny "gas".
Gas jest ilością mocy obliczeniowej (cykli procesora) jakie muszą być wykonane przez EVM (Etehreum Virtual Machine) aby wykonać daną transakcję. Każda operacja (wysłanie ETH, dodawanie, mnożenie, zapis danych w pamieci, odczyt tych danych itd) ma określoną "wagę" - czyli właśnie ilość cykli EVM. Ponieważ wykonanie kontraktu musi być niezależnie powtórzone na każdym pełnym węźle ETH, istnieje limit cykli EVM na blok jaki mogą generować wszystkie transakcje dołączane do bloku (block gas limit). Może się więc zdarzyć tak, że naszego "uber-kontraktu" nie będzie można użyć, bo jest zbyt skomplikowany ;]

Cała kalkulacja kosztów transakcji w ETH jest generalnie przekombinowane, zwłaszcza w sytuacji gdy używamy kontraktów.
Po pierwsze, musimy znać ilość "gas" jaka jest potrzebna do wykonania kontraktu. Jeżeli jest to jakiś token i nie jesteśmy jedynymi/pierwszymi użytkownikami to można zajrzeć etherscanem na inne transakcje i odczytać tą wartość. To będzie "gas limit" naszej transakcji - ile maksymalnie jesteśmy skłonni kupić mocy obliczeniowej od EVM. W innym przypadku (nie znając estymacji) musimy dać limit z kosmosu i modlić się żeby starczyło, o czym na końcu.

Drugi element to cena gazu - "gas price". Ta dla odmiany zależy od aktualnej sytuacji na rynku i możemy ją sprawdzić np. na ethergasstation.

Trzeci element to koszt samej transakcji (fee) zależne od wielkości transakcji, i również wyrażony w gas. Ten występuje zawsze, i zależy od transakcji - jeżeli np wywołujemy kontrakt z wieloma parametrami to parametry te też "ważą" jakieś bajty danych i przez to kosztują. Najlżejsze są oczywiście "zwykłe" transakcje wysyłające ETH, bo muszą zawierać tylko ilość, adres odbiorcy i podpis nadawcy.

Mamy więc "transaction cost" i "execution cost" wyrażony w "gas" i mnożymy go przez "gas price". Otrzymujemy max wartość w ETH jaką jesteśmy skłonni zapłacić za wykonanie transakcji. Musimy więc zawsze mieć jakiś zapas.

I teraz najlepsze.
To, czy transakcja w ogóle będzie dołączona do bloku zależy od tego, czy nasza cena gas jest odpowiednio wysoka. Jeżeli nie - możemy czekać tygodniami, jak było przy krypto kotkach.

A najlepsze z najlepszych jest to, że jeżeli przeszacujemy i damy za mały gas limit przy odpowiednio wysokim gas price, to transakcja zostanie dołączona do bloku, zapłacimy całe ETH jakie przeznaczyliśmy na wykonanie transakcji ale kontrakt się nie wykona xD

Dziękujemy za skorzystanie z linii ETH dla opornych ;]
wysłać token.jpg

Kalkulacja kosztów transakcji w Ethereum

: czwartek, 16 maja 2019, 08:17
autor: adam1226
To cos takiego jak tutaj :arrow: ??

Dodano po 8 godzinach 5 minutach 56 sekundach:
Ale jesli chodzi o oszacowanie potrzeb gazowych jest to nieco latwiejsze z pomoca tej stronki:
https://ethgasstation.info/

Kalkulacja kosztów transakcji w Ethereum

: środa, 2 października 2019, 15:04
autor: BitHub.pl
Spieszymy z informacją, że opłaty transakcyjne w Ethereum odnotowały ok. 50% spadek w stosunku do maksymalnych wartości notowanych w zeszłym tygodniu ;)

Opłaty transakcyjne w Ethereum spadły o 50% w stosunku do zeszłotygodniowych maksimów

Kalkulacja kosztów transakcji w Ethereum

: środa, 2 października 2019, 22:48
autor: rav3n_pl
Widzę że nie zapisałem jednego ważnego detalu.
ETH nie posiada adresów reszty ani możliwości wysyłania do wielu odbiorców na raz.
Jeżeli robimy operację typu wysłanie ETH (nie tokenów, nie wołanie kontraktu) to operacja taka ma stały koszt w gas: 21000.
Nie ma więc sensu zwiększać "gas limit" dla takich transakcji, bo nie wypłynie to na szybkość jej zatwierdzenia.
Jeżeli damy za niską cenę gas i nie możemy się doczekać, w większości portfeli mamy możliwość ponowienia transakcji (wysłanie z tym samym nonce) z większą ceną.