Hacker News new | ask | show | jobs
by shagie 1107 days ago
It's possible. He could have also changed the rate at which it polls. ~1B calls a day isn't out of the realm of possibility.

https://www.reddit.com/r/redditdev/comments/13wsiks/comment/...

> On March 14th, Apollo made nearly 1 billion requests against our API in a single day, triggered in part by our system outage. After the outage, Apollo started making 53% fewer calls per day. If the app can operate with half the daily request volume, can it operate with fewer?

(note: 53% less calls is about going from a 6 second window to a 10 second window)

Note also that 100k users is the user base at that time and 1.3 is when the subscription ($5/month) was added for push notifications. He noted that that would be something that he would have to pay to support for a server to do those requests. It is quite likely that the number of users who are signed up at $5/month for push notifications is less than the total user base.

Having dabbled with the API, if he is doing push notifications on a short time window, he's making a call with at least that frequency.

https://apolloapp.io/notifications-faq/

> Wait, why does it cost money? I already paid for Pro!

> Apollo Pro unlocks extra features and is a one-time fee, but Apollo Ultra includes a notification server that has ongoing monthly costs to me (the developer) to rent and maintain that add up and can't really be covered by the fee associated with Pro (especially when trying to keep Pro affordable at a few bucks). I'd love to give it away as part of Apollo Pro, but I don't want to potentially jeopardize the future of Apollo. As a result I also tried to keep the price very reasonable at under a dollar a month.

And yes, the price went up when you look at the current in app purchases that are displayed on the App Store page.

1 comments

Linking to Reddit admin posts isn't going to do you any favours. The Apollo dev has addressed, acknowledged, apologized, and fixed that March 14th problem and it's all detailed in his post [1]. He has given everyone the receipts, phone recordings, source code, and emails detailing his conversations with Reddit. There is no reason that I've seen to not take his word at face value or think he's trying to mislead people or make Reddit look bad for bogus reasons.

The Reddit admins have done nothing but lie and try to bend the truth and I would never trust their word after this debacle. Christian has far more credibility than the Reddit admins do at this point and their "well Apollo reduced usage by 50% one time with a 24 hour turnaround so that means their app sucks and surely they can do it again if they tried a little bit!" argument is, for lack of a better word, bullshit.

That isn't how software works, Reddit knows software doesn't work that way, and it's such a ridiculous conclusion to come to that I don't even know if it's a fallacy that has a name but the Reddit admins are definitely not arguing in good faith on this.

[1] https://old.reddit.com/r/apolloapp/comments/144f6xm/apollo_w...

Feel free to ignore that then.

The push notification server is described doing 8640 requests per day (1 call every 10 seconds) for each user.

An account can sign up multiple users ( https://apolloapp.io/notifications-faq/ )

> How many accounts/devices does this work with?

> There's no limit (but please be reasonable). If you have a main account and five alternate accounts, and an iPhone and two iPads, you can get notifications for all of those accounts on all of those devices for the same fee.

With 50k subscriptions that he needs to refund the floor on this is that he's doing 432M requests per day for the push notification server.

If that is one request every 6 seconds instead of 10 (as described in the 1.3 release) that is 720M requests per day for a floor.

The backend server for Apollo handling push notifications is doing something with some consistent load that is likely showing up on the same API key as the mobile client app is.

When the backend server and the mobile app are taken in aggregate, the description that Reddit sees about how many requests per day the API key for Apollo makes is in rough agreement with those floor numbers plus what one would expect a mobile human user the doing.

I suspect that with the outage that the push notification server was scaled back from 1 request every 6 seconds to 1 request every 10 seconds because the backoff for the push notification server was not working leading to an excess of calls and an increase in the server load and egress causing an increase in the amount the node was going to get billed at. I admit that is pure speculation.

From Reddit's point of view, they only see "this request was made with this API key in the header" and can't distinguish mobile app calls from push notification server calls. When they say "this is how many requests that Apollo is making" they are looking at that number. When Christian is saying "Apollo is making X calls per day on average" he is referring to the mobile app requests (which are more efficient than Reddit's mobile app) and not including other uses of the API key.