개발시 계층별로 언어와 프레임워크는 통일하는 것이 좋다.
메모리와 디스크의 속도 차이는 약 10~100만배이다.
- 캐시(10의 -9승) : 나노초,
- 메모리(10의 -6승) : 마이크로초,
- 디스크(헤드의 이동: 10의 -3승, 원반의 회전 : 10의 -3승) : 수 밀리초가 소요된다.
OS는 이와 같은 속도차를 해결하기 위해, 한번에 읽는 용량을 4KB로 정하고, 비슷한 데이터를 국지적으로 모아두는 전략을 취한다.
메모리와 디스크의 전송 속도 차이는 약 100배이다.
- 메모리 - CPU(혹은 캐시) : 7.5GB/s
- 디스크 - CPU(혹은 캐시) : 58MB/s
확장성과 규모조정을 고려할 때엔 항상 Scale-up, Scale-out이 언급된다. Scale-up은 고가의 장비를 사용하는 것이고, Scale-out은 저가의 장비를 여러대 사용하여 해당 시스템을 확장하는 것이다.
AP서버의 부하는 CPU문제이므로 단순히 Scale-out하면 문제가 해결된다. 다만 문제는 DB측에서 발생하는 I/O 부하인데, DB는 데이터의 동기화 문제가 있으므로 쓰기(Write)를 단순하게 분산할 수 없다. DB확장성에는 많은 어려움이 존재한다.
(76/390)