Merge pull request #1592 from mempool/nymkappa/feature/realtime-estimated-hashrate

Show current network hashrate and difficulty using core RPC
This commit is contained in:
wiz 2022-05-06 14:35:30 +09:00 committed by GitHub
commit f45dc25a08
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 5 additions and 12 deletions

View File

@ -630,6 +630,8 @@ class Routes {
res.json({
hashrates: hashrates,
difficulty: difficulty,
currentHashrate: await bitcoinClient.getNetworkHashPs(),
currentDifficulty: await bitcoinClient.getDifficulty(),
});
} catch (e) {
res.status(500).send(e instanceof Error ? e.message : e);

View File

@ -5,8 +5,7 @@
<div class="item">
<h5 class="card-title" i18n="mining.hashrate">Hashrate</h5>
<p class="card-text">
{{ hashrates.currentHashrate | amountShortener }}
<span class="symbol">hashes/sec</span>
{{ hashrates.currentHashrate | amountShortener: 1 : 'H/s' }}
</p>
</div>
<div class="item">

View File

@ -114,23 +114,15 @@ export class HashrateChartComponent implements OnInit {
difficulty: diffFixed.map(val => [val.timestamp * 1000, val.difficulty]),
});
this.isLoading = false;
if (data.hashrates.length === 0) {
this.cd.markForCheck();
throw new Error();
}
}),
map((response) => {
const data = response.body;
return {
blockCount: parseInt(response.headers.get('x-total-count'), 10),
currentDifficulty: Math.round(data.difficulty[data.difficulty.length - 1].difficulty * 100) / 100,
currentHashrate: data.hashrates[data.hashrates.length - 1].avgHashrate,
currentDifficulty: data.currentDifficulty,
currentHashrate: data.currentHashrate,
};
}),
retryWhen((errors) => errors.pipe(
delay(60000)
))
);
}),
share()