In practical usage an intelligent decision on usability of round-robin DNS must be made, before turning to more expensive and involved solutions. I think the article is a bit misleading on that subject.
For example, the article states:
"When the first request arrives at the DNS server, it returns the IP address 18.104.22.168, the first machine. On the second request, it returns the second IP address: 22.214.171.124. And so on. On the fourth request, the first IP address is returned again. "
Experiment shows ("ipconfig /flushdns" followed by a client request to a round-robin DNS name look-up followed by ipconfig /displaydns) that the DNS returns ALL the ip-addresses except that on each invocation the order of returned ip-addresses changes in a round-robin fashion.
Obviously from the above, it's up to the implementation of the client and the session management techniques of the server if DNS round-robin posseses any high-availability characteristics. Is server-affinity critical or only desirable most of the time? Article seems to imply it's critical, which is not correct for many popular implementations. Round-robin DNS provides server-affinity kept till TTL (time-to-live) expiration, so it is perfect when server-affinity is performance desirable.
As far as high-availability is concern, it was not clear from the article if a browser-client attempts to re-translate the name to an ip-address in case of a failure. Note, re-translate does not mean necessarily a new DNS lookup, but going to the next ip-address in the list of name translations cached in registry.