tl;dr down below
As a university-trained, big-company-bred, C-was-my-first-language, I-think-about-data-structures-and-algorithm-in-the-shower engineer, I've always built everything I did with a very specific thought in the back of my head: "Is this solution efficient?"
However, as I've started getting more and more into developing web services in my spare time, I find myself struggling not with a mandate for speed, but rather with the sheer complexity of the system I'm trying to implement. Web applications are complicated beasts; there's a lot going on that you need to fit in your head all at once, and thinking about efficiency only makes it worse.
Therefore I ask you: How much "fuck it, I'll use off-the-shelf components" and "fuck it, it'll run in linear time" can I get away with for the sake of pushing something out there? Does the quality of modern frameworks and hardware grant me a certain amount of slack for free?
tl;dr
I have never deployed or supported an entire user-facing web application. Can you please give me an idea of the sort of load you can handle with a typical application framework and a typical hardware deployment? Bonus points for numbers like requests per second or concurrent connections. I'd really love to know how many requests you serve with how many machines.
Edit: I anticipate the "Why worry about performance when you don't have users?" response, and I thank you in advance. However, the last thing I want to happen is to gain users, only to discover that my potentially popular application is crippled by its being too slow and my being too busy to fix it.
As a university-trained, big-company-bred, C-was-my-first-language, I-think-about-data-structures-and-algorithm-in-the-shower engineer, I've always built everything I did with a very specific thought in the back of my head: "Is this solution efficient?"
However, as I've started getting more and more into developing web services in my spare time, I find myself struggling not with a mandate for speed, but rather with the sheer complexity of the system I'm trying to implement. Web applications are complicated beasts; there's a lot going on that you need to fit in your head all at once, and thinking about efficiency only makes it worse.
Therefore I ask you: How much "fuck it, I'll use off-the-shelf components" and "fuck it, it'll run in linear time" can I get away with for the sake of pushing something out there? Does the quality of modern frameworks and hardware grant me a certain amount of slack for free?
tl;dr
I have never deployed or supported an entire user-facing web application. Can you please give me an idea of the sort of load you can handle with a typical application framework and a typical hardware deployment? Bonus points for numbers like requests per second or concurrent connections. I'd really love to know how many requests you serve with how many machines.
Edit: I anticipate the "Why worry about performance when you don't have users?" response, and I thank you in advance. However, the last thing I want to happen is to gain users, only to discover that my potentially popular application is crippled by its being too slow and my being too busy to fix it.