2017-01-26 4 views
2

비교적 높은로드의 웹 응용 프로그램에 Cheyenne을 사용하고 있습니다. 그것은 훌륭하고 빠르게 작동합니다. 하지만 우분투 14.04로 업그레이드 한 후에 나타나기 시작한 문제가 있거나 부하가 증가했기 때문에 문제가 발생했습니다.Linux에서 Rebol 2 프로세스가 "로드가 심한 날"후 SIGTERM에서 중단됩니다.

Rebol 작업자 프로세스를 종료해야하는 며칠 동안 프로세스가 100 % CPU를 사용하기 시작하고 "아무 것도하지 않습니다". strace으로 프로세스를 살펴 보았습니다. 그리고 CPU가 100 개일 때 어떤 식 으로든 OS를 호출하지 않습니다. 샤이엔 작업자 코드 (거기에 결함이있는 경우)를보고 코드가 Rebol 명령에 OK를 실행하면 을 종료합니다. 이 명령은 루프를 영원히 반복합니다. sigterm으로 프로세스를 죽이려고하면 동일합니다.

이어서 나는 sigkill으로 죽일 수 있습니다. 며칠 만 지나면이 프로세스가이 상태가되며 프로덕션 환경이 아니거나 로컬 컴퓨터에서 복제 할 수 없었습니다.

내 순진한 생각은 끝내기 전에 메모리를 지우거나 열려있는 파일/소켓을 지우는 동안 영원히 반복된다는 것입니다. 전/후 프로세스를 보았습니다 lsof (및 이와 유사한),하지만 이벤트가 쉽게 재현 할 수 없기 때문에 아무 것도 알아 내지 못했습니다.

내 질문은 : Rebol2가 출구에서 영원한 100 % 루프로 들어가는 상황을 보았습니다. 이 문제를 해결할 사람이 있습니까?

+0

** 우분투 14.04에서 샤이엔 (Cheyenne)을 사용합니다. (정확히 말하면 14.04.5 LTS (GNU/Linux 3.13.0-92- generic x86_64) 그리고 나는이 문제를 본 적이 없다. 우분투 16.04와 맥 OSX 10.9에 대해서도 마찬가지이다.이 프로그램은 결코 큰 부하를받지는 않았지만 장기간 실행되는 경우도있다. – draegtun

답변