JBPM è lo strumento giusto per questo? [chiuso]

2

Abbiamo un'utilità per monitorare le directory e intraprendere azioni quando i file appaiono in quelle directory. È in java e assume la forma di un jar autonomo che avvia diversi thread all'avvio:

  • Un thread periodicamente (ogni minuto circa) controlla le nuove istruzioni su quali directory monitorare.
  • Un altro set di thread controlla periodicamente ciascuna delle directory monitorate. I nuovi file vengono inseriti in una coda di notifica.
  • Un altro set di thread gestisce la coda di notifica ed esegue azioni per ogni nuovo file.

Ora, i poteri che vogliono reimplementare questa utility all'interno di JBPM . L'obiettivo principale è consentire l'arrivo dei file per avviare i flussi di lavoro all'interno di JBPM. Gli obiettivi secondari sono rendere il processo più altamente disponibile e forse semplificare la distribuzione facendolo girare all'interno di Jboss piuttosto che come utility indipendente.

Ho esperienza passata con WebSphere Process Server - il sistema BPM di IBM - ma JBPM è completamente nuovo per me. Sto facendo fatica a vedere come ricreare questo programma come un insieme di processi JBPM, e non mi è nemmeno chiaro che JBPM sia lo strumento giusto per la logica di basso livello di lettura di directory ed elaborazione di elenchi di file.

Potrei scrivere un semplice processo aziendale in una sola fase che chiama semplicemente nel punto di ingresso per la vecchia utilità di monitoraggio. Con più lavoro, immagino di poter scomporre la vecchia logica in un paio di processi aziendali diversi che si chiamano a vicenda. Ho difficoltà a vedere il punto, però. A un livello più pratico, l'utility dovrebbe avviarsi automaticamente - senza essere chiamata da nulla - e non sono stato in grado di capire come farlo per qualcosa di distribuito all'interno di jboss.

Devo tornare indietro a questo requisito per utilizzare JBPM? Oppure prendilo e prendi il codice?

    
posta Kenster 30.09.2014 - 01:06
fonte

1 risposta

3

Certamente, jBPM potrebbe essere eccessivo per le operazioni che descrivi. Tuttavia, ricevi un sacco di articoli gratuitamente (per alcune definizioni gratuite) quando utilizzi un moderno strumento di gestione dei processi aziendali.

  1. Monitoraggio - Ogni processo può essere monitorato con chiari indicatori visivi.
  2. Rapporti - Numero di processi attivati, tempo di gestione, ritardi nel sistema, ecc.
  3. Progettazione grafica dei processi - L'aggiunta di un nuovo processo può spesso essere eseguita utilizzando gli strumenti web nell'editor grafico, specialmente se le primitive sono a portata di mano.

Ancora più importante, in un certo senso l'intero processo diventa a prova di futuro. Ecco alcune delle cose che potrebbero sorgere in futuro;

  • Interazione umana. Alcuni file potrebbero dover essere revisionati, firmati o reindirizzati da uno o più umani. L'ambiente BPM gestisce le attività umane consegnando le cose a computer-attività abbastanza prontamente. Inoltre, la struttura BPM consente la notifica degli umani che hanno del lavoro da fare.
  • Interazione multi-computer. BPM non è limitato a un singolo server; puoi configurare un numero di server cooperanti che si scambiano messaggi.
  • Forse l'aspetto più importante è che esiste un'evoluzione fondamentale dalla gestione dei file alla gestione dei documenti e dalla gestione delle attività alla gestione del flusso di lavoro. I sistemi BPM possono aiutare a colmare questa lacuna.
risposta data 30.09.2014 - 02:22
fonte

Leggi altre domande sui tag