3 ms·
I have a related question that most would probably consider relevant but which this article (quite rightly) doesn't answer (as it's not relevant for Netflix).
by exikyut 9y ago
I have a related question that most would probably consider relevant but which this article (quite rightly) doesn't answer (as it's not relevant for Netflix).
Let's say I want to prepare a server to respond quickly to HTTP requests, from all over the world.
How do I optimize where I put it?
Generally there are three ways I can tackle this:
1. I configure/install my own server somewhere
2. Or rent a preconfigured dedicated server I can only do so much with
3. I rent Xen/KVM on a hopefully not-overcrowded/oversold host
Obviously the 1st is the most expensive (I must own my own hardware; failures mean a trip to the DC or smart hands), the 2nd will remove some flexibility, and the 3rd will impose the most restrictions but be the cheapest.
For reference, knowing how to pick a good network (#1) would be interesting to learn about. I've always been curious about that, although I don't exactly have anything to rack right now. Are there any physical locations in the world that will offer the lowest latency to the highest number of users? Do some providers have connections to better backbones? Etc.
#2 is not impossible - https://cc.delimiter.com/cart/dedicated-servers/&step=0 https://cc.delimiter.com/cart/dedicated-servers/&step=0 currently lists a HP SL170s with dual L5360s, 24GB, 2TB and 20TB bandwidth @ 1Gbit for $50/mo. It's cool to know this kind of thing exists. But I don't know how good Delimiter's network(s) is/are (this is in Atlanta FWIW).
#3 is what I'm the most interested in at this point, although this option does present the biggest challenge. Overselling is a tricky proposition.
Hosting seems to be typically sold on the basis of how fast `dd` finishes (which is an atrocious and utterly wrong benchmark - most tests dd /dev/zero to a disk file, which will go through the disk cache). Not many people seem to setup a tuned Web server and then run ab or httperf on it from a remote with known-excellent networking. That's incredibly sad!
Handling gaming or voice traffic is probably a good idea for the target I'd like to be able to hit - I don't want to do precisely that, but if my server's latency is good enough to handle that I'd be very happy.
- tomsthumb 9y agoWouldn't dd'ing /dev/zero create an FS hole in your target file on many file systems? A similar (but maybe not isomorphic) situation in the Michael Kerrisk book is one of the excercises, and I'd bet ZFS does similar but suddenly we've assumed a lot of context.
- exikyut 9y agoGood question. The 0th-step answer is that the people using `dd` are generally going to be using all OS defaults, including for the filesystem. For what it's worth, I know that dd'ing /dev/zero makes df show a smaller value. AFAIK, df (for ext4 in my case) isn't reading a logical abstraction of capacity as arbitrarily decided upon by a bunch of layers, but is straightforwardly reporting the free blocks on disk.
- brians 9y agoDepends in part on why you want it there. For many answers, you get a CDN. Even if you have entirely dynamic and incompressible content, the bandwidth-delay product's role in limiting TCP bandwidth means two connections with half the delay each are a huge improvement.