2016-11-02 7 views
1

아파치 왜가리 용 사용자 정의 스케줄러를 작성하고 싶습니다. 소스 코드를 조금 깊숙이 살펴보고 싶습니다. 헤론 소스 코드에는 유사한 클래스를 가진 몇 개의 패키지가 있다는 것을 알았습니다. 예를 들어, 대부분의 클래스는 backtype.storm & org.apache.storm과 매우 유사합니다 (내부 코드가 완전히 같음). 이 두 패키지 사이에는 유사한 클래스가 있고 com.twitter.heron (예 : com.twitter.heron.api.tuple.Fields)이지만 일부는 내부 코드가 다릅니다 (예 : Fields 클래스). 토폴로지를 작성할 때 우리가 원하는 각 패키지를 가져올 수 있고 우리는 이들 중 하나를 선택할 수 있지만 그 패키지의 차이점과 모든 패키지를 왜 함께 넣었는지 궁금합니다. 그들을 합병하지 않았습니까? 스톰 클래스가 토폴로지 작성을위한 유일한 선택 인 경우 com.twitter.heron 패키지의 클래스는 무엇입니까?backtype.storm 및 org.apache.storm 및 com.twitter.heron 패키지의 클래스 간 차이점

헤론은 폭풍과 완전히 호환되도록 설계되었으며 이전 버전과의 호환성 문제로 인한 것일 수 있습니다.하지만 내 자신 만의 코드를 작성해야하기 때문에 혼란 스럽다는 것을 인정해야합니다. 이 클래스들과 저는 개발자가 지속적으로 개발하고 유지하고있는 것을 선택하는 방법을 모릅니다. 그리고 수정할 후보로 선택해야합니다.

미리 감사드립니다. here의 개발자 팀의 설명을 바탕으로

답변

1

: 헤론 API 클래스의

사용하지 않는 것이 좋습니다 - 우리가 자주 변경 될 수 있습니다 때문이다. 내부 용으로 만 사용됩니다.

backtype.storm은 응용 프로그램에서 pre-storm 1.0.0을 사용하려고하는 경우입니다. post 1.0.0 응용 프로그램의 경우 org.apache.storm을 사용해야합니다.