StuntProgrammer

StuntProgrammer

Media Storage and CDN with Phoenix and Elixir

In building lofi.limo, media storage and distribution naturally came up. I have songs, announcements, and background image loops which I want to store and distribute to listeners. Let’s take a look at how I’ve been able to do both without getting too fancy or spending too much money.

Most Liked

StuntProgrammer

StuntProgrammer

It seems to be. Is it giving you trouble?

AntonRich

AntonRich

@StuntProgrammer thank you for mentioning Tarsnap - is a storage where you pay for what you use. I might be using it in the future.

I have a question about them.

There are no other fees — Tarsnap has no fixed costs or minimum monthly fees.

You pay for what you use, nothing more.

So if I upload a 1gb movie there, I will pay just for 1gb storage once without a monthly fee?
But I will also pay when downloading the file?

StuntProgrammer

StuntProgrammer

There’s no /minimum/ monthly fee. There are charges for transfer in and out as well as for storage. In the scenario you describe, you’d pay for the upload, the download, and for storage as long as the data is in Tarsnap.

Transfer is billed by the byte (currently $0.00000000025/byte) and storage by the byte-month (currently $0.00000000025/byte-month).

So for your example, you’d pay $0.25 for the upload, $0.25 for the download, and $0.25 for each month the data is stored (supposing a GB is 1,000,000,000 bytes).

Where Next?

Popular Backend topics Top

First poster: bot
Julia is a scientific programming language that is free and open source.1 It is a relatively new language that borrows inspiration from l...
New
First poster: bot
Why Zig When There is Already C++, D, and Rust? No hidden control flow No hidden allocations First-class support for no standard library...
New
AstonJ
If you’re interested in Rust this is worth a read :smiley: Technology from the past come to save the future from itself Hi I have be...
New
CommunityNews
Idioms for the D Programming Language This thread was posted by one of our members via one of our news source trackers.
New
First poster: bot
Django 3.2 is just around the corner and it’s packed with new features. Django versions are usually not that exciting (it’s a good thing!...
New
First poster: bot
Just a small test with lists in cython. Considering echosystem, multithreading and ease of use, Julia is a clear winner here.
New
CommunityNews
Functional programming is an increasing popular programming paradigm with many languages building or already supporting it. Go already su...
New
First poster: AstonJ
Ruby’s Struct is one of several powerful core classes which is often overlooked and under utilized compared to the more popular Hash clas...
New
tonyxrandall
As DoorDash transitioned from Python monolith to Kotlin microservices, our engineering team was presented with a lot of opportunities to ...
New
StuntProgrammer
In building lofi.limo, media storage and distribution naturally came up. I have songs, announcements, and background image loops which I ...
New

Other popular topics Top

dasdom
No chair. I have a standing desk. This post was split into a dedicated thread from our thread about chairs :slight_smile:
New
DevotionGeo
I know that -t flag is used along with -i flag for getting an interactive shell. But I cannot digest what the man page for docker run com...
New
New
dimitarvp
Small essay with thoughts on macOS vs. Linux: I know @Exadra37 is just waiting around the corner to scream at me “I TOLD YOU SO!!!” but I...
New
rustkas
Intensively researching Erlang books and additional resources on it, I have found that the topic of using Regular Expressions is either c...
New
Maartz
Hi folks, I don’t know if I saw this here but, here’s a new programming language, called Roc Reminds me a bit of Elm and thus Haskell. ...
New
foxtrottwist
A few weeks ago I started using Warp a terminal written in rust. Though in it’s current state of development there are a few caveats (tab...
New
AstonJ
If you want a quick and easy way to block any website on your Mac using Little Snitch simply… File > New Rule: And select Deny, O...
New
AnfaengerAlex
Hello, I’m a beginner in Android development and I’m facing an issue with my project setup. In my build.gradle.kts file, I have the foll...
New
mindriot
Ok, well here are some thoughts and opinions on some of the ergonomic keyboards I have, I guess like mini review of each that I use enoug...
New