Full API node update - (1/6/2020)
2020-05-31T18:00:56 - 2020-06-01T14:00:07 (UTC)
@fullnodeupdate provides daily updates about the state of all available full API node server.
More information about full nodes and a complete RPC node list can be fund in this post.
List of failing nodes
This table includes a list of all nodes which were not able to answer to a get_config
api call within 30 seconds.
node | hours with failure | percentage |
---|---|---|
https://steem.bts.tw | 21/21 | 100.0 % |
List of working nodes (At least once in the last 24h)
This table includes all nodes which were able to a get_config
call in 30 seconds.The achieved mean duration values are shown. The returned version is also shown.When a node failes, its mean value is increased as it is counted as 30 seconds
node | mean time [s] | version | HIVE |
---|---|---|---|
https://api.justyy.com | 0.32 | 0.23.1 | False |
https://anyx.io | 0.32 | 0.23.0 | True |
http://anyx.io | 0.42 | 0.23.0 | True |
https://api.steemit.com | 0.66 | 0.23.0 | False |
https://api.hive.blog | 0.69 | 0.23.0 | True |
https://hive.roelandp.nl | 0.72 | 0.23.0 | True |
https://api.openhive.network | 1.43 | 0.23.0 | True |
https://api.pharesim.me | 1.46 | 0.23.0 | True |
https://rpc.esteem.app | 2.05 | 0.23.0 | True |
https://hived.privex.io | 2.31 | 0.23.0 | True |
https://api.hivekings.com | 2.62 | 0.23.0 | True |
https://steem.61bts.com | 3.02 | 0.23.1 | False |
https://rpc.ausbit.dev | 3.25 | 0.23.0 | True |
https://techcoderx.com | 3.89 | 0.23.0 | True |
Streaming blocks
In this test, it is measured how many blocks a node can stream in 30 seconds.
List of working nodes - block streaming
This table includes all nodes which were able to stream at least one block within 30 seconds.The achieved minimum, maximum and mean blocks per seconds values are shown. When a node failes, its mean value is reduced as it is counted as 0 blocks per seconds
node | block/s | mean block/s |
---|---|---|
https://api.justyy.com | 26.6 - 49.6 | 44.1 |
https://api.pharesim.me | 20.7 - 32.8 | 28.7 |
https://hive.roelandp.nl | 17.4 - 19.8 | 18.9 |
https://rpc.ausbit.dev | 15.2 - 17.3 | 16.3 |
https://api.openhive.network | 11.4 - 11.5 | 11.4 |
https://hived.privex.io | 5.3 - 12.3 | 11.4 |
https://api.steemit.com | 5.4 - 8.4 | 7.6 |
https://rpc.esteem.app | 6.1 - 7.9 | 7.4 |
https://api.hive.blog | 6.1 - 8.1 | 7.1 |
https://api.hivekings.com | 5.2 - 6.2 | 5.9 |
http://anyx.io | 3.0 - 6.1 | 4.4 |
https://anyx.io | 3.0 - 5.8 | 4.4 |
https://techcoderx.com | 4.2 - 4.5 | 4.4 |
https://steem.61bts.com | 0.4 - 3.2 | 2.0 |
Measuring irreversible block delays
In this test, the time delay of the irreversible block to the current time is measured.
List of working nodes - block delays
This table includes all nodes which were able to stream at least one block within 30 seconds.The achieved minimum, maximum and mean irreversible block delay times in seconds are shown. When a node failes, its mean value is reduced as it is counted as 120 seconds.
node | block delay | mean delay |
---|---|---|
https://api.openhive.network | 49.18 - 77.08 | 59.530 |
https://api.justyy.com | 46.91 - 75.93 | 60.104 |
https://api.steemit.com | 49.69 - 73.04 | 60.687 |
https://hive.roelandp.nl | 45.60 - 86.84 | 61.695 |
https://hived.privex.io | 46.86 - 71.78 | 61.859 |
https://steem.61bts.com | 51.48 - 77.73 | 61.955 |
https://rpc.ausbit.dev | 47.59 - 83.19 | 62.182 |
https://api.hivekings.com | 50.35 - 80.41 | 63.166 |
https://api.pharesim.me | 46.42 - 77.35 | 63.980 |
https://api.hive.blog | 48.77 - 89.84 | 67.424 |
https://anyx.io | 52.78 - 78.81 | 75.568 |
http://anyx.io | 52.48 - 74.07 | 88.144 |
https://techcoderx.com | 50.36 - 65.22 | 96.708 |
https://rpc.esteem.app | 50.46 - 66.16 | 104.625 |
Account history
In this test, it is measured how many account operation a node can stream.
List of working nodes - account history
This table includes all nodes which were able to stream at least one account history operation within 15 seconds.The achieved minimum, maximum and mean account transaction per seconds values are shown. When a node failes, its mean value is reduced as it is counted as 0 history operation per seconds
node | hist/s | mean hist/s |
---|---|---|
https://api.pharesim.me | 1978.3 - 2454.5 | 2183.9 |
https://hive.roelandp.nl | 1468.8 - 1749.6 | 1663.4 |
https://rpc.ausbit.dev | 940.9 - 1203.7 | 1088.4 |
https://hived.privex.io | 437.7 - 1052.3 | 948.4 |
https://api.steemit.com | 711.4 - 762.1 | 737.3 |
https://api.hive.blog | 563.8 - 767.7 | 681.6 |
https://api.openhive.network | 572.1 - 702.4 | 657.8 |
https://api.justyy.com | 513.4 - 716.2 | 649.1 |
https://anyx.io | 436.9 - 502.7 | 476.4 |
http://anyx.io | 441.8 - 497.7 | 472.3 |
https://rpc.esteem.app | 447.0 - 489.0 | 472.3 |
https://api.hivekings.com | 374.6 - 393.1 | 385.3 |
https://techcoderx.com | 308.9 - 333.8 | 321.7 |
https://steem.61bts.com | 19.3 - 126.3 | 58.4 |
Receiving a vote, a comment, and an account
In this test, the mean duration to receive an account, a comment, and a vote is measured.
List of working nodes - api calls
This table includes all nodes which were able to answer all three api calls within 30 seconds.The achieved minimum, maximum and mean time durations are shown. When a node failes, its mean value is increased as it is counted as 30 seconds
node | time [s] | mean time [s] |
---|---|---|
https://api.justyy.com | 0.09 - 0.19 | 0.106 |
https://api.steemit.com | 0.18 - 0.23 | 0.189 |
https://api.pharesim.me | 0.04 - 0.05 | 1.472 |
https://rpc.ausbit.dev | 0.08 - 0.11 | 1.523 |
https://rpc.esteem.app | 0.04 - 0.17 | 1.537 |
https://hived.privex.io | 0.11 - 0.18 | 1.559 |
https://api.hive.blog | 0.17 - 0.27 | 1.616 |
https://api.openhive.network | 0.16 - 0.29 | 1.625 |
http://anyx.io | 0.21 - 0.55 | 1.689 |
https://api.hivekings.com | 0.31 - 0.33 | 1.731 |
https://techcoderx.com | 0.28 - 0.42 | 1.733 |
https://hive.roelandp.nl | 0.08 - 0.09 | 1.745 |
https://anyx.io | 0.28 - 0.61 | 1.769 |
Summary of working nodes
A node is working, when it could fullfil at least once in the last 24h the following conditions:
- returned data within 30 seconds,
- blocks could be streamed,
- account history was possible,
- votes, a comment, an account could successfully be fetched and were not empty.
The nodes in the following table are ranked by the mean rank of all three node tables shown above.
This table includes only nodes which were passing all three tests sucessfully.
The shown ranks are: block rank
- block_diff rank
- history rank
- apicall rank
node | ranks | score | HIVE |
---|---|---|---|
https://api.justyy.com | 1 - 2 - 13 - 2 | 80.0 | False |
https://api.openhive.network | 5 - 1 - 5 - 9 | 68.6 | True |
https://api.steemit.com | 7 - 3 - 12 - 3 | 65.7 | False |
https://api.pharesim.me | 2 - 9 - 9 - 4 | 61.4 | True |
https://api.hive.blog | 9 - 10 - 4 - 8 | 55.7 | True |
https://hived.privex.io | 6 - 5 - 8 - 7 | 55.7 | True |
https://hive.roelandp.nl | 3 - 4 - 11 - 13 | 54.3 | True |
http://anyx.io | 11 - 12 - 2 - 10 | 52.9 | True |
https://rpc.ausbit.dev | 4 - 7 - 10 - 5 | 51.4 | True |
https://anyx.io | 12 - 11 - 1 - 14 | 50.0 | True |
https://api.hivekings.com | 10 - 8 - 3 - 11 | 45.7 | True |
https://rpc.esteem.app | 8 - 14 - 7 - 6 | 44.3 | True |
https://steem.61bts.com | 14 - 6 - 14 - 1 | 40.0 | False |
https://techcoderx.com | 13 - 13 - 6 - 12 | 24.3 | True |
Set fully working nodes with beempy / steempy
https://api.steemitstage.com, https://api.steemitdev.com and nodes with not working results were excluded.
beempy
beempy set nodes "['https://api.justyy.com', 'https://api.steemit.com', 'https://steem.61bts.com']"
steempy
steempy set nodes https://api.justyy.com,https://api.steemit.com,https://steem.61bts.com
Receive fully working nodes from json_metadata
of the @fullnodeupdate account
The nodes are also stored in the json_metadata
variable of the @fullnodeupdate account.
The nodes inside the account metadata are updated every hour.
The json_metadata includes the following data:
nodes
- list of nodes that passed all tests.failing_nodes
- list of nodes that did not answer theget_config
call.report
- test results.parameter
- usedbeem
and test parameter.
Example code for python:
from beem.account import Account
import json
acc = Account("fullnodeupdate")
nodes = json.loads(acc["json_metadata"])["nodes"]
acc.steem.set_default_nodes(nodes)
This post was created with beem, my python library for steem.