bds-xlm is one of the independent modules in open source project of block chain data service (BDS) - provides full node data service.
bds-xlm Based on the horizon-v0.22.1 version of stellar/go,bds-xlm redeveloped to support sending new block data directly to message middleware service of kafka to facilitate upstream services to subscribe and consume. Need to compile and install stellar/core v12.1.0 before running horizon.
- Compile
dep ensure -v
go build -v $GOPATH/src/github.com/stellar/go/services/horizon
- Run full node and support sending messages to Kafka
./horizon --ingest --port <port> --kafka=true --kafka-proxy-host=<kafka host> --kafka-proxy-port=<kafka port> --kafka-topic=<kafka topic>
See kafka
- message.max.bytes=1048576000
see confluent
Unzip the confluent package and run Confluent REST Proxy
- max.request.size = 1048576000
- buffer.memory = 1048576000
- send.buffer.bytes = 1048576000
See BDS
Database we now support SQL Server, PostgreSQL, you can choose one as a data storage method.
See Grafana Official
- The new function of sending messages to Kafka is added(every time a new block is synchronized by full node, the data of the block is sent to kafka and the data structure is customized).
- Sendblock and sendbatchblock are newly added as RPC interfaces to trigger full node to send data for a specific block.