시스템의 총 메모리를 얻는 방법을 알고 있습니다.
$ free -lm
total used free shared
Mem: 3008 2495 513 57
Nginx에서 작업자 프로세스의 주 메모리 소비 (RSS)를 얻는 방법을 알고 있습니다.
$ ps -C nginx -O rss
PID RSS S TTY TIME COMMAND
1564 1336 S ? 00:00:00 nginx: master process /usr/sbin/nginx
1565 1756 S ? 00:00:00 nginx: worker process
1566 1756 S ? 00:00:00 nginx: worker process
1567 1756 S ? 00:00:00 nginx: worker process
1568 1756 S ? 00:00:00 nginx: worker process
이제 시스템이 스왑을 사용하지 않고 사용할 수있는 작업자 프로세스 수를 결정합니다.
echo $((3008 * 1024))
3080192
$ echo $((3080192 / 1756))
1754
내 서버는 스왑에 의존하지 않고 1754 nginx 작업자를 처리 할 수 있습니다. 그러나 위의 다단계 프로세스를 명령 줄에서 실행할 수있는 한 줄로 만들 수 있다면 좋을 것입니다.
내 문제는 명령 줄의 무료 명령에서 "3008"을 추출하는 방법을 모른다는 것입니다. 이 문제를 어떻게 해결할 수 있습니까?
내 문제는 명령 줄의 무료 명령에서 "3008"을 추출하는 방법을 모른다는 것입니다.
이 출력이 주어지면 :
free -lm
total used free shared buffers cached
Mem: 3757 1765 1991 138 122 766
Low: 3757 1765 1991
High: 0 0 0
-/+ buffers/cache: 876 2880
Swap: 7772 0 7772
이 시도:
free -lm | grep '^Mem' | awk '{ print $2 }'
3757
행 의 total
열을 반환합니다 Mem:
. 제 경우에는 3757
.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다