NiFi의 경우 의사가 정의한대로 "지속적인 개선이 생산에서 발생합니다"입니다. 그래서 이것은 전통적인 개발 도구로 사용되지 않습니다. 그러나 내가 작업하고있는 프로젝트에서 이것이 우리가 사용할 도구라는 결론에 도달했기 때문에 어떤 이슈가 될 것이라는 것을 깨닫고 이것의 장점을 논쟁하지는 않을 것입니다.Apache NiFi의 개발 라이프 사이클
예를 들어 변경 사항을 기존 환경 (프로덕션 환경에서 프로덕션 환경)으로 푸시하고 대상에서 실시간 수정 사항을 수정하면 덮어 쓰기됩니다. 개발주기를 조직하는 방법에 대한 질문이 있습니다.
- 그것은 병합 병렬로 여러 개발자에 의해 수행되었다을 변경 할 수 있습니다 (보낸 XML 템플릿 파일을 병합)? 나는 중대한 변화를 병합하는 것이 어렵다고 생각하지만 시도하지는 않았다.
- 어떻게 버전 관리 변경 하시겠습니까? 전체 구성을 템플릿으로 내 보낸 다음 버전 관리로 확인할 수 있다고 가정합니다.
- 을 다른 서버에 배포 하시겠습니까? 주식 NiFi 배포를 배포 한 다음 NiFi REST API를 사용하여 위에서 언급 한대로 내 보낸 템플릿에서 업데이트 할 수 있습니까?
- 다른 구성으로 배포 할 수있는 다른 환경에 배포하는 방법? 템플릿 XML 파일을 업데이트해야합니까? 또는 사육사와 같은 것에서 동적으로 가져올 수 있습니까?
아직 구현되지 않았습니다. 현재 릴리스 버전에서 명시된 문제를 해결하는 방법에 대한 업데이트를 제공 할 수 있습니까? 지금 사람들은 템플릿을 가져오고 내보내는 것만 같아요. 여기에는 몇 가지 단점이 있습니다. 실제 업데이트 옵션이 없으면 이전 버전을 제거하고 새 버전을 다시 읽을 수 있습니다. –
당신은 맞습니다. (기존 프로세스 그룹을위한) 진정한 업데이트 옵션은 없습니다. 오늘날 공통적 인 패턴은 프로세스 그룹의 새 버전을 밀어 넣고 해당 그룹에 공급하는 연결을 변경하는 것입니다. 이것은 프로그래밍 방식으로 몇 가지 REST 호출로 수행 할 수 있습니다. 흐름 관리, 프로세스 그룹 변수 및 버전이있는 구성 요소에 대한 apache nifi 레지스트리는 모두 최신 릴리스에서 후자와 함께 진행되고 있습니다. 다음 릴리스에서는 버전이 지정된 흐름에 통합 된 아파치 nifi 레지스트리가있을 것으로 보이며 그 시점에서 진정한 업데이트! 아주 차가워 야해. –