Cache system

2022. 2. 27. 10:16Cloud Native

    목차
반응형

Cache system?

값 비싼 연산 결과를 caching하여 뒤이은 요청을 빠르게 처리할 수 있도록 한다. 

 

web server는 cache에 data를 요청한다.

만약 cache miss가 발생하면 cache는 DB에서 data를 load 한다. 

cache는 web server에게 data를 전달한다. 

 

장점

  • 성능 향상
  • DB 부하 감소
  • cache tier를 독립적으로 scale-out 할 수 있임

 

캐시 전략

1) read-through caching

  • web server는 cache server에 응답이 있는지 확인
    • 있다면 이를 client에 반환
  • 없다면 DB에 질의하여 cache에 저장한 뒤 반환

 

Cache system types

  • Redis
    • open source in-memory data structure store
      • used as DB, cache, and message broker
  • Memcached
    • distributed memory object caching system
    • open source
    • key-value store
    • high performance
      • multithreaded
  • common
    • in-memory DB
    • NoSQL
      • key-value pairs
    • open source
  • difference
    • data types
      • Redis: specific data types
        • string, List, Hash, set, sorted set
      • Memcahed: only string
    • persistence
      • Redis support persistence to disk
    • AOF log
      • Redis supports
    • RDB snapshot
      • Redis database backup
    • Data Length
      • redis data key and strings can be up to 512 MB in length

 

Memcached는 기본적인 기능(string) 만 지원하기에 prototype으로 사용할만하나, enterprise 급의 개발이 필요할 시 Redis를 사용하는 것을 고려해야 한다. 

반응형

'Cloud Native' 카테고리의 다른 글

Kafka, RabbitMQ, GCP pub/sub  (0) 2022.02.27
Chat System  (0) 2022.02.27
DB replication (다중화)  (0) 2022.02.27
Redis  (0) 2022.02.26
WEB, WAS 란  (0) 2022.01.08