본문 바로가기
HOME> 논문 > 논문 검색상세

논문 상세정보

정보처리학회논문지. KIPS transactions on computer and communication systems 컴퓨터 및 통신 시스템   v.7 no.6, 2018년, pp.145 - 154   KCI
본 등재정보는 저널의 등재정보를 참고하여 보여주는 베타서비스로 정확한 논문의 등재여부는 등재기관에 확인하시기 바랍니다.

분산 브로커의 가용성 향상을 위한 메시지 레플리카 액티브-액티브 구조 기법
Active-Active Message Replica Scheme for Enhancing Performance of Distributed Message Broker

서경희   ((주) NHN  ); 여상호   (아주대학교 컴퓨터공학과  ); 오상윤   (아주대학교 소프트웨어학과  );
  • 초록

    다양한 분산 소프트웨어 컴포넌트들의 정보 교환을 위해 비동기, 다대다 메시지 교환이 가능한 브로커 구조가 보편적으로 사용되고 있다. 특별히 많은 사용자 및 메시지를 지원하기 위해 높은 확장성의 분산 메시지 브로커가 제안되었다. 브로커의 가용성 및 장애 극복 능력을 향상시키기 위해 메시지 레플리카를 사용하여 액티브-스탠바이 혹은 액티브-액티브 구조를 사용하게 된다. 그러나, 액티브-스탠바이의 경우 낮은 가용성의 문제, 그리고 액티브-액티브의 경우 동기화 오버헤드가 전체 성능을 낮추는 문제를 가진다. 본 논문에서는 장애 상황의 극복이 가능하면서도 분산 메시지 브로커의 가용성을 향상시키기 위해 메시지 레플리카를 액티브-액티브 구조로 구성하여 분산 브로커의 요청 부하를 분산시키는 기법을 제안하였다. 스탠바이 레플리카들이 액티브 레플리카로부터 요청을 전달받아 나누어 처리함으로써 브로커를 구성하는 노드 수의 증가 없이 요청 부하를 분산시킬 수 있었다. 이때 메시지 동기화 과정은 분산 코디네이터를 이용, 분산 락을 구현함으로써 모든 액티브 레플리카들이 한 때에 동기화를 진행하도록 하였고 각 액티브 레플리가 동기화를 할 때보다 추가적인 오버헤드를 적게 하였다. 본 제안의 성능을 평가하기 위해 제안 기법과 기존의 액티브-스탠바이 기법을 기반으로 브로커 프로토타입을 구현하고 메시지의 생산, 소비 및 전체 생산-소비 구간 처리 성능을 측정 비교하였고, 분산 락으로 인한 오버헤드 수식을 제시하였다. 실험 결과에서 본 제안 기법이 더 높은 확장성과 메시지 처리성능을 보임을 확인하였다.


    A loosely coupled message broker system is a popular method for integrating distributed software components. Especially, a distributed broker structure with multiple brokers with active-standby or active-active message replicas are used to enhance availability as well as message processing performance. However, there are problems in both active-standby and active-active replica structure. The active-standby has relatively low processing performance and The active-active structure requires a high synchronization overhead. In this paper, we propose an active-active structure of replicas to increase the availability of the brokers without compromising its high fault-tolerancy. In the proposed structure, standby replicas process the requests of the active replicas so that load balancing is achieved without additional brokers, while the distributed coordinators are used for the synchronization process to decrease the overhead. We formulated the overhead incurred when synchronizing messages among replicas, and the formulation was used to support the experiment results. From the experiment, we observed that replicas of the active-active structure show better performance than the active stand-by structure with increasing number of users.


  • 주제어

    가용성  . 분산 브로커  . 부하 분산  . 처리 성능  . 레플리카  .

  • 참고문헌 (14)

    1. P. T. Eugster, P. A. Felber, and R. Guerraoui, "The many faces of publish/subscribe," ACM Computing Surveys, Vol.35, No.2, pp.114-131, 2003. 
    2. E. Curry, "Message-oriented middleware," in Middleware for communications, John Wiley & Sons, pp.1-28, 2004. 
    3. G. Banavar, T. Chandra, R. Strom, and D. Sturman, "A case for message oriented middleware," In International Symposium on Distributed Computing, pp.1-17, 1999. 
    4. G. Pardo-Castellote, "OMG data-distribution service: Architectural overview," In Proc. IEEE International Conference on Distributed Computing Systems Workshops'03, 2003, pp. 200-206. 
    5. A. Fedoruk and R. Deters, "Improving fault-tolerance by replicating agents," In Proc. 1st International Joint Conference on Autonomous Agents and Multiagent Systems: Part 2, ACM, pp.737-744, 2002. 
    6. The Apache Software Foundation, "Welcome to $Apache^{TM}$ Hadoop!," The Apache Software Foundation, 2014. [Online]. Available: http://hadoop.apache.org. [Accessed Nov. 30, 2017]. 
    7. The Apache Software Foundation, "Apache Hadoop 2.9.0 - HDFS High Availability," The Apache Software Foundation, 2017. [Online]. Available: https://hadoop.apache.org/docs/stable/hadoop-project-dist/hadoop-hdfs/HDFSHighAvailabilityWithNFS.html. [Accessed Nov. 30, 2017]. 
    8. J-H. Hwang, M. Balazinska, and A. Rasin, "High-availability algorithms for distributed stream processing," In Proc. 21st International Conference on Data Engineering'05, pp. 779-790, 2005. 
    9. NGINX Inc., "Load balancing with NGINX Plus," NGINX Inc., 2017. [Online]. Available: https://www.nginx.com/products/nginx/load-balancing/#load-balancing-methods. [Accessed Nov. 30, 2017]. 
    10. P. Hunt, M. Konar, F. P. Junqueira, and B. Reed, "ZooKeeper: Wait-free Coordination for Internet-scale Systems," In Proc. USENIX Annual Technical Conference, Vol. 8, pp.145-158, 2010. 
    11. The Apache Software Foundation, "Samza," The Apache Software Foundation. [Online]. Available: http://samza.apache.org. [Accessed Nov. 30, 2017]. 
    12. The Apache Software Foundation, "Apache Storm," The Apache Software Foundation, 2015. [Online]. Available: http://storm.apache.org. [Accessed Nov. 30, 2017]. 
    13. The Apache Software Foundation, "Spark Streaming $\mid$ Apache Spark," The Apache Software Foundation. [Online]. Available: http://spark.apache.org/streaming. [Accessed Nov. 30, 2017]. 
    14. Project Gutenberg Literary Archive Foundation Inc., "Gutenberg," Project Gutenberg Literary Archive Foundation Inc., 2017. [Online]. Available: https://www.gutenberg.org. [Accessed Nov. 30, 2017]. 

 활용도 분석

  • 상세보기

    amChart 영역
  • 원문보기

    amChart 영역

원문보기

무료다운로드
  • NDSL :
유료다운로드

유료 다운로드의 경우 해당 사이트의 정책에 따라 신규 회원가입, 로그인, 유료 구매 등이 필요할 수 있습니다. 해당 사이트에서 발생하는 귀하의 모든 정보활동은 NDSL의 서비스 정책과 무관합니다.

원문복사신청을 하시면, 일부 해외 인쇄학술지의 경우 외국학술지지원센터(FRIC)에서
무료 원문복사 서비스를 제공합니다.

NDSL에서는 해당 원문을 복사서비스하고 있습니다. 위의 원문복사신청 또는 장바구니 담기를 통하여 원문복사서비스 이용이 가능합니다.

이 논문과 함께 출판된 논문 + 더보기