MySQL/Class
기초공부 - (2) process & thread
평생초보
2024. 1. 26. 22:54
반응형
1. 구동 방식(MySQL, Oracle)
Oracle은 프로세스 기반의 방식입니다.
리눅스에서 ps -ef 로 프로세스를 확인해보면 smon,pmon 같은 오라클과 연관된 프로세스 등을 볼 수 있을 것입니다.
반면 mysql은 thread 방식입니다. 프로세스를 확인해보면 mysqld 만 보입니다. 이것은 모든 작업은 mysqld 프로세스 안에서 여러 thread가 실행되어 구동을 하고 있다는 것입니다.
2. 정의
- process : 프로그램을 실행 시을 경우 발생되는 데몬
- thread : Process 안에서 구동 되는 여러 작업들
3. thread 정보 확인
(1) pid 확인
(2) thread 실행 총 개수 확인
# /proc/${PID}/status
[root@mha01 mysql]# cat /proc/100329/status | grep Thread
Threads: 39
(3) 개별 thread ID 확인
[root@mha01 mysql]# ps -eL -o uid,pid,cmd,lwp,nlwp | grep mysql
위 내용을 해석하자면, pid 프로세스에는 유니크한 lwp(thread-id)를 가지고 있으며, 총 lwp 개수는 nlwp(thread개수 합계) 입니다.
mysql 프로세스 id : 100329
mysql 프로세스 안에서 실행되는 쓰레드 id : lwp
mysql 프로세스 안에서 실행되는 총 쓰레드 값 : nlwp
반응형