Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • 조건에 따른 상태저장 : 특정 사용자가 Hello를 하면 사용자별 카운트 1증가 , 기분이 나쁜 상태일때는 Hello를 거부 카운트 증가없음
  • 상태읽기 : 특정 사용자 Click 카운트를 확인 하기 위해 1000번 조회후 성능측정
  • 추가 미션 : 마지막 상태값 저장뿐만 아니라 상태 로그를 저장해 시계열분석이 가능하도록 데이터 처리


성능표

  • Total time for 100 Hello commands for Write: 73 ms
  • Average time per Hello command for Write: 0.73 ms
  • Total time for 1000 HelloCount for Read commands: 75 ms
  • Average time per HelloCount command: 0.075 ms


성능표를 먼저 공유하면~  저장시 마지막 상태는 Redis에 저장을 하고, 로그성은 Kafka에 저장합니다.

해당 객체가 상태를 가지고 있기때문에 읽기시 Redis로부터 값을 읽을 필요없이 로컬에서의 상태값값을 반환합니다.

  • Redis 를 1000번 호출한다는것은 인메모리에서 1000번 호출할것같지만 사실 네트워크 호출 1000회가 포함되어 있습니다.
    • 상태없는 프로그래밍에서 최적화 지점은 Redis가 고성능이라고 믿고 있지만 네트워크 호출 횟수조차 줄여~ 단일지점 저장소의 부하를 어플리케이션에 분산하는것에 있습니다.