3 ms·
Perhaps I misread, but it sounds like the author never managed to get Fargate to run without even a minimum of 3% failures? That to me sounds like an astoundin
by bastawhiz 8y ago
Perhaps I misread, but it sounds like the author never managed to get Fargate to run without even a minimum of 3% failures?
That to me sounds like an astoundingly high number, especially for the amount of resources dedicated to the test (400GB of memory and 200 CPUs). Hell, if you're monitoring uptime, that's one nine (97% success).
I can't believe that this is a well-configured setup. Running 50 instances with four CPUs each at a total of ~100rps means that half of the CPUs are probably doing exactly nothing (and if my understanding is correct and they're using Flask in a single-threaded way, 150 of the 200 CPUs are going to be idle).
Triggering SNS is an API call. Assuming that's all the test application is doing, you hardly need one server to do this. I'd bet that you could make 100 simultaneous API calls from a stock Macbook Pro with a small handful of Node or Go processes without even making your CPU spin up.
If Fargate can't handle 100rps (to make a single API call per request) with <10 instances, it's a useless product. But I find it hard to believe that Amazon would put something so absolutely incapable into the wild. With the specs the author put up, that's the equivalent of ~$10/hr (if I'm reading their pricing page correctly). You could run 380 A1 instances, 58 t3.xl instances, or two m5a.24xlarge instances for that price.
- maldeh 8y agoThe author didn't spend much time discussing the application load balancer, wonder if it was the source of misconfiguration (besides their http server itself).
- jasonlotito 8y ago> If Fargate can't handle 100rps (to make a single API call per request) with <10 instances, It can. Easily. I've done it. > I can't believe that this is a well-configured setup. It's not. The author hasn't provided anywhere near enough information to gather any useful information from this. I don't know why there were errors (the other doesn't give any precise information), I don't know how long the tests were run, the state of instances before the tests were run, what operations were being performed, how the testing was being performed, or numerous other things. Simply put, it's not useful.