4

내 서버 (Windows Server 2012)에 Elasticsearch를 설치했습니다. 스트레스 테스트로 여러 쿼리 요청을 실행하면 CPU 코어의 절반 만 활용됩니다. 왜?Elasticsearch는 전체 부하에서도 CPU 코어의 절반 만 사용합니다.

CPU cores utilization - Elasticsearch under stress test

+0

가상 머신인가요? –

+0

예. 그렇다면 가상 머신의 문제점은 무엇입니까? –

+0

CPU 코어의 절반을 사용한다고하면 VM 또는 호스트 컴퓨터 코어의 절반을 의미합니까? –

답변

2

당신은 기본 elasticsearch 구성을 사용하고 있습니까?

검색/대량/색인에 사용되는 스레드 수를 제한하지 않도록하십시오. 기본값은 잘 최적화되어 있으므로 변경할 필요가 없습니다. 기본 스레드 수 (검색 제외)는 시스템의 코어 수로 설정됩니다. 검색은 (코어 수 * 3)입니다.

elasticsearch.yml 파일 검색이 구성 (당신이 피해야)의 예 :

threadpool.search.type: fixed 
 
threadpool.search.size: <num-of-threads>

는 또한, 성능을 최적화하기 위해 deployment guidelines을 따라야합니다.

+0

당신의 공헌에 감사드립니다. Rafi,하지만 내 elasticsearch.yaml 파일에 추가 설정이 없습니다. 내가 추가 할 수있는 유일한 중요한 점은 elasticsearch 응용 프로그램이 가상 Windows 서버 2012 r2에서 호스팅된다는 것입니다. –

+1

@HosseinBakhtiari 어쩌면 너무 늦었을 지 모르지만 몇 개의 파편이 있습니까? 샤드에서의 개인적인 경험에 비추어 볼 때 핵심은 하나뿐입니다. 따라서 샤드 번호가 코어 수의 절반이면 활용도가 50 %에 불과합니다. – DaTval

+0

@DaTval은 모든 코어를 사용하도록 강제 할 수 있습니까? 나는 매체 샵 (~ 30k 제품, <1GB의 데이터)에 대해 완전히 괜찮은 1 개의 샤드 만 가지고 있습니다. – ulkas

관련 문제