Production Twitter on one machine? 100Gbps NICs and NVMe are fast
Getting everything onto one machine works great until... it no longer fits on one machine.<p>You add another feature and it requires a little bit more RAM, and another feature that needs a little bit more, and.. eventually it doesn&#x27;t all fit.<p>Now you have to go distributed.<p>And your entire system architecture and all your development approaches are built around the assumptions of locality and cache line optimization and all of a sudden none of that matters any more.<p>Or you accept that there&#x27;s a hard ceiling on what your system will ever be able to do.<p>This is like building a video game that pushes a specific generation of console hardware to its limit - fantastic! You got it to do realtime shadows and 100 simultaneous NPCs on screen! But when  the level designer asks if they can have water in one level you have to say &#x27;no&#x27;, there&#x27;s no room  to add screenspace reflections, the console can&#x27;t handle that as well. And that&#x27;s just a compromise you have to make, and ship the game with the best set of features you can cram into that specific hardware.<p>You certainly <i>could</i> build server applications that way. But it feels like there&#x27;s something fundamental to how service businesses operate that  pushes away from that kind of hyperoptimized model.