[백엔드] 21.10.13

jaypyon·2021년 10월 13일
0
  1. 개발시 계층별로 언어와 프레임워크는 통일하는 것이 좋다.

  2. 메모리와 디스크의 속도 차이는 약 10~100만배이다.

    1. 캐시(10의 -9승) : 나노초,
    2. 메모리(10의 -6승) : 마이크로초,
    3. 디스크(헤드의 이동: 10의 -3승, 원반의 회전 : 10의 -3승) : 수 밀리초가 소요된다.
  3. OS는 이와 같은 속도차를 해결하기 위해, 한번에 읽는 용량을 4KB로 정하고, 비슷한 데이터를 국지적으로 모아두는 전략을 취한다.

  4. 메모리와 디스크의 전송 속도 차이는 약 100배이다.

    1. 메모리 - CPU(혹은 캐시) : 7.5GB/s
    2. 디스크 - CPU(혹은 캐시) : 58MB/s
  5. 확장성과 규모조정을 고려할 때엔 항상 Scale-up, Scale-out이 언급된다. Scale-up은 고가의 장비를 사용하는 것이고, Scale-out은 저가의 장비를 여러대 사용하여 해당 시스템을 확장하는 것이다.

  6. AP서버의 부하는 CPU문제이므로 단순히 Scale-out하면 문제가 해결된다. 다만 문제는 DB측에서 발생하는 I/O 부하인데, DB는 데이터의 동기화 문제가 있으므로 쓰기(Write)를 단순하게 분산할 수 없다. DB확장성에는 많은 어려움이 존재한다.

(76/390)

profile
DGU CSE

0개의 댓글