RadarURL
Skip to content
조회 수 575 추천 수 0 댓글 0
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄
?

단축키

Prev이전 문서

Next다음 문서

크게 작게 위로 아래로 댓글로 가기 인쇄

웹 서비스를 운영하다보면, 압축,rsync 때문에 웹 서비스에 영향을 줄 수 있다.
따라서, 이런 경우에 대해서 적절하게 cpu 사용량을 정할 수 있는 툴이 있다!!!

cpu limit 이라는 툴인데. 소스 하나, make 파일 하나밖에 없다.
다운로드는 여기서한다. (홈페이지 http://cpulimit.sourceforge.net/)

wget http://downloads.sourceforge.net/project/cpulimit/cpulimit/cpulimit/cpulimit-1.1.tar.gz?r=&ts=1301401588&use_mirror=cdnetworks-kr-1

make 하면, cpulimit 이라는 파일이 생성된다.


파일 내부를 보면, 아주 간단하다. /proc 파일을 모니터링하고, SIGSTOP, SIGCONT만 이용해서 만든 간단함!!!! 깜짝 놀랬다.  (역시 도전하는 사람은 아름다워~)
goto문 쓰는 황당한 소스이다. 나중에 내가 예쁘게 고쳐봐야겠다~


사용법은 pid 별로, 명령어별로 다 가능하다고 하는데. 명령어단위로는 잘 못찾는 것 같다. 대신 pid를 넣으면 잘 동작한다..



cpu를 겁나게 많이 쓰는 것을 하나 만든다.
gzip -9 </dev/zero >/dev/null  &
978

그리고, pid가 978인거 확인하고, cpulimit을 돌린다.
cpulimit -p 978 -l 10 &


추세를 확인해본다..
바로 내려가는게 아니라, 천천히 내려간다. 좋은 발견임~^^


[root@cpulimit-1.1]# ps -C gzip o cmd,%cpu,pid,ni
CMD              %CPU   PID  NI
gzip -9           100   847   0
[root@cpulimit-1.1]# ps -C gzip o cmd,%cpu,pid,ni
CMD              %CPU   PID  NI
gzip -9          96.3   899   0
[root@cpulimit-1.1]# ps -C gzip o cmd,%cpu,pid,ni
CMD              %CPU   PID  NI
[root@cpulimit-1.1]# ps -C gzip o cmd,%cpu,pid,ni
CMD              %CPU   PID  NI
gzip -9          71.1   978   0
[root@cpulimit-1.1]# ps -C gzip o cmd,%cpu,pid,ni
CMD              %CPU   PID  NI
gzip -9          61.4   978   0
[root@cpulimit-1.1]# ps -C gzip o cmd,%cpu,pid,ni
CMD              %CPU   PID  NI
gzip -9          59.5   978   0
[root@cpulimit-1.1]# ps -C gzip o cmd,%cpu,pid,ni
CMD              %CPU   PID  NI
gzip -9          57.8   978   0
[root@cpulimit-1.1]# ps -C gzip o cmd,%cpu,pid,ni
CMD              %CPU   PID  NI
gzip -9          56.0   978   0
[root@cpulimit-1.1]# ps -C gzip o cmd,%cpu,pid,ni
CMD              %CPU   PID  NI
gzip -9          36.4   978   0
[root@cpulimit-1.1]# ps -C gzip o cmd,%cpu,pid,ni
CMD              %CPU   PID  NI
gzip -9          35.6   978   0
[root@cpulimit-1.1]# ps -C gzip o cmd,%cpu,pid,ni
CMD              %CPU   PID  NI
gzip -9          33.6   978   0
[root@cpulimit-1.1]# ps -C gzip o cmd,%cpu,pid,ni
CMD              %CPU   PID  NI
gzip -9          31.0   978   0
[root@cpulimit-1.1]# ps -C gzip o cmd,%cpu,pid,ni
CMD              %CPU   PID  NI
gzip -9          24.3   978   0
[root@cpulimit-1.1]# ps -C gzip o cmd,%cpu,pid,ni
CMD              %CPU   PID  NI
gzip -9          19.1   978   0
[root@cpulimit-1.1]# ps -C gzip o cmd,%cpu,pid,ni
CMD              %CPU   PID  NI
gzip -9          17.5   978   0
 

 

출처 : http://knight76.tistory.com/entry/cpulimit-cpu-%EC%82%AC%EC%9A%A9%EB%9F%89%EC%9D%84-%EC%A0%95%ED%95%9C%EB%8B%A4

?

List of Articles
번호 제목 글쓴이 날짜 조회 수
162 리눅스(Linux) 디렉토리 구조 JAESOO 2016.10.20 602
161 ssh서버가 비밀번호를 거부했습니다. 다시 시도하십시오. JAESOO 2016.08.26 709
160 [리눅스] IP 설정 변경 하기 JAESOO 2016.08.26 717
159 리눅스 설치후 초기설정해야 할 것들 [2] JAESOO 2016.07.13 675
158 리눅스 설치후 초기설정해야 할 것들 [1] JAESOO 2016.07.13 702
157 쉘 프로그래밍을 이용한 시스템 관리 기법 JAESOO 2016.05.12 540
156 AIX 자주 쓰이는 관리 명령 모음 JAESOO 2016.05.12 554
155 AIX 시스템상의 core, SMT(Simultaneous Multi Threading) 수 확인하기 JAESOO 2016.05.12 604
154 리눅스 호스트명 변경 JAESOO 2016.05.11 439
153 AIX 서버 기초 JAESOO 2016.05.11 560
152 AIX Admin Study 교육 자료 JAESOO 2016.05.11 547
151 성능 엔지니어링 대한 접근 방법 (Performance tuning) JAESOO 2016.05.05 489
150 [AIX] 파일시스템 관리 (du, df) JAESOO 2016.05.04 552
149 IBM AIX Admin (사용자 DISK 관리) JAESOO 2016.05.04 504
148 [UNIX] 유닉스 기본명령어 JAESOO 2016.05.04 455
147 [AIX] 파일시스템 용량 늘리기 JAESOO 2016.05.04 558
146 유닉스 상에서 ls 출력물을 MB 단위로 출력해주는 옵션 JAESOO 2016.05.04 446
145 ls 명령시 날짜 전체가 보이도록 하기 JAESOO 2016.05.02 438
144 리눅스 logrotate 에서 로그파일 강제로 rotate 시키기 JAESOO 2016.03.31 663
143 리눅스 시간 맞추기 : Time Server와 Sync (rdate, date) JAESOO 2016.03.19 733
Board Pagination Prev 1 2 3 4 5 6 7 8 9 Next
/ 9

PageViews   Today : 8035 Yesterday : 5037 Total : 21964087  /  Counter Status   Today : 7753 Yesterday : 4602 Total : 1190476

Edited by JAESOO

sketchbook5, 스케치북5

sketchbook5, 스케치북5

나눔글꼴 설치 안내


이 PC에는 나눔글꼴이 설치되어 있지 않습니다.

이 사이트를 나눔글꼴로 보기 위해서는
나눔글꼴을 설치해야 합니다.

설치 취소