These are fallacies of distributed systems, most of these are the reasons you want to have a distributed system. You build distributed systems because you know
- Servers restart, so you replicate and load balance
- Dependencies matter, so you build circuit breakers, and health checks
- Infra is heterogeneous, this is why you use containers
- Hardware is unreliable, again, replicate, load balance, and HA
- Provide APIs for your clients to communicate with your service
- Logging and metrics are expensive, collect what you need, prom helps with this, logging is not fully solved
- Do people really think there are no bugs?