- 시스템 디자인의 핵심은 사용자 증가에 따른 확장(scalability)이다. 🏗️
- 초기 단계에서는 단일 서버를 사용하지만, 트래픽 증가에 따라 veritcal scaling (하드웨어 업그레이드) 또는 horizontal scaling (서버 추가)을 고려해야 한다. 📈
- 데이터베이스에는 관계형(RDBMS)과 비관계형(NoSQL)이 있으며, 데이터 특성과 사용 규모에 따라 적절한 종류를 선택해야 한다. 🗃️
- 데이터베이스 분산(sharding)과 캐싱(caching)은 성능 향상과 확장성을 제공한다. 🧩
- 로드 밸런서를 통해 서버 부하를 분산시켜 시스템 안정성을 높일 수 있다. ⚖️