나는 그것이 무엇을하는지 알고 있습니다 ... 왜 그것이 내가 상속 한 응용 프로그램의 문제를 해결하고 있는지 궁금합니다. 나는 많은 플렉스 클라이언트의 Red5 서버 역할을하는 상당히 큰 바람둥이 응용 프로그램을 인수하고 많은 실시간 상호 작용 데이터를 처리하여 결국 레일 API로 플러시됩니다. 문제는 시간이 지남에 따라 많은 부하를 받았으며 이러한 클라이언트에 대한 resposes는 일반적으로 100ms 미만인 3-400ms로 증가했습니다. 클라이언트는 우리가 실제로 확인할 수없는 메모리 문제라고 의심했습니다. 어느 날 스테이징 서버에서 요청이 기본적으로 중단되어로드 테스트를 실행 중이거나 매우 느 렸습니다. 내가 보낸 변덕에
sync && echo 3 > /proc/sys/vm/drop_caches
마술처럼 서버는 다시 생명을 불어 넣고이 연결을 제공하는 최고 속도로 실행하기 시작했습니다. 이것이 우연의 일치입니까, 아니면이 행동이 의미가 있고 왜 그런가요?
sync
또는을 시도 하십시오 echo
. 그런 다음이 문제를 해결하는 경우 서버 속도가 느린 이유를 알아 봅니다 (CPU가 최대 값입니까? IO가 최대 값입니까? 시스템 페이징입니까?)