Two weeks after launch > "We have 10k users and counting, why didn't you architect this for scale?"
Always assume you underestimated the scope of the project.
Two weeks after launch > "We have 10k users and counting, why didn't you architect this for scale?"
Always assume you underestimated the scope of the project.
Now I always mostly just assume (capacity asked / 10) is more than enough!
There is a major benefit to UUIDs besides server-side scaling concerns: you can generate them offline in mobile apps and other client-side applications.
With serial primary keys, you are often stuck between waiting for a server round trip before saving data locally, or inventing complicated solutions for referring to not-yet-uploaded data locally.
Works fine for something one team uses, works... not fine for something the entire corporation uses.
My direct boss was the CFO and he was cheap as hell. It's amazing the things we can come up with when we have to.
Curious as to why you see RDS as a 'crappy' option??
Given the choice of building and maintaining a MySQL box in the corner of your bedroom and hosting it on RDS - I know which way I would go (and I have done both over the years).
If you are talking 'scaling' in terms of the OP's article, then RDS is almost a no brainer, and you can scale your instances (and add replicated instances etc.), hide it behind a VPN, set up firewalls to prevent DDoS attacks all in a matter of minutes, with a few mouse clicks.
Given that spooling up a RDS instance is quicker and cheaper than buying all the hardware and spending time installing and configuring an SQL server, then if time to market is a critical factor, you would choose RDS over a home grown solution, wouldn't you?
[Edit: I just realised that this is actually the point you were making, and I got sidetracked by my above question]
I've never heard of a PM saying such a thing.
If you're a startup, go the other way.