The two biggest changes to the product with this release are 1) FlowWright is now a fully multi-tenant software applications, and 2) FlowWright now supports Distributed File Sychronization.
Firstly, with this release FlowWright transforms from a single instance product to full multi-tenant support in every respect. Now a single copy of FlowWright can support any number of tenants, each with its own database to ensure data separation and security. In addition, FlowWright now includes a multi-tenant manager user interface for managing deployment and configuration of tenants. Multi-tenant support will be especially useful for deployments using cloud infrastructure.
Secondly, to complement this multi-tenant transformation, FlowWright engines/services are fully self-updating: when engine configuration changes are made, engines pick up these changes and automatically adjust themselves.
And, we drastically improved FlowWright storage handling, especially with respect to distributed storage. FlowWright now includes an open architecture and supports connectors to distributed storage systems. To make the product backward compatible, we provide a file-system based Distributed File Sychronization (DFS) connector. But also providing the following DFS connectors:
- Microsoft SQL database connector
- Azure Blog storage connector
- Azure file-system connector
More FlowWright DFS connectors, especially to cloud-based storage systems, are coming. Documentation for creating your own DFS connector is available.
To extend DFS capabilities further, FlowWright’s latest version also includes support for distributed file synchronization in multi-server environments. Some files are required on each server for certain functions to work - for example, if applying custom CSS to a form, the CSS file must exist in multiple servers for the form to function - and a new DFS synchronization service has been introduced to synchronize files across servers. As you add servers, FlowWright’s DFS service automatically synchronizes new servers with the existing environment.
In addition to dramatically new functionality, release version 9.7 also includes improvements to existing functionality:
Performance gains in evaluating expressions or decisions: execution of an expression may now take 10 ms to evaluate the first time, but subsequently the same expression takes 0 ms to execute. Microservices that use expression evaluation will now execute much faster: e.g., a Microservice that took 160 milliseconds to execute, now takes < 12 milliseconds.
Microservices now include statistics and intuitive navigation to the REST API method. And , the Microservice workflow definition can now be accessed with one click. Microservices may now pass large objects such as JSON or XML through the form body parameter.
The REST API is high performance and secure: it is now fully Oauth 2.0 compliant.
Help documentation includes a guide on how to use OAuth with FlowWright. You may still use Basic Authentication, if desired. Tokens retrieved using the REST API can be used to authenticate with Microservices and the User Interface. REST API performance is improved, too: it is session-based, so no more authentication is required for every call.
Implementation of a multi-tier caching layer results in UI and engine performance improvements.
Improved workflow engine processing pipeline: 90% reduction in number of child processes launched, and substantial processing efficiency gains.
Version history now provides logging, and tracks logging types of logging applied. A bulk apply feature exists within the new multi-tenant manager, so that all (or selected) tenants can be upgraded with one click.
With respect to workflow functionality, FlowWright now includes:
FlowWright includes new documentation guides, too: Steps for sending messages within a workflow or within the hierarchy of workflow instances: across workflows, from parent to child, child to siblings, child to root-most. This inter-process communication (IPC) controls flow of processes by use of “wait for the message” and “send message” steps.
A “Placeholder” step that comes handy in most parallel workflow scenarios where the synchronization step is used.
A “Parallel For” step used to loop through a list of steps to both build and execute a workflow at runtime. Based on the number N of keys given, a workflow dynamically builds itself and executes N number of parallel paths.
- Tenant Manager user interface guide
- Guide on how to use oAuthentication
- REST API guide
- DFS Connector walkthrough
Above are some of the highlights of FlowWright v9.7, code-named “Burkart” in memory of Mr. Richard Burkart, a wonderful man and mentor to our team. We hope you enjoy FlowWright 9.7 and, as always, please share your thoughts back with us!