2015-01-06 2 views
3

나는 나의 자바 앱을 시작하기 위해 supervisord를 사용하고있다. 응용 프로그램이 정상적으로 작동하지만 ulimit nofiles가 설정되지 않았습니다. 데비안을 사용하여 하나의 컴퓨터에서이 작업을 수행 할 수 있습니다. 하지만 두 번째 시스템에는이 구성이 작동하지 않는 문제가 있습니다. 기본적으로, 스크립트 내 응용 프로그램을 시작합니다슈퍼 바이어와 ulimit to java 앱

#!/bin/sh 

iscsiJar="/mnt/cache/jscsi/udrive.jar" 

ulimit -SHn 32768 

# função para iniciar a aplicação 
java -XX:MaxHeapFreeRatio=70 -Xmx2048M -XX:+HeapDumpOnOutOfMemoryError -XX:HeapDumpPath=dump.hprof -jar $iscsiJar 

하지만 내 명령 고양이/PROC/4171/한계는 계속 말 :

최대 열려있는 파일 4096 4096 개 파일

어떤 힌트

? 나는 인터넷에서 이미 모든 곳을 검색하고 있습니다 ....이 질문에 대해이 방법을 시도해 볼 수 있습니다.> nohup create new files nohup.out by day

+0

다른 사용자와 함께 응용 프로그램을 시작하려면 supervisord 구성을 의심합니다. 응용 프로그램을 시작하면 일부 디렉토리가 루트로 만들어지고 있기 때문입니다. –

답변

2

감독자와 함께 다른 Java 프로그램 테스트를 작성하는 솔루션을 얻었습니다. 또한 #!/bin/sh 대신 #!/bin/bash을 사용했으며 Linux 사용자가 제대로 구성되지 않았습니다.

나는 또한 this answer from serverfault을 도와주었습니다. 매개 변수 supervisord 구성 파일 내에서 minfds : http://supervisord.org/configuration.html#supervisord-section-values

는 구성 변경 후 supervisord를 다시 시작하는 것을 잊지 경우 누군가가 여전히위한 솔루션을 찾고

3

, 설정해보십시오.