Training Agenda

Here is a customizable Flux training outline. This outline can also be customized as needed and does not have to be delivered in the order shown.

First Session (2 Hours)

Installing Flux

  • Choosing the installation package
  • Installing Flux as a service
    • Service configuration files
  • Stopping and starting Flux
    • How Flux handles active transactions at shutdown
  • Installing Flux database tables

Introduction to Flux Architecture

  • Engines
  • Agents
  • Operations Console
  • Database

Workflows

  • How are workflows created?
  • Invoking system commands/scripts via Process Action
  • Time-based Schedules
    • “One-shot” vs. recurring schedules
    • Time expressions
      • Forecasting jobs
      • Managing the late time window
  • Administering jobs from the Operations Console and API

Second Session (2 Hours)

Workflows (Continued)

  • Business hour scheduling
  • Administering Deadlines
  • Administering the Repository
  • Prioritizing workflows
  • Concurrency settings and workflow throttling
  • Assigning tasks to remote servers
  • Creating job dependencies
  • Workflow states and transitions
  • Variable management
  • Signals
  • Process action – destroy on timeout, interrupt
  • Audit trail trigger
  • Editing existing workflows
  • Rescheduling workflows
  • For each collection element action
  • Forecasting from the Console
  • Rescheduling jobs
    • Workflow structure cannot be changed
  • Invoking Java code
  • Administering the Java class path

Flows

  • Conditions
  • Timeouts
  • Signals
  • Transaction Breaks
  • Concurrency
  • Error handling

Third Session (2 Hours)

File Transfer

  • Host Types
    • Local
    • FTP
    • SFTP
    • FTPS
    • UNC
    • Amazon S3
  • Viewing and using file action results
  • Timeouts and notifications
  • Using the runtime configuration to specify environmental connection parameters

Java Actions

  • Best practices
  • Sending and receiving data

Namespaces

  • Best practices
  • Multiple instances of similar workflows with unique data

Fourth Session (2 Hours)

Configuring Flux

  • Configuring the engine
    • Database settings
      • Data sources
    • Cache settings
    • Clustering
      • Load Balancing
      • High Availability
      • Failover
  • Setting the runtime configuration
    • Dynamic throttling
    • Class path
    • Error handling

Operations Console Administration

  • Understanding the .flux directory
  • Securing the Console
  • Customizing the Console
    • Users
    • Roles
    • Privileges

Common Pitfalls — Administration

  • Mismatched flux.jar files
  • Flux license key errors
  • Database Pool Size to Support Flux and Other Applications
  • Late time window

Monitoring Performance and Troubleshooting

  • Memory heap dumps
  • Thread dumps
  • Viewing Flux logs
    • File system
    • Operations Console
    • Database
  • Audit Trail
  • Run and Metric Reporting
  • Monitoring with JConsole
    • Remote monitoring with -Dcom.sun.management.jmxremote.port=
  • Finding your Java PID
    • jps -l -m
  • Generating heap dumps with jmap
    • jmap -dump:file=
  • Viewing heap dumps
    • jhat
      • jhat
    • Eclipse MAT
  • Generating thread dumps
    • jstack
      • jstack
    • command line
      • kill -QUIT
        • (generates to stdout wherever the engine is running)

Tuning the JVM

  • Recommended JVM settings for Flux

Upgrading Flux

  • Shut down all Flux components
  • Download new Flux release
  • Install new database schema
  • Migration tool
  • Start new Flux release

Fifth Session (2 Hours)

Common Pitfalls

  • Reimplementing Flux Features
  • Trigger Polling Delays
  • Not Closing Iterators in try/finally Blocks
  • Using Engine.getFlowCharts() instead of Engine.getFlowChartElements()
  • Excessive Transaction Breaks
  • Start and End of Run

Custom Actions

  • Developing custom actions
  • Best practices

Sixth Session (2 Hours)

Command Line Interface

  • Interacting with workflows
  • Publishing workflows from .ffc
  • Checking engine status

Architecture

  • The Flux Engine
    • Embedding the engine
      • Embedding in Java
      • As a servlet
    • Security
      • Built-in Flux Security
      • LDAP
    • Remote and local engines
      • Disabling network connectivity
    • Databases
      • Explanation of primary database tables
    • Transactional support
      • Standalone transactions
      • XA transactions
    • Caching
      • Local
      • Networked
      • None
    • Clustering and failover
    • Flux clients
      • Agents
      • Operations Console
      • API
    • Workflows as XML
    • Overview of triggers and actions

Seventh and Eight Sessions (2 Hours Each)

Remote API

  • Use Chrome’s DEV HTTP Client to invoke REST methods on the engine.

Review

  • Follow-up on topics discussed in previous sessions, review outstanding questions, and workflow design.