Bitcoin ZeroMQ interface

Odavno želim da napišem nešto oko ZeroMQ interface na Bitcoin mreži, ali iskreno, nikada uhvatiti vremena da prostudiram isti kako treba, a iskreno se nadam da će pomoći nekom od članova u budućnosti kako bi i ja do kraja shvatili ovu tehnologiju.

Ni jedan dobar webwallet, explorer ne može raditi bez ZeroMQ interface, zato smatram da ga treba dobro naučiti jer njegova implementacija je neograničena.

Uvod

U ovom uputstvu ćemo detaljnije proučiti Bitcoin ZeroMQ interface za razmjenu poruka. Ovaj interface je korisan za razvoj aplikacija koje mogu zahtijevati podatke koji se odnose na blok i događaje transakcija iz Bitcoin-core daemona.

Neke od aplikacija koje uključuju “istraživače” blokova tj, explorere, novčanike i nadzorne ploče za izvještavanje su samo neke od aplikacija koje zahtjevaju ZeroMQ interface.

ZeroMQ je biblioteka asinhronih poruka visokih performansi, namijenjena upotrebi u distribuiranim ili istodobnim aplikacijama. Pruža red poruka, ali za razliku od softvera orijentiranog na poruke, ZeroMQ sistem može raditi bez namjenskog posrednika poruka.

Kao što vidite, ZeroMQ koriste sve poznate svjetske firme kao Microsoft, Facebook, Spotify i drugi.

Daemon Bitcoin Core može se konfigurirati da djeluje kao pouzdani „granični usmjerivač“, implementirajući i relej, donoseći konsenzusne odluke, održavajući lokalnu blockchain bazu podataka, emitirajući lokalno generirane transakcije u mrežu i pruža RPC interface sa upitom za interakciju na anketiranoj osnovi za traženje podataka vezanih uz blockchain.

Međutim, postoji samo ograničena usluga za obavještavanje vanjskog softvera o događajima poput dolaska novih blokova ili transakcija.

Objekt ZeroMQ implementira interface za obavještavanje putem skupa određenih “notifikatora”. Trenutno postoje “notifikatori” koji objavljuju blokove i transakcije. Ova mogućnost samo za čitanje zahtijeva povezivanje odgovarajućeg pretplatničkog porta ZeroMQ u prijemnom softveru; koja nije ovjerena niti postoji dvosmjerno u protokolu.

Stoga bi pretplatnici trebali potvrditi primljene podatke jer mogu biti zastarjeli, nepotpuni ili čak pogrešni.

Budući da je ZeroMQ orijentiran na poruke, pretplatnici primaju transakcije i blokiraju sve odjednom i ne trebaju primijeniti bilo kakvu vrstu buffera ili ponovnog sastavljanja.

U prvom dijelu sam napisao osnove, dok uhvatim malo vremena, prikazaćemo realnu upotrebu na blockchainu, u ovom slučaju koristićemo Bitcoin CLI test command interface.

Slobodno se priključite temi, jer iskreno i sam pokušavam naučiti osnovu ZeroMQ interface.

1 Like