Chapter 7. Advanced features

Table of Contents

7.1. Monitoring and administration with JMX
7.1.1. Orchestra MBean for thread pools
7.2. Clustering configuration
7.3. Using Apache Camel with Orchestra
7.3.1. How to create a Camel context for a process ?
7.3.2. How to use camel context instead of HTTP for Web Service interactions ?
7.4. Process versioning with Orchestra
7.4.1. Process versions
7.4.2. Restrictions on versioning

7.1. Monitoring and administration with JMX

Orchestra registers several MBeans which provide some monitoring information.

  • Orchestra API is exposed as a JMX MBean (default objectName: Orchestra:type=RemoteAPI). Orchestra API is detailed in Section 8.1, “Orchestra APIs”.

  • Orchestra job and invoke executor thread pools can be managed with JMX (default objectName: Orchestra:type=threadPool,name=JobExecutor and Orchestra:type=threadPool,name=InvokeExecutor). Orchestra thread pool mbean is detailed in Section 7.1.1, “Orchestra MBean for thread pools”.

  • Hibernate MBeans (default objectName: Orchestra:type=Hibernate,name=hibernate-session-factory_core and Orchestra:type=Hibernate,name=hibernate-session-factory_history). These MBeans provide statistics about the Hibernate sessions. Refer to Hibernate documentation for more information about the statistics.

  • C3P0 MBeans (default objectName: com.mchange.v2.c3p0:type=PooledDataSource*). These MBeans provide statistics about the Hibernate JDBC connection pool. Refer to C3P0 documentation for more information.

  • Tomcat MBeans (default objectName: Catalina:*). These MBeans provide informations about Tomcat. Refer to Tomcat documentation for more information.

7.1.1. Orchestra MBean for thread pools

Available attributes:

  • ActiveCount : Number of threads currently executing a task.

  • CompletedTaskCount : Number of tasks completed.

  • CorePoolSize : Maximum number of threads of this pool. This attribute can be modified.

  • PoolSize : Current number of threads of this pool.

  • TaskCount : Number of tasks submitted to the thread pool. This includes tasks already completed, tasks currently being executed and tasks waiting for execution.

  • WaitingTaskCount : Number of tasks currently waiting for execution.