Voir le 中文文档 pour les documents en chinois.
Compileflow est un moteur de processus très léger, performant, intégrable et extensible.
Le moteur de processus Compileflow est un élément important de Taobao Business Process Management (TBBPM), dédié à l'optimisation des opérations sur le marché Taobao d'Alibaba. Plus précisément, Compileflow est conçu pour se concentrer sur l'exécution de mémoire pure et les moteurs de processus sans état en convertissant les fichiers de processus pour générer, compiler et exécuter du code Java.
Actuellement, compileflow alimente plusieurs systèmes centraux tels que les magasins et les transactions de commerce électronique d'Alibaba.
Compileflow permet aux développeurs de concevoir leurs propres processus métier via l'éditeur de processus, qui visualisera une logique métier complexe et établira un pont entre les concepteurs et les ingénieurs de développement.
1.Fournir une solution de processus métier de bout en bout, de la conception à l'exécution des idées de développement commercial.
2. Proposer une variété de moteurs de processus pour réaliser l'architecture visuelle globale, de sorte que la stratégie se traduise facilement en visualisations, ce qui conduit à des capacités, des processus et des systèmes commerciaux améliorés.
3. Concevoir un moteur d'exécution efficace capable de prendre en charge le déploiement rapide de nouveaux services par l'entreprise et capable de rationaliser les processus qui accélèrent la réponse du développement et la vitesse d'interaction.
1.Hautes performances : il est simple et efficace pour compiler et exécuter du code Java, généré par la conversion des fichiers de processus.
2. Divers scénarios d'application : largement utilisé dans les solutions de plate-forme intermédiaire d'Alibaba ; prend en charge plusieurs scénarios commerciaux tels que des guides d'achat, des transactions.
3. Intégrable : la conception légère et concise le rend extrêmement facile à intégrer dans diverses solutions et scénarios commerciaux.
4. Prise en charge complète des plugins : Compileflow est actuellement pris en charge par les plugins IntelliJ IDEA et Eclipse. Le code Java peut être généré dynamiquement et prévisualisé en temps réel pendant la conception du processus. Ce que vous voyez est ce que vous obtenez.
5. Dessin de conception de processus : prend en charge l'exportation vers un fichier SVG et un code de test unitaire.
Adresse de téléchargement du plugin : https://github.com/alibaba/compileflow-idea-designer
Instructions d'installation : veuillez utiliser la méthode d'installation locale d'IntelliJ IDEA pour l'installation. Redémarrez ensuite IntelliJ IDEA pour l'activer.
< dependency >
< groupId >com.alibaba.compileflow</ groupId >
< artifactId >compileflow</ artifactId >
< version >1.2.0</ version >
</ dependency >
Vérifiez la version disponible sur search.maven.org.
Remarque : Compileflow ne prend en charge que JDK 1.8 et supérieur.
Reportez-vous à la démo KTV ci-dessous pour comprendre la configuration des nœuds et des attributs ainsi que l'utilisation des API à travers la démonstration et la pratique de la démo.
Description de la démo : N nombre de personnes vont sur ktv pour chanter. Chaque personne chante une chanson. Le tarif habituel pour la séance ktv est de 30 yuans/personne, mais si le prix total dépasse 300 yuans, ils bénéficieront d'une réduction de 10 %. Mais si le montant total du groupe tombe en dessous de 300 yuans, il devra payer le prix total.
Créez un fichier bpm, comme indiqué ci-dessous :
Remarque : Le chemin du fichier bpm doit être cohérent avec le code. Lorsque le moteur de processus s'exécute en mode de chargement de fichier, le fichier sera trouvé selon le code.
Concevez le processus via des plug-ins ou écrivez directement des fichiers XML de processus.
Écrivez le test unitaire suivant :
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 a été conçu pour prendre en charge la spécification Taobao BPM. Il a fait des adaptations pour être compatible avec la spécification BPMN 2.0, mais ne prend en charge que certains éléments BPMN 2.0. Si d’autres éléments sont nécessaires, il peut être étendu sur la base originale.
DÉMO démarrage rapide
Description détaillée de la spécification originale Taobao BPM
Veuillez contacter @余苏 @徐工 @梵度 @哲良 @无相
Bienvenue pour enregistrer le nom de l'entreprise dans ce numéro : #9