State of Hive API nodes (as of February 2023)

in #nodelast year

state of hive nodes feb 2023.png
Background image generated using stable-diffusion-discord-bot, model: deliberate_v8.

Since my previous analysis that I posted over 2 years ago, it would be interesting to re-evaluate the current state of public API nodes most of us reading this use today.

Why is this important

At this point in time, these nodes allow users to interact with Hive (whether it is loading some feeds or making a transaction) without syncing up hived and the relevant HAF apps (e.g. HAfAH, Hivemind) on localhost. Without them, it will not be user friendly to interact with the network and you will not be reading this at all.

The previous analysis has shown that Hetzner was the dominant host for these types of nodes. They recently banned all forms of crypto related nodes from the host (including trading bots).

Disclaimer

This analysis only covers publicly accessible nodes listed in PeakD beacon node list that most interfaces and apps use. It does not cover any other nodes that are not listed there. Therefore, it does not represent the state of the network as a whole.

It is important to emphasize that the use of any public nodes listed below that you do not control are governed by the terms set by the respective node operators. Not your node, not your rules.

Overview

13 API nodes are currently online and accessible across 6 hosts (excluding Cloudflare) as of writing this, which is a decline in 1 node since the previous analysis. Additionally, 4 API nodes in the beacon node list are currently unavailable, bringing the total number up to a total of 17 listed nodes. This is a decline of 2 nodes since the previous analysis.

The Hosts

The DNS lookup results below may not be accurate as it may not reflect the actual host used by the respective node operators. Certain nodes like mine are hosted in residential network connection with reverse proxy running in the datacenter for accessibility and DDoS protection.

Available Nodes

NodeCountryRegionCityISP
hive.roelandp.nlUnited StatesVirginiaAshburnAmazon.com, Inc.
rpc.ecency.comCanadaOntarioTorontoCloudflare, Inc.
rpc.mahdiyari.infoCanadaOntarioTorontoCloudflare, Inc.
api.hive.blueFinlandUusimaaHelsinkiHetzner Online GmbH
hive-api.3speak.tvFinlandUusimaaHelsinkiHetzner Online GmbH
hived.emre.shGermanySaxonyFalkensteinHetzner Online GmbH
api.deathwing.me*1United StatesCaliforniaFremontHurricane Electric LLC
techcoderx.comSingaporeNorth WestSingaporeLinode, LLC
hive-api.arcange.euBelgiumFlandersZaventemOVH ISP
anyx.ioCanadaQuebecBeauharnoisOVH SAS
api.hive.blogCanadaQuebecBeauharnoisOVH SAS
api.openhive.networkPolandLower SilesiaWroclawOVH SAS
api.c0ff33a.ukUnited StatesCaliforniaSan JoseMisaka Network, Inc.

*1api.deathwing.me API clusters are also located in the EU and Singapore. The Singapore cluster doesn't seem to be online yet at the time of writing this.

Unavailable/Unusable Nodes

NodeCountryRegionCityISP
hiveapi.actifit.ioUnited StatesNew JerseyNewarkCloudflare, Inc.
rpc.ausbit.devUnited StatesNew JerseyNewarkCloudflare, Inc.
api.pharesim.meFinlandUusimaaHelsinkiHetzner Online GmbH
hived.privex.ioGermanySaxonyFalkensteinHetzner Online GmbH

The node count on Hetzner has reduced from 12 to 3 (up to 5 if it is real host behind the Cloudflare'd endpoints). This is largely due to certain nodes going offline, not existing node operators moving to another provider.

Some of the newer API nodes are put behind Cloudflare, which means users of these nodes (along with any frontends that also uses Cloudflare) are subject to Cloudflare's Privacy Policy. Some might be interested in this README about the criticisms of the service.

The geographical locations of the nodes remains mostly the same, largely in the EU and some in North America and SE Asia. Node presence is definitely missing in Latin/South America and Africa where a lot of Hive users come from (some data on this will greatly help).

Performance

The 60 API call benchmarker has been ran on the 13 nodes from servers across 3 different regions. Nodes that are consistently returning more than 5 errors are omitted from the charts below. Localhost endpoint added for control.

These results are not comparable with previous results due to host and Hive software changes over time.

Screenshot 2023-02-10 at 3.07.36 PM.pngScreenshot 2023-02-10 at 3.08.02 PM.pngScreenshot 2023-02-10 at 3.09.12 PM.png
SE Asia
West USA
Sweden

It is clearly seen that most Hive nodes have the lowest response times in the EU due to the concentration of nodes there. The results for EU servers from Sweden are mostly margin of error due to excellent peering with Privex's SE datacenter and the EU hosts.

Running the benchmark in West USA has shown that nodes located in North America perform the best there, with an exception of nodes behind Cloudflare.

The Cloudflare'd nodes definitely shined in node-scarce regions, but with a requirement that you trust Cloudflare with your API requests when you use them. That is until it gets to a very nearby API node that isn't using Cloudflare such as mine that still smoked everything else.

Conclusion

Other than a few nodes that have gone offline, the Hetzner crypto ban did not do much to spread out Hive API nodes so far, resulting in not-so-good UX in node-scarce regions. Hetzner no longer having the dominance here is still a good sign, however.

There is still quite a bit to do when it comes to improving Hive API response times around the world. A feed or post taking over a few seconds to load will cause significant abandon rates, meaning losing out on potential Hive users. Cloudflare might help a bit here with trust assumptions and assuming that it doesn't go down which can do more harm than good.

Server resource statistics

hived (v1.27.3, 2a79d97f, all plugins)

block_log file size (compressed): 389 GB
block_log.artifacts file size: 1.7 GB
shared_memory.bin file size: 21 GB

HAF db

All HAF apps (including Hivemind) belong to individual schemas in a single PostgreSQL database. This section shows the sizes of each schema in the database using the following query:

SELECT schemaname,
    pg_size_pretty(SUM(pg_total_relation_size(relid))) AS total_size,
    pg_size_pretty(SUM(pg_table_size(relid))) AS table_size,
    pg_size_pretty(SUM(pg_indexes_size(relid))) AS indexes_size
FROM pg_catalog.pg_statio_user_tables
GROUP BY schemaname;
Output
  schemaname  | total_size | table_size | indexes_size 
--------------+------------+------------+--------------
 hivemind_app | 663 GB     | 348 GB     | 315 GB
 hive         | 3422 GB    | 2269 GB    | 1153 GB
 hafah_python | 16 kB      | 16 kB      | 0 bytes
(3 rows)

Overall Postgres database

RAM usage: 50 GB
Compressed disk usage: 1.6 TB
Compression ratio: 2.50x


Hive witness footer 2.png

Sort:  

Everything you do with a public API node is publicly available. You should never have to "trust" any of them to begin with.

Well yes, what goes on the blockchain stays on the blockchain.

The API request logs that contain other info such as your IP address (which are not part of transactions) are entirely up to the node operators to decide what to do with them.

Congratulations @techcoderx! You have completed the following achievement on the Hive blockchain And have been rewarded with New badge(s)

You distributed more than 23000 upvotes.
Your next target is to reach 24000 upvotes.

You can view your badges on your board and compare yourself to others in the Ranking
If you no longer want to receive notifications, reply to this comment with the word STOP

Check out our last posts:

The Hive Gamification Proposal
Support the HiveBuzz project. Vote for our proposal!