ν™œμš© 예제

Counting

Strings

  • λ‹¨μˆœ 증감 μ—°μ‚°
  • INCR / INCRBY / INCRBYFLOAT / HINCRBY / HINCRBYFLOAT / ZINCRBY

Bits

  • 데이터 μ €μž₯곡간 μ ˆμ•½
  • μ •μˆ˜λ‘œ 된 λ°μ΄ν„°λ§Œ μΉ΄μš΄νŒ… κ°€λŠ₯
    • userid 값이 0 μ΄μƒμ˜ μ •μˆ˜κ°’μΌ λ•Œλ§Œ μΉ΄μš΄νŒ…μ΄ κ°€λŠ₯
    • μ‹œν€€μ…œν•œ 값이 없을 λ•Œμ—λŠ” μ‚¬μš© λΆˆκ°€
  • SETBIT / BITCOUNT

HyperLogLogs

  • λŒ€λŸ‰μ˜ μœ λ‹ˆν¬ν•œ 데이터λ₯Ό μΉ΄μš΄νŒ…ν•  λ•Œ 적절
  • setκ³Ό λΉ„μŠ·ν•˜μ§€λ§Œ μ €μž₯λ˜λŠ” μš©λŸ‰μ΄ 맀우 μž‘μŒ
  • μ›Ήμ‚¬μ΄νŠΈμ— λ°©λ¬Έν•œ μœ λ‹ˆν¬ν•œ IP 수 / ν•˜λ£¨ 쒅일 ν¬λ‘€λ§ν•œ URL 수 / κ²€μƒ‰μ—”μ§„μ—μ„œ κ²€μƒ‰λœ μœ λ‹ˆν¬ν•œ 단어 수
  • PFADD / PFCOUNT / PFMERGE

Messaging

Lists

  • 자체적으둜 blocking κΈ°λŠ₯을 μ œκ³΅ν•΄μ„œ Event Queue둜 μ‚¬μš© → λΆˆν•„μš”ν•œ polling을 막을 수 있음
  • ν‚€κ°€ μžˆμ„ λ•Œλ§Œ μ €μž₯ κ°€λŠ₯ - LPUSHX / RPUSHX

Streams

  • 둜그 μ €μž₯
  • append-only
  • μ‹œκ°„ λ²”μœ„ 검색 / μ‹ κ·œ μΆ”κ°€ 데이터 μˆ˜μ‹  / μ†ŒλΉ„μžλ³„ λ‹€λ₯Έ 데이터 μˆ˜μ‹ (μ†ŒλΉ„μž κ·Έλ£Ή) - kafkaμ—μ„œ 차용
  • λ©”μ‹œμ§• 브둜컀 μ—­ν• 
  • XADD : hash처럼 key-value 쌍으둜 μ €μž₯

 

μž₯μ•  포인트

RedisλŠ” Single Thread λΌλŠ” 점을 μžŠμ§€ 말자!

  • keys * → scan으둜 λŒ€μ²΄
  • 였래 κ±Έλ¦¬λŠ” μ»€λ§¨λ“œλŠ” μ‚¬μš©ν•˜μ§€ 말자
  • hash, sorted set μ“Έ λ•Œ ν•˜λ‚˜μ˜ 킀에 100만개 μ΄ν•˜λ‘œλ§Œ λ‹΄μž
  • Flush All : ν‚€ λ‹€ 날렀버리기 → 이거 ν•˜λŠ” λ™μ•ˆ λ‹€λ₯Έκ±° λͺ»ν•¨

+ Recent posts