: 안녕하세요?
:
: 개발에 문외한으로 이해가 잘안되는 부분이 있어서 문의를 드립니다.
: 현재 메모리는 4G입니다. 정확히 설정이 되어 있고요..
: 그런데 문제가 있습니다.
:
: 자체적으로 개발한 프로그램이 있습니다. 전용의 서비스를 위한 것이구요.
: 이것은 cat /proc/meminfo 정보입니다.
: Swap: 8389775360 22892544 8366882816
: MemTotal: 4138780 kB
: MemFree: 9148 kB
: MemShared: 0 kB
: Buffers: 226512 kB
: Cached: 3296292 kB
: SwapCached: 1144 kB
: Active: 408760 kB
: Inactive: 3454360 kB
: HighTotal: 3276736 kB
: HighFree: 2108 kB
: LowTotal: 862044 kB
: LowFree: 7040 kB
: SwapTotal: 8193140 kB
: SwapFree: 8170784 kB
:
: 이것은 TOP 정보이구요..
:
: 7:59pm up 5 days, 2:09, 1 user, load average: 0.03,
: 0.07, 0.04
: 901 processes: 900 sleeping, 1 running, 0 zombie, 0 stopped
: CPU0 states: 5.1% user, 0.0% system, 0.0% nice, 94.0% idle
: CPU1 states: 0.0% user, 0.0% system, 0.0% nice, 100.0% idle
: CPU2 states: 2.0% user, 25.0% system, 0.0% nice, 72.0% idle
: CPU3 states: 7.1% user, 0.0% system, 0.0% nice, 92.0% idle
: Mem: 4138780K av, 4129508K used, 9272K free, 0K
: shrd, 226620K buff
: Swap: 8193140K av, 22356K used, 8170784K
: free 3290436K cached
:
: 이것은 vmstat 2 의 결과입니다.
:
: procs memory swap io
: system cpu
: r b w swpd free buff cache si so bi bo
: in cs us sy id
: 0 0 0 22356 9300 226620 3291424 0 0 0 13
: 5 18 1 0 1
: 0 0 0 22356 9852 226620 3291660 0 0 0 584
: 380 393 3 1 97
: 0 0 0 22356 9572 226620 3291828 0 0 0 0
: 274 303 2 0 97
: 0 0 0 22356 9620 226620 3291884 0 0 0 516
: 244 305 0 0 99
: 0 0 0 22356 9608 226620 3291912 0 0 0 0
: 177 258 0 0 100
: 0 0 0 22356 9592 226620 3291928 0 0 0 0
: 215 308 0 0 100
: 0 0 0 22356 9584 226620 3291944 0 0 0 390
: 232 298 0 0 99
:
: 여기 저기 찾아보니 최대한 메모리를 활용하기 위해서 프로세서가 메모리사
: 용을 다한 후에도 반환을 하지 않는다고 보았습니다.
:
: 처음 시작한지 얼마 안되었을때 프로세스가 약 500개(fork방식) 정도라고
: 하면, 이 상태에서 특별한 증가나 감소가 없음에도 2초마다 약 10k~20k의
: 메모리가 지속적으로 증가됩니다.
:
: 프로그래머는 원래 OS의 메모리 관리 정책이 바뀌었기 때문이라고 하더군
: 요..
: 프로세스의 생성 감소가 그렇게 많지가 않은데 저렇게 까지 메모리를 잡고
: 있을 것이라는 생각은 들지 않습니다.
:
: 동일한 정도의 프로세서 수(약 500개)를 이전의 조립PC 서버에서는 1G를
: 사용하였었고 그때는 정확히 2~3일이면 기본 시스템명령어들도 먹통이 됩니
: 다. 그래서 메모리가 실제로 부족한가보다 생각하여 4G로 확장을 하였습니
: 다만.. 여전히 문제가 됩니다.
:
: 제가 개발에 대하여서는 자신이 없어서 따질수도 없고.. 문제는 분명히 있
: 어 보이는데.. 그리고, 메모리 현황이 위에서 처럼 전부 잡혀 있을 경우 비
: 교적 자원을 많이 사용하는 웹서버가 먼저 죽어버립니다.
:
: 이것이 문제가 없는 것인가요? 분명히 1G 일때도 나왔던 문제인데.. 4G로
: 올려도 오히려 프로세서 수는 감소되었는데도 데몬들이 계속 죽어 납니다.
:
: 너무나 답답해서 문의를 드립니다. 약간의 조언이라도 좋습니다.
: 꼭좀 어떻게든 고집쌘 개발자(물론 개발자가 맞을지도...)와 예기를 좀 정
: 확히 할 수 있었으면 좋겠습니다.
:
: 맨날 서버는 죽어나는데.. 문제점은 없다고 하고, 메모리는 끝까지 가있
: 고.. 미치겠습니다. 화살은 전부 저에게만 --+--다시 프로그렘을 업데이트하셔용...