3 ms·
It gives me a bad gut feeling when you imply that multiple instances of a service is more complex than a single instance which cannot be duplicated easily. I a
by water-your-self 4y ago
It gives me a bad gut feeling when you imply that multiple instances of a service is more complex than a single instance which cannot be duplicated easily.
I also disagree that it is inherently more costly to run a service in multiple locations.
- mrits 4y agoYou should get into the database business. A lot of money to be made there if things are so trivial for you.
- willmadden 4y agoThe sounds of crickets is deafening!
- wkoszek 4y agoHow do you NOT pay more for running double of everything + load balancers?
- poxrud 4y agoYou do not need to pay double for everything, that might have been true with traditional VPS providers but it is not the way it works with cloud services. You decide on what kind of failure you're willing to tolerate and then architect based on those requirements (loss of multiple AZ's, loss of a region, etc..). Let's say your website requires 4 application servers, you can then tolerate a single AZ failure by using 5 application servers and spreading them among 5 AZs.
- deleted 4y ago[deleted]
- nemothekid 4y agoIf you already have 4 application servers you are probably already AZ tolerant; most people concerned about "doubling everything" are only running 1 instance. Going by your example, If your website requires 1 application server, to tolerate a single AZ failure, it requires you to double the number of application servers. Example - we have a service that used Kafka in the affected region that went down. Our primary kafka instance (R=3) survived but this auxiliary one failed and caused downtime. There's no way around this other than doubling the cost.
- poxrud 4y agoThat's true, when only dealing with 1 server, you technically double the cost by adding a second server. My original comment was about "popular sites/services", that should be able to tolerate the costs and are most likely dealing with multiple servers. For a single server deployment you can still reduce your downtime (with minimal costs) by having the ASG redeploy into another AZ on a failed health check.
- Nextgrid 4y agoIn most cases the elephant* in the room is your DB - it doesn't matter where your stateless application servers are, if your stateful DB goes down you're in trouble. It's also often 1) the hardest to replicate, as replication involves tradeoffs - see CAP theorem & co and 2) the most expensive, since it needs to be pretty beefy in terms of CPU, RAM and IO - all very expensive on AWS. *: https://commons.wikimedia.org/wiki/File:Postgresql_elephant.svg https://commons.wikimedia.org/wiki/File:Postgresql_elephant....
- jjav 4y agoThose stateless app servers are the easy part. But you need to be replicating the data, with all the cost and complexity decisions that comes with it.
- _joel 4y agoOf course it's more costly, you need to ensure state between locations so by virtue there's more infra to pay for. It's not just a single instance too, there's generally a lot more infrastructure (db servers, app servers, logging and monitoring backends, message queues, auth servers... etc)
- ethbr0 4y agoAlso, people who can configure and maintain that infrastructure. It is more complicated, and it does require a different sort of person. (And checkbox-easy is sweeping edge cases and failure modes under the rug)
- aledalgrande 4y agoalso inter region replication costs bandwidth money
- throwbigdata 4y agoLots and lots of money.
- throwbigdata 4y agoI’m sorry about your feelings but you are wrong. its more expensive to have more things and it’s more expensive to have more complicated things that are also complex. And things that can fall over are inherently more complicated.