Transactions

如何監控 +20,000 個地址是否有新收到的交易?

  • January 23, 2022

我有大約 20000 個生成的地址,我想監控這些地址是否有新交易。應該會有更多地址。客戶應該只使用每個地址一次,但如果他們中的一些人決定將硬幣轉移到“使用過的”地址,我想監控已經使用過的地址。

這些地址不在線上錢包中,我只有在數據庫中的地址。私鑰離線保存。

這意味著我不想監控來自本地錢包的地址,而是來自數據庫的地址。

收到交易後應執行命令(有足夠的確認)。有一些監控服務可以在收到關注列表中地址的交易後發送電子郵件或呼叫 url。

我想在不依賴外部服務的情況下為我的應用程序實現相同的功能。

我看到了一些問題和答案,例如:

如何知道有新交易?監控比特幣網路上的所有交易 - API

但是最有效的方法是什麼?有沒有兼容 perl/php 的方法來做到這一點?

上述連結中的一個主題連結到https://bitcointalk.org/index.php?topic=89725.0,Gavin在其中談論一些新功能,但我不知道我怎麼能或是否可以使用其中的任何東西來監控高地址數。每分鐘發送一個包含數千個地址的批處理 RPC 呼叫到 bitcoind 可能不是一個解決方案:-(。

我希望有一種優雅的方式來監控整​​個資訊流(所有傳入的事務和其他傳入的資訊),並在它符合我的需要時做出反應。

我基本上對 bitcoinmonitor.net 做同樣的事情。我有一個地址數據庫來監視和從 bitcoind 獲取任何傳入交易的通知。

我為 bitcoind 維護了一個更新檔集,它允許設置一個 url,該 URL 將被任何傳入的未確認交易呼叫,包括 json 對像中的交易詳細資訊。此外,對於任何新接受的塊,可以設置一個(不同的)url 來呼叫新塊的詳細資訊。

因此,您將收到任何傳入未確認交易的通知,然後您可以將其與數據庫中的受監控地址進行匹配。如果您想在一定數量的確認後觸發操作,您需要連接到新的塊事件。

檢查<https://github.com/TripleSpeeder/bitcoin>以獲得我的 bitcoind 分叉。我盡量讓它與目前穩定的官方客戶端或多或少保持同步。這在 bitcoinmonitor.net 上已經穩定執行了大約 10 個月。

引用自:https://bitcoin.stackexchange.com/questions/4496