The best way (IMHO) is to treat these issues at infrastructure level rather than application-level. Check projects such as Ambassador, Kong, Istio, Linkerd. And it's not just rate limiting, it's all kinds of policies, security, circuit-breakers, canary deployments, etc.
We're a place where coders share, stay up-to-date and grow their careers.
We strive for transparency and don't collect excess data.