Recent Posts
                                        
                                    
                                    
                                        Recent Comments
                                        
                                    
                                    
                                        Link
                                        
                                    
                                | 일 | 월 | 화 | 수 | 목 | 금 | 토 | 
|---|---|---|---|---|---|---|
| 1 | 2 | 3 | 4 | |||
| 5 | 6 | 7 | 8 | 9 | 10 | 11 | 
| 12 | 13 | 14 | 15 | 16 | 17 | 18 | 
| 19 | 20 | 21 | 22 | 23 | 24 | 25 | 
| 26 | 27 | 28 | 29 | 30 | 31 | 
                                        Tags
                                        
                                    
                                    - Java
- 문제풀이
- zookeeper
- Python
- 프로그래머스
- 코드워
- 튜토리얼
- 주키퍼
- dynamic programming
- Linux
- gradle
- programmers
- 리눅스
- golang
- go
- docker
- 동적프로그래밍
- boj
- HBase
- DP
- Go언어
- 알고리즘
- codewars
- 자바
- redis
- 스칼라
- 파이썬
- scala
- leetcode
- OOM
                                        Archives
                                        
                                    
                                    - Today
- Total
파이문
[Redis] 레디스는 싱글 쓰레드인데 어떻게 동시에 접근하지? 본문
728x90
    
    
  왜 레디스는 싱글쓰레드로 되어 있을까?
- 프로그래밍이 쉽다.
- 동시성에서 도움이 된다. (동시성과 병렬성은 다르다!)
- CPU 가 보틀넥이 아니다.
- 비용이 효율적이다.
레디스가 싱글 쓰레드인데 어떻게 동시에 접근하지?
우선 동시성에 의미를 다시 생각해봐야 한다.
서버에서 동시성과 병렬성은 다른 컨셉을 갖고 있다.
서버에서 동시성 I/O 를 지원한다는 의미는 하나의 계산 단위만을 가진 클라이언트가 여러 흐름을 실행함으로써, 서버가 여러개의 클라이언트에 서비스를 제공할 수 있다는 의미이다.
병렬은 서버가 여러가지 일을 동시에 할 수 있다는 것이다.
예를 들면 바텐더 여러 고객들을 보고 하나의 음료만 만든다는 것은 동시성은 갖고 있지만 병렬성은 없다는 것이다.
참고
- stackoverflow.com/questions/45364256/why-redis-is-single-threadedevent-driven
- stackoverflow.com/questions/10489298/redis-is-single-threaded-then-how-does-it-do-concurrent-i-o
'TIL' 카테고리의 다른 글
| 셸 업그레이드 후 zsh 가 안되는 문제 (0) | 2020.11.06 | 
|---|---|
| Java ShutdownHook With Signal (0) | 2020.10.29 | 
| [HBase] 테이블 별 용량 확인하기 (0) | 2020.10.20 | 
| [Ansible] 디렉토리 생성 하기 (0) | 2020.09.17 | 
| [Java] FailSafe 를 사용한 Java Retry 예제 (0) | 2019.09.24 | 
                          Comments
                        
                    
                
            
                
            
				
				
				
				
                
            