Александр Вячеславович Фролов - Создание смарт-контрактов Solidity для блокчейна Ethereum. Практическое руководство стр 10.

Книгу можно купить на ЛитРес.
Всего за 349 руб. Купить полную версию
Шрифт
Фон

INFO [02-13|08:51:16.732] New local node record                    seq=3 id=eae4aa1f2059eed4 ip=127.0.0.1 udp=0 tcp=30303

INFO [02-13|08:51:16.732] Started P2P networking                   self="enode://5ac26687728e3e3f4575e5e8feab33748bbc467951e1841b2063cc201dcb6ed4e9b9e26ca322fc935cc5b6b042ebbb6126f5bd7d6cf6903c1e19600cf7f6c8b5@127.0.0.1:30303?discport=0"

INFO [02-13|08:51:16.732] IPC endpoint opened                      url=/home/book/node1/geth.ipc

INFO [02-13|08:51:16.733] HTTP endpoint opened                     url=http://127.0.0.1:8545     cors= vhosts=localhost

INFO [02-13|08:51:16.733] Transaction pool price threshold updated price=1000000000

INFO [02-13|08:51:16.733] Updated mining threads                   threads=1

INFO [02-13|08:51:16.733] Transaction pool price threshold updated price=1000000000

INFO [02-13|08:51:16.734] Commit new mining work                   number=1 sealhash=5c4116c8c1bf uncles=0 txs=0 gas=0 fees=0 elapsed=562.141µs

INFO [02-13|08:51:16.779] Mapped network port                      proto=tcp extport=30303 intport=30303 interface=NAT-PMP(192.168.0.1)

Welcome to the Geth JavaScript console!


instance: Geth/v1.8.22-stable-7fa3509e/linux-amd64/go1.10.4

coinbase: 0x4f744742ac711fd111c7a983176db1d48d29f413

at block: 0 (Wed, 31 Dec 1969 16:00:00 PST)

datadir: /home/book/node1

modules: admin:1.0 debug:1.0 eth:1.0 ethash:1.0 miner:1.0 net:1.0 personal:1.0 rpc:1.0 txpool:1.0 web3:1.0


> INFO [02-13|08:51:18.459] Generating DAG in progress               epoch=0 percentage=0 elapsed=983.779ms

INFO [02-13|08:51:19.420] Generating DAG in progress               epoch=0 percentage=1 elapsed=1.944s

INFO [02-13|08:51:20.395] Generating DAG in progress               epoch=0 percentage=2 elapsed=2.919s

INFO [02-13|08:51:21.440] Generating DAG in progress               epoch=0 percentage=3 elapsed=3.963s


INFO [02-13|08:55:56.193] Successfully sealed new block            number=46 sealhash=fccbc15cc27f hash=7769673700c9 elapsed=7.306s

INFO [02-13|08:55:56.193] block reached canonical chain          number=39 hash=9c6ba7c95452

INFO [02-13|08:55:56.193] mined potential block                  number=46 hash=7769673700c9

INFO [02-13|08:55:56.193] Commit new mining work                   number=47 sealhash=41558f3ef931 uncles=0 txs=0 gas=0 fees=0 elapsed=97.707µs

> [1;5FINFO [02-13|08:56:01.030] Successfully sealed new block            number=47 sealhash=41558f3ef931 hash=f67a9b773bfd elapsed=4.837s

INFO [02-13|08:56:01.030] block reached canonical chain          number=40 hash=3a6600bde7e0

INFO [02-13|08:56:01.030] mined potential block                  number=47 hash=f67a9b773bfd

INFO [02-13|08:56:01.030] Commit new mining work                   number=48 sealhash=d4ab027151c7 uncles=0 txs=0 gas=0 fees=0 elapsed=97.374µs


В зависимости от производительности вашего виртуального или физического сервера генерация файла DAG может занять несколько минут или дольше.

Файл DAG содержит направленный ациклический граф (Directed Acyclic Graph). Он используется для добавления блоков в Ethereum с помощью алгоритма с названием Ethash. Его размер может составлять более 1 Гбайта. Размер этого блока увеличивается по мере роста сети Ethereum. Текущий размер блока можно узнать, например, на сайте https://investoon.com/tools/dag_size. На момент создания этого учебного курса файл DAG для основной сети Ethereum был размером 2.95 Гбайт.

Чем больше файл DAG, тем труднее выполнить майнинг. Если для майнинга используются видеокарты, то данные DAG должны полностью поместиться в память видеокарты, иначе применение видеокарты для майнинга будет бесполезным.

Так как запуск узла вы будете выполнять часто, рекомендуем подготовить пакетный файл для запуска с именем, например, start_node.sh (листинг 2.2.).

Листинг 2.2. Файл start_node.sh


geth etherbase "0x4f744742ac711fd111c7a983176db1d48d29f413" datadir node1 nodiscover mine minerthreads 1 maxpeers 0 verbosity 3 networkid 98760 rpc rpcapi="db,eth,net,web3,personal,web3" console

Параметры запуска узла

Расскажем о параметрах geth, которые мы использовали при запуске узла. Эти параметры были выбраны исходя из назначения нашего узла мы создаем узел для учебной приватной сети Ethereum. Когда вы будете создавать узел для работы с тестовой сетью Rinkeby или с основной сетью Ethereum, нужно будет указывать другие параметры.

Чтобы получить краткую справку по всем командам и параметрам geth, запустите ее следующим образом:


$ geth -h


С параметром datadir, который указывает путь к каталогу блокчейна, вы уже знакомы. При запуске узла укажите тот же каталог, что мы использовали при инициализации приватного блокчейна.

Параметр etherbase задает публичный адрес, на который будет отправлено вознаграждение за майнинг.

Параметр nodiscover отключает поиск других узлов сети. Мы указали его, так как пока будем работать только с одним узлом блокчейна.

Мы также указали значение параметра maxpeers, равное нулю. Таким способом мы фактически отключили обмен по сети между узлами нашего блокчейна.

С помощью параметра mine мы запускаем так называемый майнинг процесс создания новых блоков в нашем блокчейне. Это необходимо, так как без появления новых блоков выполнение транзакций и публикация смарт-контрактов будут невозможны.

Ваша оценка очень важна

0
Шрифт
Фон

Помогите Вашим друзьям узнать о библиотеке

Скачать книгу

Если нет возможности читать онлайн, скачайте книгу файлом для электронной книжки и читайте офлайн.

fb2.zip txt txt.zip rtf.zip a4.pdf a6.pdf mobi.prc epub ios.epub fb3