Replies: 1 comment
-
스레드, 커넥션 1:1 스레드 풀을 유지하는게 낭비일정도로 커넥션이 많지 않다면 꼭 스레드 풀을 만들지 않고 |
Beta Was this translation helpful? Give feedback.
0 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
MySQL에서 스레드 풀을 사용하지 않는 경우에는 각 연결마다
새로운 스레드를 생성합니다. 이를 "스레드 퍼 커넥션(Thread Per Connection)" 방식이라고 합니다.
스레드 퍼 커넥션 방식은 적은 수의 연결이 있는 경우에는 잘 작동할 수 있지만, 많은 수의 클라이언트 연결이 있을 때는 부하에 대한 적절한 처리를 하기 어려울 수 있습니다. 이는 각각의 연결이 스레드를 독립적으로 사용하기 때문에, 많은 수의 클라이언트가 동시에 접속하면 서버의 성능이 저하될 수 있습니다.
스레드 풀을 사용하면, MySQL 서버는 미리 정해진 스레드 풀의 크기 내에서 스레드를 공유하여 사용하므로 서버의 성능이 향상될 수 있습니다. 따라서 많은 수의 클라이언트가 동시에 접속할 경우에는 스레드 풀을 사용하는 것이 좋습니다.
스레드 퍼 커넥션이 더 유리한 경우는 언제야?
스레드 퍼 커넥션(Thread Per Connection) 방식은 몇 가지 이점이 있습니다.
첫째, 스레드 풀을 사용하지 않기 때문에 스
레드 풀을 관리하는 추가 오버헤드가 발생하지 않습니다.
이는 스레드 풀을 사용하는 경우에는 스레드 풀의 크기, 최대 연결 수 등을 고려하여 적절한 설정을 해주어야 하기 때문에 일정한 추가 작업이 필요합니다.둘째, 스레드 퍼 커넥션 방식은 적은 수의 클라이언트 연결이 있는 경우에는 더욱 효율적일 수 있습니다. 이는 스
레드 풀을 사용하는 경우에도 최소한의 스레드 개수를 유지해야 하기 때문입니다.
셋째, 스레드 퍼 커넥션 방식은 각 연결이 독립적인 스레드를 사용하기 때문에, 각 연결이 서로 영향을 주지 않고 동작할 수 있습니다. 이는 일부
애플리케이션에서 동시에 여러 개의 쿼리를 실행해야 하는 경우에 유용할 수 있습니다.
따라서, 적은 수의 클라이언트 연결이 있고 각 연결이 독립적으로 처리될 수 있는 경우에는 스레드 퍼 커넥션 방식을 사용하는 것이 더욱 유리할 수 있습니다.
Beta Was this translation helpful? Give feedback.
All reactions