Comment by brianwawok
9 years ago
Agreed. To keep it simple day 1, on a single box put your entire stack.
1 Django web server
1 redis queue (can both caching and work queue and results queue)
1 Celery process for async tasks
1 PostgreSQL instance
(You can do the same with other stacks, I just know them less well)
Fairly standard stack. You can find preconfigured setups that can get this going in 10 minutes or less. And boom, you just made a stack that can scale from a 1 user POC to a 10 million user product.
This lasts until you get past 1 box stage.. and at that point you split it up by function. At that point you can go to 1 celery worker to 1000 celery workers by just pushing a button to make more boxes. Seems a pretty good setup.
Vs say, trying to skip the redis part (which took all of 4 minutes) and writing a bunch of database logic, and then you have to rewrite it all down the road.
I am all for start simple. But start simple with a path to the future. If your path to the future is "rip this all out and rewrite it", you should at least ponder what you are doing. Did I REALLY save that much time by using my database as a message queue??
No comments yet
Contribute on Hacker News ↗