Updates
This commit is contained in:
@@ -0,0 +1,33 @@
|
||||
const HyperP2PCausalConsensus = require('../index.js')
|
||||
|
||||
async function main () {
|
||||
const keyPair = require('hypercore-crypto').keyPair()
|
||||
const consensus = new HyperP2PCausalConsensus({
|
||||
localId: 'example-peer',
|
||||
keyPair,
|
||||
quorumThreshold: 0.6,
|
||||
enableSigning: true,
|
||||
topic: process.argv[2] || null,
|
||||
enableGossip: !!process.argv[2]
|
||||
})
|
||||
|
||||
consensus.addPeer('peer-alpha', require('hypercore-crypto').keyPair().publicKey.toString('hex'))
|
||||
consensus.addPeer('peer-beta', require('hypercore-crypto').keyPair().publicKey.toString('hex'))
|
||||
|
||||
consensus.on('consensus', (d) => {
|
||||
console.log('[consensus]', d.order, d.data)
|
||||
})
|
||||
|
||||
const p1 = await consensus.propose({ type: 'demo', n: 1 })
|
||||
await consensus.vote(p1, true)
|
||||
|
||||
console.log('metrics:', consensus.getMetrics())
|
||||
console.log('decided:', consensus.getAllDecided())
|
||||
|
||||
await consensus.close()
|
||||
}
|
||||
|
||||
main().catch((err) => {
|
||||
console.error(err)
|
||||
process.exit(1)
|
||||
})
|
||||
Reference in New Issue
Block a user