Mar 20, 2024
Adobe Workfront Fusion is the most user-friendly method for automating and integrating Workfront with third-party solutions. This capability presents an opportunity to manage and establish a unified system of records effectively. However, like any powerful technology, grasping the nuances and intricacies of Adobe Workfront Fusion is essential for maintaining and optimizing your integration scenarios.
In this blog, we have five tips to enhance your Fusion experience.
-
Simplify Scenarios
The most efficient scenarios target a specific use case, as scenarios lose performance when attempting to accomplish too much. To simplify your scenario, consider the following ideas:
-
Outline the business use case: One valuable skill in designing your scenario is the ability to separate business requirements and openly discuss with the business stakeholders what aspects can function optimally within Workfront and what may not. Spend ample time in the design phase carefully considering what data needs to be synchronized between systems, what data can be discarded, etc.
-
Determine the trigger event: Determine the specific action required to effectively activate the scenario. Establish a single and precise trigger that clearly defines when the scenario should be initiated. In many cases, opting for an immediate trigger, which activates the scenario instantly upon the occurrence of the specified action, is more favorable than relying on a scheduled trigger that operates at predefined intervals.
-
Review your router modules: The presence of multiple routers may suggest that certain processes can be divided into distinct scenarios. Evaluate your branches to identify opportunities to extract processing from the original scenario.
-
Revisit your scenario design: Pause to reassess the objective of your scenario and contemplate whether there are any possibilities for simplification.
-
-
Understand the Guardrails Provided by Fusion
Adobe Workfront Fusion comes equipped with guardrails designed to maintain scenario performance. Familiarizing yourself with these limitations in advance can assist in proactive planning and prevent potential issues. Let's explore some of the key guardrails you may encounter:
-
Scenario Execution Timeout: The timeout is set to 40 minutes by default. If a scenario exceeds this time limit, it will fail and may be stored under Incomplete Executions, depending on your configuration.
-
Module Operation Timeout: Each module operation has a timeout of 40 seconds.
-
Blueprint Size Limit: Blueprints cannot exceed 5MB in size, although Adobe recommends keeping them under 3MB.
-
Server Memory Usage: Server memory usage is limited to 1GB.
-
Webhook Payload Size: The maximum payload size that a webhook can handle is 5MB.
-
Webhook Payload Storage: Webhook payloads are stored in the execution history for up to 30 days.
-
Webhook Deactivation: If a webhook is unused in an inactive scenario for more than 30 days, or is unconnected to any scenario for more than 5 days, it will be deactivated. Any deactivated webhook remaining unused for more than 30 days will be removed.
-
Execution History Logs Size: Logs in the execution history are limited to a size of 100MB.
-
-
Familiarize Yourself with the Mapping Panel and Available Functions
Fusion offers a user-friendly and powerful interface for manipulating and transforming data. The editor is equipped with five different types of functions that can be utilized together, often referred to as nested functions. These include:
-
General Functions: These functions can encapsulate other functions, such as "if" and "get."
-
Math Functions: Useful for mathematical operations, here you will find functions like "average," "ceil," "min," and "max."
-
Text and Binary Functions: Contains functions for text manipulation, such as "lower," "replace," and "capitalize."
-
Date and Time Functions: These functions are used to manipulate dates, for example, "addDays" and "formatDate."
-
Array Functions: When dealing with array outputs, these functions become essential, particularly "map," "slice," and "sort," among others.
Understanding the available options is crucial because there are often multiple ways to perform certain operations. Don't worry if you're unfamiliar with all the syntaxes; each formula is thoroughly explained and accompanied by usage examples when you hover over it. Becoming familiar with and knowing all the available options will empower you to make better decisions when manipulating the data flowing through the scenario.
-
-
Utilize Error Directives and Reprocess
Fusion offers five types of directives for error handling, each serving specific purposes and better suited to particular use cases. In addition to these directives, you must also consider "default error handling," which becomes the preferred method if none of the directives are used. Furthermore, it's essential to note that enabling the option "Allow storing incomplete executions" will slightly alter the functionality of the directives. Below is a brief summary of them:
-
Rollback: This is the default behavior if no other directive is used. Fusion attempts to "undo" the operations performed by the modules that were successful before the scenario failed. The scenario execution status is marked as "error".
-
Commit: With this directive, all modules where errors did not occur are officially committed. Consequently, the scenario execution status is denoted as "success." Although this directive is infrequently utilized, it can be beneficial if you opt not to track instances of errors throughout the execution process.
-
Resume: With this directive, you can define a substitute output for the module encountering an error, thus enabling the execution to persist without disruption. Despite encountering an error, the overall status of the scenario is marked as "success." This feature is particularly advantageous as it allows you to manage errors gracefully and maintain the continuity of your workflow.
-
Ignore: In this case, the scenario is flagged as "success," regardless of the occurrence of an error. This directive essentially disregards any errors encountered during execution, allowing the scenario to proceed without interruption. It can be useful in situations where certain errors are expected or deemed insignificant to the overall process flow.
-
Break: This directive stores the execution in incomplete executions and provides options for automatic retry. It's useful when dealing with Timeout errors.
-
Retry: While "Retry" is not a directive per se, you can achieve this behavior using the above directives. Adobe has provided a method to accomplish retry behavior in their official documentation.
-
-
Balance the Payload Managed per Scenario
While the general rule is to simplify your scenario as much as possible, there are instances where complexity arises, particularly when assessing the volume of data your scenario will handle and process. Typically, there is a trade-off among the following configurations.
-
Number of cycles: When dealing with operations requiring substantial data, consider how often your scenario needs to process it. A best practice is to evaluate how much data can be held before processing, providing insight into whether your scenario can efficiently manage the workload.
-
Number of bundles: The number of bundles in your scenario directly impacts its efficiency. Bundles represent sets of data processed together within a scenario. Fewer bundles mean fewer individual operations, which can lead to faster execution times and reduced resource consumption. To decrease the number of bundles, consider implementing filters to narrow down the scope of processed data. Additionally, leverage aggregation functions whenever feasible to consolidate data and reduce the number of individual bundles required for processing.
-
Reducing API calls: Reducing the frequency of API calls to external APIs is important for avoiding potential rate limit issues and optimizing the efficiency of scenario execution. To accomplish this, it's beneficial to employ filters to create precise triggers or narrow down calls to only the relevant records that require processing.
-
Number of modules: Modules serve as the core components of a scenario. Scenarios containing more than 150 modules often exhibit poor performance. To alleviate this, identify areas where SET/GET Multiple modules can be employed, and master the usage of the mapping panel to avoid using modules for tasks that can be accomplished solely with functions.
-
Conclusion
Adobe Workfront Fusion presents an accessible and intuitive means to automate and integrate Workfront with external solutions, offering the potential to establish a unified system of records. However, maximizing the efficiency and effectiveness of integration scenarios requires attention to certain considerations. By incorporating the tips and tricks we've discussed, you can fine-tune your Fusion experience and elevate your integration workflows to new heights.
Related Insights
-
-
-
-
Oshyn
AEM as a Cloud Service (AEMaaCS)
The Benefits of AEM in the Cloud
This site is protected by reCAPTCHA and the Google Privacy Policy and Terms of Service apply.