Mining-Profitability

一個典型的礦工多久刷新一次他們的候選區塊?

  • October 7, 2018

我意識到這是一個沒有“正確”答案的普遍問題,因為每個礦工都可以以不同的方式操作。

話雖如此,我希望能夠顯示一個交易列表,這些交易將被認為是**記憶體池中準備被探勘的交易公平表示。

到目前為止,我一直:

  • 用於getblocktemplate獲取交易列表。
  • 新區塊到達時刷新列表,或每隔1 分鐘刷新一次。

使用getblocktemplate似乎是合乎邏輯的,因為我想大多數礦工都希望從他們的區塊中獲得盡可能多的費用。

然後我猜測礦工會希望以特定的時間間隔刷新他們的候選區塊,以檢查記憶體池中費用較高的交易。

礦工是否會傾向於比每分鐘更多(或更少)刷新他們的候選區塊?

有幾個因素在起作用,其中之一是 Stratum 協議在許多礦工上的底層實現。由於它們的實現方式,如果許多礦工在 30 秒內沒有看到任何更新,他們將斷開與他們的礦池的連接,因此大多數礦池將以此頻率推送工作更新。

最佳情況下,礦池將根據區塊獎勵而不是固定計時器來更新他們的工作。如果他們模板中的費用金額沒有移動,那麼他們推送新作品並不是最佳選擇,但如果它增加了可觀的貨幣價值,那麼無論最近一次更新有多近,他們都最好推送新作品。


從歷史上看,重新啟動工作需要很長時間,但現代 ASIC 往往需要數百毫秒來改變他們正在執行的工作,而像 HashFast 這樣的老礦工可能需要幾十秒。

是的,對於挖礦軟體來說,獲取 getblocktemplate 就足夠了。像 bfgminers 這樣的軟體使用 longpoll 來做到這一點,所以軟體總是最新的。如果您在 bfgminer 上禁用 longpoll,您可以為 getblocktemplate API 設置刷新率。

不要認為 BFGminer 不會每 5 秒輪詢一次 bitcoind RPC,儘管您設置的刷新率較低。

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