Author

Topic: Подскажите по плану разработки (Read 201 times)

kzv
legendary
Activity: 1722
Merit: 1285
OpenTrade - Open Source Cryptocurrency Exchange
Я вот не могу разобраться с потоками. В какой момент их использовать. Я правильно понимаю, что отдав транзакцию ноде, она создает асинхронный поток, в которой уже майнит ее и паралельно слушает, не пришла ли еще одна транзакция?

"Асинхронный поток" это что-то новое  Smiley

Программа может работать либо многопоточно, либо асинхронно. Мое глубокое убеждение: потоки-зло, избегайте использования потоков.

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

member
Activity: 202
Merit: 27
Atom foundation
В каком блокчейне планируется валюта?

Cкорее всего гибрид POW - в этой теме рассуждаю насчет этого https://bitcointalksearch.org/topic/pow-3867866

Если речь идет о криптовалюте то думаю не совсем правильно
1. Подключаешься к ноде и добавляешь свою транзакцию в пул незавершенных транзакций
2. Кто то из нод майнит ее (POS или POW)
3. Твоя нода получает новый блок и сохраняет эту транзакцию в базе данных

Вопросы подключения через websocket или нет, это уже второстепенное.

Спасибо!
В моем случае нод будет мало, так как блокчейн будет использоваться для нужд компании и разделен допустим на 10 компьютеров. Поэтому POW должен быть практически моментальным, так как в цепочки будут паковаться каждая отдельная транзакция, а не тысячи, как в блокчейн биткоин.

Я вот не могу разобраться с потоками. В какой момент их использовать. Я правильно понимаю, что отдав транзакцию ноде, она создает асинхронный поток, в которой уже майнит ее и паралельно слушает, не пришла ли еще одна транзакция?
full member
Activity: 256
Merit: 102
Если речь идет о криптовалюте то думаю не совсем правильно
1. Подключаешься к ноде и добавляешь свою транзакцию в пул незавершенных транзакций
2. Кто то из нод майнит ее (POS или POW)
3. Твоя нода получает новый блок и сохраняет эту транзакцию в базе данных

Вопросы подключения через websocket или нет, это уже второстепенное.
newbie
Activity: 2
Merit: 0
В каком блокчейне планируется валюта?
member
Activity: 202
Merit: 27
Atom foundation
Разрабатываю свою криптовалюту, подскажите, правильно ли я мыслю:
Правильный ли ход моей разработки?
  • перевод от клиента через браузер, отправляю данные на ноду через websocket
  • нода получает данные от браузера через websocket, создает поток asyncio(например с использование aiohttp в python), в потоке выполняет обработку транзакции и записывает в базу данных
  • эта нода отправляет другим нодам данные с использование zeroMQ
Правильно ли использовать асинхронные потоки? или можно делать все в одном потоке?
Jump to: