GETH - лимит хранилища ключей eteherum - очень медленное создание новых учетных записей и получение полученной суммы по счету - проблемы разработки
Предисловие:
GETH установлен на моем сервере Linux, и я разработал API, который можно использовать для генерации нового адреса или для определения того, сколько ETH я уже получил по определенному адресу. (Я имею в виду не текущий баланс, а реально сколько всего было переведено на этот адрес).
Мои требования:
Я должен быть в состоянии генерировать много быстрых и надежных методов обращения к эфириуму, чтобы получить за него плату. Я предполагаю до 10000 адресов Эфириума в день.
И мне нужно знать, сколько было выплачено по этому адресу.
Моя проблема:
Не так просто, как в биткойнах, генерировать новый адрес, потому что, насколько я понимаю, у Ethereum нет нескольких адресов, у него есть только учетные записи, поэтому для моего случая мне нужно сгенерировать для каждой транзакции от клиента новую учетную запись.
Но ethereum создает новый файл в каталоге данных "keystore" для каждой новой учетной записи, поэтому создание нового адреса занимает очень много времени и замедляется, поскольку больше адресов уже было сгенерировано.
И, конечно, это только вопрос времени, когда будет достигнуто максимальное количество файлов в папке, и операционная система не сможет добавить дополнительные хранилища ключей в эту папку данных.
Вы не можете (или я не узнал) увидеть, сколько ETH было отправлено на адрес, чтобы сделать это, мне нужно подсчитать все транзакции, которые имели место до текущего времени, вместе и получить всю стоимость. Я получаю информацию о транзакции от внешнего поставщика API.
И, конечно, это очень трудоемкий и неэффективный подход.
В целом, этот API очень медленный, неэффективный и ненадежный.
Решение:
Генерация адресов:
Можно ли сохранить хранилища ключей в базе данных, а не в файлах, а затем импортировать их из базы данных?
Можно ли автоматически расположить хранилища ключей после определенного количества файлов в подпапках?
Или, может быть, у вас есть еще лучшие способы решить эту проблему.
Получение полученной суммы по счету: поскольку все транзакции очень сложны для подсчета, и мне приходится прибегать к внешним ресурсам для этой функции, я сначала проверил бы локально, была ли проведена хотя бы одна транзакция на этом счете, и была ли пока нет транзакций, я могу точно сказать, что полученная сумма равна 0 ETH.
Есть ли у кого-нибудь из вас лучшее решение, чтобы узнать, сколько ETH пришло на данный адрес в общей сложности?
Спасибо за ваше время и за ваши ответы.