Fiorano components can be launched in different ways. Various execution types are as below:
- Separate Process: When using the components in a Fiorano Event Process, the component instance can be configured to be launched as a separate process. This is the default launch mode where the Fiorano Peer Server launches the component as a separate process; for components written in Java, a separate JVM is created for each component instance. The Fiorano Peer Server controls the launching and stopping of components launched in separate processes.
- In-Memory: Components written in the Java programming language can be launched in the same process as the peer server. This is the in-memory launch mode, in which the component is launched in a separate thread of the JVM of the Fiorano Peer Server. As in the separate process launch mode, the Fiorano Peer Server controls the launch and stop of components launched in-memory.
Group Process: This launch mode enables multiple microservices to run in a Single JVM sharing the same resources. This launch mode overcomes certain limitations faced by the two modes mentioned above - the Separate launch mode having a restriction to use a limited number of microservices in a peer and the In Memory launch mode affecting the peer server performance when microservices face memory/thread leak.
Manual: When an end-user wishes to control the launch and stop of the components in a Fiorano application, specific components can be set to launch in manual mode. When a component is set to launch in the manual mode, the Fiorano Peer Server does not try to launch the component. The end-user can use the Fiorano scriptgen tool present in <fiorano_install_dir>/esb/tools/scriptgen as illustrated in Figure 1 to generate a script that launches the component. Alternatively, the end-user can use the Fiorano Enterprise Server API to launch this component from another application.
Figure 1: Directory structure showing scriptgen tool location for manual launch
Setting Component Launch Type in Fiorano Studio
The launch mode for each component can be set in the Fiorano eStudio. Select the component and change the Execution Type selecting one of the modes present under the Execution tab in the Properties panel:
- Separate Process
- In Memory
- Group Process
- Manual
Figure 2: Changing launch mode of a component in Fiorano Studio
Every component expects a set of arguments at launch time. The runtime arguments are typically part of the configuration property sheet (CPS) that is associated with the component, which is customized on a 'per component instance' basis. Runtime arguments are processed at the startup of the component.
Launching Components Using Fiorano Studio
When using the Separate Process, In-memory and Group Process launch types, the launch and stop of the components are controlled using the Fiorano eStudio tool. There are specific toolbar buttons available to launch and stop components (Refer the Running an Event Process section). The tool internally uses the Fiorano Enterprise Server API to launch and stop any components.
You can launch and/or kill a component instance (service in an Event Process) in a running Fiorano application using context menu as explained in the section below.
Launching a stopped Component Instance in a running Application
To launch a service (which is not running) in an Event Process (which is running), right-click the component, go to Execution and select Start from the menu list.
Figure 3: Launching a stopped Component in a running application
Stopping a running Component Instance in a running Application
To stop a component (which is running) in an Event Process (which is running), right-click the component, go to Execution and select Stop from the menu list.
Figure 4: Stopping a running Component in a running application