StreamR
- The Streamr Network is a peer-to-peer network for publishing and subscribing to data in real-time. The Streamr Network consists of nodes that interconnect peer-to-peer using the Streamr protocol. Together, the nodes in the Network form a topic-based publish-subscribe messaging system. Topics in this messaging system are called streams. The job of the Network is to deliver published streams of messages to all subscribers of that stream.
- Token: DATA
- Current Price: $0.0470
- Estimated Monthly Earnings: $17.34
- Cost to Invest: $477
- Links: https://docs.streamr.network/streamr-network/
- https://bit.ly/get-Nodeorbit (Hosting Website)
What is the Streamr Network
The Streamr Network is a peer-to-peer network for publishing and subscribing to data in real-time. Applications use it for decentralized messaging, for example sharing data across applications or broadcasting real-time state changes to large audiences. The decentralized nature of the system makes the data transport scalable, robust, secure, tamper proof, and censorship resistant.
The Streamr Network consists of nodes that interconnect peer-to-peer using the Streamr protocol. Together, the nodes in the Network form a topic-based publish-subscribe messaging system. Topics in this messaging system are called streams. The job of the Network is to deliver published streams of messages to all subscribers of that stream.
The Streamr Network is a building block for decentralized applications - a message transport middleware, enabling any number of parties to distribute or exchange information without directly coupling or relying on a central server to broker data.
All of the data in the Streamr network is contained inside individual streams. The data may originate, for example from your app, machines on the factory floor, sensors in a smart city, in-house databases or systems, or from commercial streaming data feeds.
For further reading, checkout the light paper and Network white paper.
Explore the Network
The network is highly dynamic, with a regular cast of Streamr nodes, but also a constantly revolving number of light nodes appearing and disappearing. The Network Explorer is an application that brings visibility to the stream topologies inside the Streamr Network. Being able to explore it helps node runners inspect their nodes and diagnose any issues.
You can search for areas, say all nodes in Helsinki, streams by path name or description, as well as specific nodes by generated name or Ethereum address. By searching or selecting a stream, the nodes participating in the stream overlay will be shown in both the results list, and on the geo map. Selecting a node in this list gives you access to all the metrics, and as the full tokenomics rolls out in Tatum milestone, will also give access to the node’s Ethereum address, and link out to its transaction history on Etherscan.
Streamr nodes
Applications publish and subscribe to streams via Streamr nodes. In other words, nodes are the access points to the Streamr Network. To connect your application to streams, you interface it with a Streamr node.
INFO
If you'd like instructions on running a Streamr node, checkout this guide.
There are two strategies for interfacing applications with Streamr nodes:
- Use the Streamr SDK: the Streamr node is imported to your application as a library and runs locally as part of your application.
- Run a Streamr node: separate to your application. Connect to it remotely using one of the supported protocols.
Which approach to choose depends on your use case. Here are some commonly used decision criteria:
- If you are developing in JS (including the browser), use the Streamr SDK. For other programming languages, connect to a Streamr node.
- If your application runs on very limited CPU, memory, or bandwidth (such as battery-powered or embedded devices), connect to a Streamr node.
- If you want the data to be cryptographically signed at the source, use the Streamr SDK.
Running a Streamr node inside your app is the most decentralized approach as it doesn't require you to host Streamr nodes separately, but on the other hand it requires a Streamr node implementation to exist for the programming language you're using. So far, that's just TypeScript though we intend to increase native support to many other languages and environments in the future.
Plugin interface
The Streamr node ships with plugins for HTTP, Websocket, and MQTT protocols. Libraries for these protocols exist in practically every programming language, meaning that you can conveniently publish and subscribe to data from the Streamr Network using any programming language.
Streamr nodes have a plugin architecture that allows them to perform other tasks in addition to (or instead of) serving applications, such as joining stream Sponsorships to relay data and earn DATA tokens.