Синхронизация Geth Testnet длится вечно

Я пытаюсь развернуть смарт-контракт в тестовой сети Ethereum, и для этого я попытался синхронизировать тестовую сеть Ethereum «ropsten» с помощью geth. Я использовал команду ниже, чтобы сделать это.

geth --testnet --syncmode "fast" --rpc --rpcapi db,eth,net,web3,personal --
cache=1024  --rpcport 8545 --rpcaddr 127.0.0.1 --rpccorsdomain "*" --
bootnodes "enode://20c9ad97c081d63397d7b685a412227a40e23c8bdc6688c6f37e97cfbc22d2b4d1db1510d8f61e6a8866ad7f0e17c02b14182d37ea7c3c8b9c2683aeb6b733a1@52.169.14.227:30303,enode://6ce05930c72abc632c58e2e4324f7c7ea478cec0ed4fa2528982cf34483094e9cbc9216e7aa349691242576d552a2a56aaeae426c5303ded677ce455ba1acd9d@13.84.180.240:30303"

Тестовая сеть должна была синхронизироваться через 15-20 минут (из того, что я читал в нескольких местах), но я работал почти 18 часов. Ошибки нет и нигде не пробито.

Когда я попробовал eth.syncingс консоли geth, вот что я получил

{
  currentBlock: 1588913,
  highestBlock: 1589055,
  knownStates: 9029253,
  pulledStates: 9020460,
  startingBlock: 1588426
}

Я думал, что почти достиг самого высокого блока. Но такая ситуация уже пару часов. Известные состояния и вытянутые состояния постоянно расширяются.

Есть ли другой альтернативный способ загрузки данных цепочки тестовой сети, который сделает процесс намного быстрее, чем синхронизация с помощью команды geth?

Вы могли бы использовать testrpc, если вы просто хотите запустить вещи?
The testnet should have synced in 15-20 minutesЯ страдал так же. ОЧЕНЬ устаревшие учебники.
Я использовал testrpcдля разработки. Я пытался развернуть его в общедоступной среде разработки. В конечном счете, сколько времени это заняло у вас? Есть более быстрые методы?
Это также может быть связано с тем, что вы могли изначально начать с обычной синхронизации, а затем решили продолжить fast. Тот, который вы начали с обычной синхронизацией, будет игнорировать быструю синхронизацию после

Ответы (1)

Причина, по которой testnet так долго синхронизируется, заключается в том, что у вас, вероятно, подключение ниже среднего. Я бы использовал метамаску и сгенерировал там адрес в тестовой сети. Затем я бы развернул контракт по этому адресу. Если вы используете Remix, вы можете выбрать вариант внедрения web3js, и он подберет адрес метамаски. Если вам нужно немного эфира, вы можете использовать сборщик Rinkby , который даст вам до 18,75 ETH для игры .

Прохладный. Это один из способов добиться этого, не тратя все время на синхронизацию. Обязательно попробую и поделюсь своим опытом.