Replies: 2 comments 8 replies
-
Most CDNs charge per request, plus per byte transferred. That charging structure makes it irrelevant how quickly individual shows are downloaded. This proposal will not help the cost of bandwidth. It seems to me that "excessive bandwidth" is not the problem here; but, instead, your systems can't deal with high concurrency. The internet can deal with high concurrency; and a standard Cloudfront + S3 bucket solution will happily deal with 16.5TB; but that'll cost you a similar amount to your current bill (about AUD $2000). There is a way to mitigate bandwidth costs - to cut down on the bandwidth of the asset you're transferring. Buzzsprout defaults to 96kbps mono mp3, which for most podcasts is just fine. Surely, better and more appropriate audio encoding will have a better outcome. A HEAD request is still a request, by the way - for which you get charged. To periodically poll will increase your cost. |
Beta Was this translation helpful? Give feedback.
-
Personally if Castamatic did automatically download every show in a podcast at once I would consider it a (nasty) bug and would love to be alerted by the hosting company or the user. If it did happen let me know, it shouldn't absolutely do it, but bugs.... But... if the user manually requests all the episodes in a show I think HTTP 429 is the right choice, it's not the app's duty to tell the user what he can and can't download, I think it's better if the host's server establishes that. I'll look into handling 429 appropriately. |
Beta Was this translation helpful? Give feedback.
-
So I have no issues with apps downloading creators shows, just to be clear. The concern is it seems some apps just auto-download every single episode in the RSS feed, and with us supporting shows that have over 1000 episodes in the rss feed, I would really like the idea that we can suggest a limit for an app say 10 episodes per minutes that the app can download.
I get that it's an unpopular topic, but server load is a real issue which we experienced ourselves when we transferred ~30 shows at once to PodToo. We did spin up more servers and we did manage it to the best of our ability but I did not expect that applications would try and re-download every file.
What I thought industry standard was (I was wrong):
'Retry-After'
For examplereturn res.set('Retry-After', '10').status(429).send(checkResult.message);
I understand in this day an age, people think bandwidth doesn't cost money, but when you use CDN providers they do.The Real Maths:
16.5TB of data at 0.12c per GB costs us $1,980 and that is just one show in 7 days. Now we could do what other hosting providers are doing which is pass that costs onto the creator and make them pay it, or we could use the HTTP protocols to our advantage and one such method is 429, its a polite way to ask your app to slow down.
So what is PodToo rules?
10 files per 60 seconds, can be download - a max of 100 files per day per show(unless you verify that the user is a real listener and not someone who subscribed and hasn't been listening).
Yes BTW we do want to up our limits and work with the community but we mostly agree "A download is not a listener", it's up to us hosting providers to come up with a solution that keeps everyone happy (or we try too).
From the Creator side
"I switched to PodToo, because of the high bandwidth costs from my old provider" - Damian.
So if excessive bandwidth is a real reason that creators are switching hosting providers, then we need to think about how do players work with us hosting providers to make sure that is no longer a thing that makes creators want to switch hosting providers. We can all play apart in saving bandwidth and lowering the overall costs for hosting providers and creators.
Beta Was this translation helpful? Give feedback.
All reactions