Offcanvas

개발자 / 애플리케이션

페이스북, '50년 묵은 골칫거리' 푼다··· 레이스 컨디션 대응 툴 ‘레이서D’ 공개

2017.10.20 Paul Krill  |  InfoWorld
페이스북이 '레이서D(RacerD)'를 일반에 공개하기 시작했다. 소프트웨어 개발의 오래된 골칫거리인 '레이스 컨디션(race conditions)’ 문제를 해결하는 툴이다.

레이스 컨디션은 여러 프로세스가 같은 데이터에 동시에 접근하려 할 때 프로그램이 충돌 상태에 빠지는 것을 가리킨다. 이러한 오류는 다시 현상을 재현하기 매우 까다로워 버그를 찾아 수정하기도 어렵다. 레이서D의 공동 개발자 중 한 명인 피터 오혼은 “이 문제는 컴퓨팅 분야에서 지난 50년간 가장 큰 골칫거리였다”라고 말했다.

또다른 레이서D의 공동 개발자인 샘 블랙쉐어에 따르면, 그전에도 레이서D를 사용할 수는 있었다. 단, 페이스북의 오픈소스 코드 베이스에서 일종의 백도어를 통해서만 프로토타입 버전을 다운로드할 수 있었다. 그러나 이제는 페이스북의 오픈소스 버그 탐지 툴인 '인퍼 스테틱 애널리시스(Infer static analysis tool)'에서 기본으로 실행할 수 있게 됐다. 레이서D는 현재 자바 코드용으로만 사용할 수 있다. 앞으로 C++를 포함해 더 많은 언어를 지원할 예정이다.

페이스북에 따르면, 레이서D는 페이스북의 뉴스 피드 애플리케이션 테스트에 실제 사용돼 1000개 이상의 버그를 잡았다. 코드 수천 라인의 동시성 문제를 해결했다. 레이서D는 애플리케이션이 실행되기 전에 코드 문제와 잠재적 시스템 오류를 해결하는 새로운 알고리즘 기술을 사용한다. 오혼이 만든 동시 분리 논리 이론과 여러 수학 이론을 바탕으로 개발됐다.

레이서D는 인퍼 리포지토리를 통해 깃허브에서 다운로드할 수 있다. 라이선스는 BSD+를 따른다. 아파치 소프트웨어 재단이 일부 조건을 문제 삼아 페이스북의 리액트 자바스크립트 라이브러리를 배제했던 그 라이선스다. 이에 따라 페이스북은 최근 리액트 라이선스를 더 유연한 MIT 라이선스로 변경해 다시 배포했다. 레이서D의 라이선스도 변경하는 것을 검토하고 있다. ciokr@idg.co.kr 
CIO Korea 뉴스레터 및 IT 트랜드 보고서 무료 구독하기
추천 테크라이브러리

회사명:한국IDG 제호: CIO Korea 주소 : 서울시 중구 세종대로 23, 4층 우)04512
등록번호 : 서울 아01641 등록발행일자 : 2011년 05월 27일

발행인 : 박형미 편집인 : 천신응 청소년보호책임자 : 한정규
사업자 등록번호 : 214-87-22467 Tel : 02-558-6950

Copyright © 2024 International Data Group. All rights reserved.