Durante la fase di registrazione, il broker individua le risorse disponibili e le LIL che possono fornirle. In tale istanza, le risorse disponibili sono i nodi. La fase inizia all'avvio di un gruppo di esecuzione. Le LIL vengono caricate all'avvio di un gruppo di esecuzione e il broker esegue delle query per individuare le risorse che queste possono fornire.
Una struttura CciFactory viene creata durante la fase di registrazione, quando il nodo definito dall'utente richiama cniCreateNodeFactory.
Un'istanza di un nodo di input definito dall'utente viene creata quando il comando mqsistart avvia o riavvia l'elaborazione del gruppo di esecuzione oppure quando viene distribuito un flusso di messaggi che è associato al nodo.
Durante questa fase, viene creata una struttura CciTerminal. Tale struttura viene creata quando si richiama cniCreateTerminal.
La fase di elaborazione inizia quando il broker richiama la funzione cniRun. Il broker utilizza la funzione cniRun per individuare come elaborare un messaggio, includendo la determinazione del dominio in cui viene definito un messaggio e il richiamo del programma di analisi pertinente per tale dominio.
Viene richiesto un thread dal pool di thread del flusso di messaggi e viene avviato nel metodo di esecuzione del nodo di input. Il thread esegue il collegamento al gestore code del broker e mantiene tale connessione durante il relativo ciclo di vita. Una volta che è stata eseguita l'allocazione di un thread, il nodo subentra in un loop di elaborazione dei messaggi mentre attende di ricevere un messaggio. Il nodo rimane nel loop fino alla ricezione di un messaggio. Se il flusso di messaggi è configurato per utilizzare più thread, viene attivato l'invio di thread.
A questo punto i dati del messaggio possono essere propagati.
Un nodo di input definito dall'utente viene eliminato quando il flusso di messaggi viene distribuito nuovamente oppure quando viene utilizzato mqsistop per arrestare l'elaborazione del gruppo di esecuzione. E' possibile eliminare il nodo implementando la funzione cniDeleteNodeContext.
Quando un nodo di input definito dall'utente viene eliminato in uno di questi modi, è necessario liberare la memoria utilizzata dal nodo e rilasciare le risorse presenti, come ad esempio i socket.