One of the topics Blocktrades talked about in the monthly Hive core meeting, and I put it into my weekly report from yesterday, is the recent slowness of the network and what they identified as a potential cause.
As an almost 6-year-old member of this community, I am used to various forms of growing pains, that's why a little slowness (or even failure to load comments altogether, which makes the problem worse because another call to retrieve the post and the comments need to be made when you refresh) didn't bother me. I barely noticed them.
But someone who barely came from the Web 2 world would surely notice them, and they don't have any roots and friends around yet.
Unfortunately, it's not the first time our Hive's API nodes have been overwhelmed. Now, some spiders were temporarily blocked to ease the situation. I don't know any details about what spiders were blocked and what they were looking for. Usually, these kinds of spiders are made smartly, to not interfere with the regular activity of the websites that are spidered. But I guess some small-scale, focused, spiders are not only impolite but outright rude.
However, if we think about the difference in speed between a centralized database and an API node pulling information from the chain or a database, the spiders might have been well programmed, it's just a matter of how long it takes for them to do their spidering and with how much load to the API nodes.
Right now, after further investigations as a simple user on my part, it seems the slowness only appears in PeakD and hive.blog, among the major front ends. INLEO and Ecency were very fast. But I think it may be an irrelevant test. I believe Ecency has a private full node too, so both INLEO and Ecency could be using the information from their nodes without making any calls to a different API node to receive them. That would make this operation as quick as accessing a local database if I understand things correctly. Of course, their nodes still need to sync with the rest of the network, but for relatively busy front ends (for Hive's size), it's much better than making an API call for every operation of every user.
What I like is that Blocktrades said the new HAF 2.0 has sped up some calls, particularly get account history
, which is one of the most resource-intensive calls, in some cases by 100x. Now, the question is, who uses HAF 2.0? Is it used in production already?