I wonder what optimizations were done so you can only pay for 1M+ hits?
I wonder what optimizations were done so you can only pay for 1M+ hits?
The whole app lives in Firebase. Once a user hits a profile page, a cloud function runs, get the data from the DB, constructs the page, and caches it at the CDN for 24h.
If a user add/delete something on their profile, the cache is removed. Otherwise, the content is served from cache only with no need for a lot of computation.
With this, you can still get your way through Firebase's generous free tier https://firebase.google.com/pricing
So it's not covering 1M+ invocations per month on the free tier.
That's a really naive view of how hits are distributed over time.
Of course, hits are not homogeneously distributed. But an average of less than one hit a second leaves more than enough leeway for any reasonable clustering you may come with. Any small computer can handle thousands of times more than that.
There is some questions about bandwidth costs, that can vary wildly.