solr4.3 주종 동기화 설정

5551 단어
분포식 환경에서 높은 병발 문제로 인해 일반적으로 우리는 여러 대의 서버를 배치하여 부하 균형을 맞추고 단일 접근의 핫이슈나 부하가 너무 높아서 서버가 마비되는 문제를 피해야 한다.  solr4.x 이후solrcloud의 분포식 집단 방안을 내놓았고 4.x이전의 Master/Slave 집단 모델은 구조에 중대한 변화가 생겼다. solrcloud는 높은 부하 균형 문제를 해결할 뿐만 아니라 대량의 데이터의 검색 성능 문제도 해결했다. 하나의 거대한 색인에 대해 분리된 방법으로 여러 개의 독립된 노드에 색인을 한다. 그러나 이것은 대표하지 않는다. 4.x이전의 Master/Slave 구조는 탈락되었는데 사실solrcloud에서도 주종적인 방식을 종합적으로 운용하여 병발적인 문제를 해결했다.만약에 데이터 양이 크지 않은 상황에서solrcloud 방안을 사용할 필요가 없지만 이럴 때 높은 병발 문제를 해결해야 하거나 서버의 단일 고장 문제를 해결해야 한다면 어떻게 합니까?답은 역시 고전적인 주종 구조 모델을 채택하여 해결하는 것이다. 아래 산선을 보면 Solr에서 구체적인 설정은 첫째, Master에서 다음과 같다.
<requestHandler name="/replication" class="solr.ReplicationHandler" >
  <lst name="master">
    <!-- master , commit ,slave -->
    <str name="replicateAfter">commit</str>
    <!-- startup -->
  <str name="replicateAfter">startup</str>
  <!-- master optimize ,slave -->
    <str name="replicateAfter">optimize</str>
  <!--  , , conf  -->
    <str name="confFiles">schema.xml,mapping-ISOLatin1Accent.txt,protwords.txt,stopwords.txt,synonyms.txt,elevate.xml</str>
  </lst>

 </requestHandler>

둘째, 각 슬레이브의 구성은 다음과 같습니다.
<requestHandler name="/replication" class="solr.ReplicationHandler" > 
   
       <lst name="slave">
       <!-- masterUrl solr , core , http://localhost:9001/solr/(core )    -->
         <str name="masterUrl">http://localhost:9001/solr</str>
     <!--  10  -->
         <str name="pollInterval">00:00:10</str>
       </lst>
     
  </requestHandler>

설정을 한 후에 우리는 테스트를 할 수 있습니다. 각각 Master와 Slave를 시작하여 Master의 일부 프로필을 변경할 수 있습니다. 예를 들어 같은 의미의 단어, 사용 금지 단어 파일 등입니다. 그리고 Master 노드의commit이나optimize 작업을 터치하면 Slave 노드에 대응하는 파일의 변화를 볼 수 있습니다.

좋은 웹페이지 즐겨찾기