나는 서버의 로깅이 매우 철저한 느낌이 든다. 로깅 출력을 비활성화하거나 줄이는 방법이 있습니까? 서버에 문서를 보내면 stdout
성능을 저하시킬 수있는 내용이 기록되는 것 같습니다 .
어떻게 든 할 수 있습니까?
서버에서 출력을 억제하는 방법을 찾았습니다. 여전히 내 질문은 실제 서버에 대한 명령 줄 인수를 사용하여 어떻게 그리고 할 수 있는지입니다. 그러나 더러운 해결 방법의 경우 다음과 같이 오버 헤드를 줄일 수 있습니다.
서버 실행
java -mx6g -cp "*" edu.stanford.nlp.pipeline.StanfordCoreNLPServer -prettyPrint false 2&>1 >/dev/null
어디 >/dev/null
파이프는 아무것도로 출력한다. 불행히도 이것만으로는 도움이되지 않았습니다. 2&>1
여기서 트릭을하는 것 같습니다. 나는 그것이 실제로 무엇을하고 있는지 모른다고 고백한다. 그러나 두 번의 실행을 비교했습니다.
2 &> 1> / dev / null로 실행
Processed 100 sentences
Overall time: 2.1797 sec
Time per sentence: 0.0218 sec
Processed 200 sentences
Overall time: 6.5694 sec
Time per sentence: 0.0328 sec
...
Processed 1300 sentences
Overall time: 30.482 sec
Time per sentence: 0.0234 sec
Processed 1400 sentences
Overall time: 32.848 sec
Time per sentence: 0.0235 sec
Processed 1500 sentences
Overall time: 35.0417 sec
Time per sentence: 0.0234 sec
추가 인수없이 실행
ParagraphVectorTrainer - Epoch 1 of 6
Processed 100 sentences
Overall time: 2.9826 sec
Time per sentence: 0.0298 sec
Processed 200 sentences
Overall time: 5.5169 sec
Time per sentence: 0.0276 sec
...
Processed 1300 sentences
Overall time: 54.256 sec
Time per sentence: 0.0417 sec
Processed 1400 sentences
Overall time: 59.4675 sec
Time per sentence: 0.0425 sec
Processed 1500 sentences
Overall time: 64.0688 sec
Time per sentence: 0.0427 sec
이것은 매우 얕은 테스트 였지만 상당한 영향을 미칠 수있는 것으로 보입니다. 여기서의 차이는 시간이 지남에 따라 상당한 차이 인 1.828의 요소입니다.
그러나 이것은 간단한 테스트 일 뿐이며 결과가 완전히 정상이라고 보장 할 수 없습니다!
추가 업데이트 :
이것은 JVM이 시간이 지남에 따라 코드를 최적화하는 방법과 관련이 있다고 가정하지만 문장 당 시간은 로컬 컴퓨터에있는 시간과 비교할 수있게됩니다. 로깅 2&>1 >/dev/null
을 제거하기 위해 사용하는 결과는 아래와 같습니다 stdout
.
Processed 68500 sentences
Overall time: 806.644 sec
Time per sentence: 0.0118 sec
Processed 68600 sentences
Overall time: 808.2679 sec
Time per sentence: 0.0118 sec
Processed 68700 sentences
Overall time: 809.9669 sec
Time per sentence: 0.0118 sec
당신은 이제 이것을 요구하는 세 번째 사람입니다 :)- Stanford Core NLP Server가 수신 한 텍스트를 출력하지 못하도록 방지합니다 . GitHub 저장소의 HEAD 및 버전 3.6.1 이후 -quiet
에는 서버가 수신 한 텍스트를 출력하지 못하도록 하는 플래그가 있습니다. 그런 다음 클래스 경로에있는 경우 SLF4J로 다른 로깅을 구성 할 수 있습니다.
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다