중국어로 된 문서는 中文文档를 참조하세요.
Compileflow는 매우 가볍고 고성능이며 통합 및 확장 가능한 프로세스 엔진입니다.
Compileflow 프로세스 엔진은 Alibaba Taobao Marketplace의 운영 최적화에 전념하는 Taobao 비즈니스 프로세스 관리(TBBPM)의 중요한 부분입니다. 특히 Compileflow는 프로세스 파일을 변환하여 Java 코드를 생성, 컴파일 및 실행함으로써 순수 메모리 실행 및 상태 비저장 프로세스 엔진에 중점을 두도록 설계되었습니다.
현재 compileflow는 Alibaba의 전자상거래 상점 및 거래와 같은 여러 핵심 시스템을 지원합니다.
Compileflow를 사용하면 개발자는 복잡한 비즈니스 논리를 시각화하고 디자이너와 개발 엔지니어 간의 다리를 구축하는 프로세스 편집기를 통해 자신의 비즈니스 프로세스를 설계할 수 있습니다.
1.사업 개발 아이디어의 설계부터 실행까지 End-to-End 비즈니스 프로세스 솔루션을 제공합니다.
2. 시각적 글로벌 아키텍처를 실현하기 위한 다양한 프로세스 엔진을 제공하여 전략이 시각화로 쉽게 변환되어 비즈니스 역량, 프로세스 및 시스템이 향상됩니다.
3. 회사의 새로운 서비스의 신속한 배포를 지원할 수 있고 개발 응답 및 상호 작용 속도를 가속화하는 프로세스를 간소화할 수 있는 효율적인 실행 엔진을 설계합니다.
1. 고성능: 프로세스 파일을 변환하여 생성된 Java 코드를 컴파일하고 실행하는 데 간단하고 효율적입니다.
2.다양한 적용 시나리오: Alibaba의 중간 플랫폼 솔루션 전반에 걸쳐 널리 사용됩니다. 쇼핑 가이드, 거래 등 다양한 비즈니스 시나리오를 지원합니다.
3.통합 가능: 가볍고 간결한 디자인으로 다양한 솔루션 및 비즈니스 시나리오에 통합하기가 매우 쉽습니다.
4.완전한 플러그인 지원: Compileflow는 현재 IntelliJ IDEA 및 Eclipse 플러그인에서 지원됩니다. Java 코드는 프로세스 설계 중에 동적으로 생성되고 실시간으로 미리 볼 수 있습니다. 당신이 보는 것은 당신이 얻는 것입니다.
5. 프로세스 설계 도면: SVG 파일 및 단위 테스트 코드로 내보내기를 지원합니다.
플러그인 다운로드 주소: https://github.com/alibaba/compileflow-idea-designer
설치 지침: IntelliJ IDEA 로컬 설치 방법을 사용하여 설치하세요. 그런 다음 IntelliJ IDEA를 다시 시작하여 활성화하세요.
< dependency >
< groupId >com.alibaba.compileflow</ groupId >
< artifactId >compileflow</ artifactId >
< version >1.2.0</ version >
</ dependency >
search.maven.org에서 사용 가능한 버전을 확인하세요.
참고 : Compileflow는 JDK 1.8 이상만 지원합니다.
데모의 시연과 실습을 통해 노드와 속성의 구성, API의 사용법을 이해하려면 아래 KTV 데모를 참조하세요.
데모 설명: N명의 사람들이 노래를 부르기 위해 ktv에 갑니다. 각 사람이 노래를 부릅니다. ktv 세션의 일반적인 요금은 1인당 30위안이지만 총 가격이 300위안을 초과하면 10% 할인됩니다. 그러나 단체의 총 수수료가 300위안 미만인 경우에는 전액을 지불해야 합니다.
아래와 같이 bpm 파일을 만듭니다.
참고: bpm 파일의 경로는 코드와 일치해야 합니다. 프로세스 엔진이 파일 로딩 모드로 실행되면 코드에 따라 파일을 찾습니다.
플러그인을 통해 프로세스를 디자인하거나 프로세스 XML 파일을 직접 작성합니다.
다음 단위 테스트를 작성하세요.
public void testProcessEngine () {
final String code = "bpm.ktv.ktvExample" ;
final Map < String , Object > context = new HashMap <>();
final List < String > pList = new ArrayList <>();
pList . add ( "wuxiang" );
pList . add ( "xuan" );
pList . add ( "yusu" );
context . put ( "pList" , pList );
final ProcessEngine < TbbpmModel > processEngine = ProcessEngineFactory . getProcessEngine ();
final TbbpmModel tbbpmModel = processEngine . load ( code );
final OutputStream outputStream = TbbpmModelConverter . getInstance (). convertToStream ( tbbpmModel );
System . out . println ( processEngine . getTestCode ( code ));
processEngine . preCompile ( code );
System . out . println ( processEngine . start ( code , context ));
}
Compileflow는 Taobao BPM 사양을 지원하도록 설계되었습니다. BPMN 2.0 사양과 호환되도록 조정되었지만 BPMN 2.0 요소 중 일부만 지원합니다. 다른 요소가 필요한 경우 원래 기반으로 확장할 수 있습니다.
데모 빠른 시작
원래 Taobao BPM 사양에 대한 자세한 설명
@余苏 @徐工 @梵島 @哲良 @无상에게 연락주세요
이번 호에 회사 이름을 등록하신 것을 환영합니다: #9