3 ms·
I'm all for choosing the best tool for the job (even if it's against conventional wisdom), but I don't really follow the arguments made here. He talks about ho
by ageitgey 9y ago
I'm all for choosing the best tool for the job (even if it's against conventional wisdom), but I don't really follow the arguments made here.
He talks about how he launched a "high traffic" Aliexpress-style marketplace using an embedded K/V store.
Is the marketplace website running off of a single machine with no failover plan when the host machine dies? Is there no need to generate sales reports from external applications that want to pull data from the same database? Is having no fixed schema really an advantage when dealing with orders and financial data? Are saving serialization time and "tcp transport costs" by keeping the app and data on the same machine a big advantage given that everything is a huge single point of failure?
I'm not trying to be too critical. If you want to launch an app very quickly and only have the budget for one machine to ever run it on and you are the only consumer of the generated data, I could see how this would be an appealing approach. But it also dismisses the important reasons most services aren't designed and deployed this way (redundancy, sharing data with other applications, financial data integrity, extensibility, etc).