Explore case studies from our most demanding deployments and provide a best practice approach to designing and tuning applications for optimal performance.
MuleSoft Deployment Strategies (RTF vs Hybrid vs CloudHub)Prashanth Kurimella
Differences between MuleSoft Deployment Strategies (RTF vs Hybrid vs CloudHub)
For additional information, read https://www.linkedin.com/pulse/mulesoft-deployment-strategies-rtf-vs-hybrid-cloudhub-kurimella/
Object Store v2 provides fast sharing of data and states across batch processes, Mule components, multiple distributed applications, and enables use of a distributed object store for advanced use cases such as API caching and API rate limiting. Learn what's new with object store and provide real-time feedback to MuleSoft's product management team.
Explore case studies from our most demanding deployments and provide a best practice approach to designing and tuning applications for optimal performance.
MuleSoft Deployment Strategies (RTF vs Hybrid vs CloudHub)Prashanth Kurimella
Differences between MuleSoft Deployment Strategies (RTF vs Hybrid vs CloudHub)
For additional information, read https://www.linkedin.com/pulse/mulesoft-deployment-strategies-rtf-vs-hybrid-cloudhub-kurimella/
Object Store v2 provides fast sharing of data and states across batch processes, Mule components, multiple distributed applications, and enables use of a distributed object store for advanced use cases such as API caching and API rate limiting. Learn what's new with object store and provide real-time feedback to MuleSoft's product management team.
Equipped with a brand new UI and fully integrated with all design tooling within the platform, this major release of Anypoint Exchange includes capabilities for easy publishing and consumption of API specs, advanced search, collaboration and commenting, and analytics. Join this session to learn about all the new features, and how best to set up and use Anypoint Exchange to maximize reuse and collaboration within your organization.
Designing Apps for Runtime Fabric: Logging, Monitoring & Object Store Persist...Eva Mave Ng
Sydney MuleSoft Meetup - 15th July 2021
Designing Apps for Runtime Fabric: Logging, Monitoring & Object Store Persistence
Speakers:
- Shefreen Kunhimohamed, NJC Labs, Integration Architect
Hosts/Moderators:
- Eva Mave Ng, MuleSoft, Senior Solution Engineer
- Royston Lobo, MuleSoft, Senior Technical Architect
To be notified for all future events, please join the Sydney MuleSoft Meetup group at https://meetups.mulesoft.com/sydney/
Manchester MuleSoft Meetup #6 - Runtime Fabric with Mulesoft Akshata Sawant
Come join us at the Online Meetup to learn more about ServiceNow and Gmail Integration with MuleSoft with detailed Demo. Help us spread the knowledge of Mule!
A brief agenda:
> Networking and Knowledge sharing.
> MuleSoft Latest Product Release Updates.
> Runtime Fabric in depth architecture.
> Finally, we will wrap-up this event with the agenda for the next meetup.
Stay connected to get updates on what's new in MuleSoft.
Speaker: Anu Vijayamohan
Host: Angel Alberici
VirtualMuleys: 66 - 20220304-April
Recording & Slides: https://meetups.mulesoft.com/events/details/mulesoft-online-group-english-presents-mulesoft-sizing-guidelines/
All Recordings & Slides: meetups.mulesoft.com/online-group-english/ & youtube.com/c/VirtualMuleysOnline/videos
In this session we will discuss:
Core concepts of sizing
Factors that impact mule sizing
T-Shirt sizing
Sizing nuances in Cloudhub vs OnPrem vs RTF
High Availability
Learn More About Object Store | MuleSoft Mysore Meetup #9
-What is an Object Store?
-Different types of Object Store
-Object Store behavior in different deployment models
- On-Prem
- Cluster
- CloudHub
- Hybrid
-Demo (on watermarking using Object Sore)
Speaker:- Pallavi M R
Organizers:
Shubham Chaurasia - https://www.linkedin.com/in/shubhamchaurasia1/
Giridhar Meka - https://www.linkedin.com/in/giridharmeka
For Upcoming Meetups Join MuleSoft Mysore Meetup Group- https://meetups.mulesoft.com/mysore/
APIs have become a strategic necessity for your business. They facilitate agility and innovation. However, the financial incentive associated with this agility is often tempered with the fear of undue exposure of the valuable information that these APIs expose. With data breaches now costing $400m or more, senior IT decision makers are right to be concerned about API security.
In this SlideShare, you'll learn:
-The top API security concerns
-How the IT industry is dealing with those concerns
-How Anypoint Platform ensures the three qualifications needed to keep APIs secure
Clustering, Server setup and Hybrid deployment setup using Anypoint Runtime M...Manish Kumar Yadav
We will talk more about Deployment Strategies,Pros cons for all Strategies,Cluster Setup and Server setup, Clustering,Server setup and Hybrid deployment setup using Runtime Manager in Mule 4
We will also talk more about Setting up alerts,Setting up Monitoring and Setting up Visualizer,Cloudhub-vs-on-premise,Connecting on-prem Mule Runtime with ARM
Best Practices in Implementing a Center for Enablement (C4E) within Your Orga...MuleSoft
Center for Enablement (C4E) is a cross-functional team that is charged with enabling their organization to consume and get full value from their integration projects and assets. Learn the step-by-step guide on rolling out a C4E within your organization by following a successful customer example.
Equipped with a brand new UI and fully integrated with all design tooling within the platform, this major release of Anypoint Exchange includes capabilities for easy publishing and consumption of API specs, advanced search, collaboration and commenting, and analytics. Join this session to learn about all the new features, and how best to set up and use Anypoint Exchange to maximize reuse and collaboration within your organization.
Designing Apps for Runtime Fabric: Logging, Monitoring & Object Store Persist...Eva Mave Ng
Sydney MuleSoft Meetup - 15th July 2021
Designing Apps for Runtime Fabric: Logging, Monitoring & Object Store Persistence
Speakers:
- Shefreen Kunhimohamed, NJC Labs, Integration Architect
Hosts/Moderators:
- Eva Mave Ng, MuleSoft, Senior Solution Engineer
- Royston Lobo, MuleSoft, Senior Technical Architect
To be notified for all future events, please join the Sydney MuleSoft Meetup group at https://meetups.mulesoft.com/sydney/
Manchester MuleSoft Meetup #6 - Runtime Fabric with Mulesoft Akshata Sawant
Come join us at the Online Meetup to learn more about ServiceNow and Gmail Integration with MuleSoft with detailed Demo. Help us spread the knowledge of Mule!
A brief agenda:
> Networking and Knowledge sharing.
> MuleSoft Latest Product Release Updates.
> Runtime Fabric in depth architecture.
> Finally, we will wrap-up this event with the agenda for the next meetup.
Stay connected to get updates on what's new in MuleSoft.
Speaker: Anu Vijayamohan
Host: Angel Alberici
VirtualMuleys: 66 - 20220304-April
Recording & Slides: https://meetups.mulesoft.com/events/details/mulesoft-online-group-english-presents-mulesoft-sizing-guidelines/
All Recordings & Slides: meetups.mulesoft.com/online-group-english/ & youtube.com/c/VirtualMuleysOnline/videos
In this session we will discuss:
Core concepts of sizing
Factors that impact mule sizing
T-Shirt sizing
Sizing nuances in Cloudhub vs OnPrem vs RTF
High Availability
Learn More About Object Store | MuleSoft Mysore Meetup #9
-What is an Object Store?
-Different types of Object Store
-Object Store behavior in different deployment models
- On-Prem
- Cluster
- CloudHub
- Hybrid
-Demo (on watermarking using Object Sore)
Speaker:- Pallavi M R
Organizers:
Shubham Chaurasia - https://www.linkedin.com/in/shubhamchaurasia1/
Giridhar Meka - https://www.linkedin.com/in/giridharmeka
For Upcoming Meetups Join MuleSoft Mysore Meetup Group- https://meetups.mulesoft.com/mysore/
APIs have become a strategic necessity for your business. They facilitate agility and innovation. However, the financial incentive associated with this agility is often tempered with the fear of undue exposure of the valuable information that these APIs expose. With data breaches now costing $400m or more, senior IT decision makers are right to be concerned about API security.
In this SlideShare, you'll learn:
-The top API security concerns
-How the IT industry is dealing with those concerns
-How Anypoint Platform ensures the three qualifications needed to keep APIs secure
Clustering, Server setup and Hybrid deployment setup using Anypoint Runtime M...Manish Kumar Yadav
We will talk more about Deployment Strategies,Pros cons for all Strategies,Cluster Setup and Server setup, Clustering,Server setup and Hybrid deployment setup using Runtime Manager in Mule 4
We will also talk more about Setting up alerts,Setting up Monitoring and Setting up Visualizer,Cloudhub-vs-on-premise,Connecting on-prem Mule Runtime with ARM
Best Practices in Implementing a Center for Enablement (C4E) within Your Orga...MuleSoft
Center for Enablement (C4E) is a cross-functional team that is charged with enabling their organization to consume and get full value from their integration projects and assets. Learn the step-by-step guide on rolling out a C4E within your organization by following a successful customer example.
Handling NFRs for the API through API policies (Custom Policies) -Part 2 | Mu...MysoreMuleSoftMeetup
Handling NFRs for the API through API policies (Custom Policies) -Part 2 | MuleSoft Mysore Meetup #26
Event Link:- https://meetups.mulesoft.com/events/details/mulesoft-mysore-presents-part-2-handling-nfrs-for-the-api-through-api-policies-custom-policies/
-Summary of Session One (Part 1 - Recap)
API’s NFR & Handling NFR
API Out of the Box Policies
API Policy Enforcement
-Handling NFR using Custom Policy
-Develop, Package, Publish & Manage a Custom Policy
-Use Case : Creating a Custom policy
For Upcoming Meetups Join Mysore Meetup Group - https://meetups.mulesoft.com/mysore/
Youtube:- youtube.com/@mulesoftmysore
Mysore WhatsApp group:- https://chat.whatsapp.com/EhqtHtCC75vCAX7gaO842N
Speaker:-
Vijayaraghavan Venkatadri:- https://www.linkedin.com/in/vijayaraghavan-venkatadri-b2210020/
Organizers:-
Shubham Chaurasia - https://www.linkedin.com/in/shubhamchaurasia1/
Giridhar Meka - https://www.linkedin.com/in/giridharmeka
MuleSoft Surat Virtual Meetup#3 - Anypoint Custom Policies, API Manager (Prox...Jitendra Bafna
MuleSoft Surat Virtual Meetup#3 - Anypoint Custom Policies, API Manager (Proxy and AutoDiscovery), HTTPS Proxy, Accessing Non Mule Application With API Manager
[Madrid-Meetup Octubre 22] Seguridad fuerte como el vinagre de Jerez. Políti...jorgelebrato
Todos hablamos de seguridad y todos queremos tener una fuerte como la que más. En esta edición veremos qué herramientas nos ofrece MuleSoft en su API Manager para aplicar políticas de seguridad y veremos cómo podemos crear y aplicar nuestras propias políticas.
apidays LIVE Hong Kong 2021 - Headless API Management by Snehal Chakraborty, ...apidays
apidays LIVE Hong Kong 2021 - API Ecosystem & Data Interchange
August 25 & 26, 2021
Headless API Management
Snehal Chakraborty, Cloud Integration Architect at Accenture Netherlands B.V.
Handling NFRs for the API through OoTB API policies Part-1 | MuleSoft Mysore ...MysoreMuleSoftMeetup
Handling NFRs for the API through API policies (Out of the box policies) Part 1 | MuleSoft Mysore Meetup #25
Session Link:- https://meetups.mulesoft.com/events/details/mulesoft-mysore-presents-part-1-handling-nfrs-for-the-api-through-api-policies-out-of-the-box-policies/
-What is the NFR of an API?
-How can API Policies deal with NFR?
-API Out of the Box policies
-API Policy Enforcement
-Discussion on each API Policy
-Discussion on use case scenarios
For Upcoming Meetups Join Mysore Meetup Group - https://meetups.mulesoft.com/mysore/
Youtube:- youtube.com/@mulesoftmysore
Mysore WhatsApp group:- https://chat.whatsapp.com/EhqtHtCC75vCAX7gaO842N
Speaker:-
Vijayaraghavan Venkatadri:- https://www.linkedin.com/in/vijayaraghavan-venkatadri-b2210020/
Organizers:-
Shubham Chaurasia - https://www.linkedin.com/in/shubhamchaurasia1/
Giridhar Meka - https://www.linkedin.com/in/giridharmeka
The Art of the Pitch: WordPress Relationships and SalesLaura Byrne
Clients don’t know what they don’t know. What web solutions are right for them? How does WordPress come into the picture? How do you make sure you understand scope and timeline? What do you do if sometime changes?
All these questions and more will be explored as we talk about matching clients’ needs with what your agency offers without pulling teeth or pulling your hair out. Practical tips, and strategies for successful relationship building that leads to closing the deal.
Encryption in Microsoft 365 - ExpertsLive Netherlands 2024Albert Hoitingh
In this session I delve into the encryption technology used in Microsoft 365 and Microsoft Purview. Including the concepts of Customer Key and Double Key Encryption.
Dev Dives: Train smarter, not harder – active learning and UiPath LLMs for do...UiPathCommunity
💥 Speed, accuracy, and scaling – discover the superpowers of GenAI in action with UiPath Document Understanding and Communications Mining™:
See how to accelerate model training and optimize model performance with active learning
Learn about the latest enhancements to out-of-the-box document processing – with little to no training required
Get an exclusive demo of the new family of UiPath LLMs – GenAI models specialized for processing different types of documents and messages
This is a hands-on session specifically designed for automation developers and AI enthusiasts seeking to enhance their knowledge in leveraging the latest intelligent document processing capabilities offered by UiPath.
Speakers:
👨🏫 Andras Palfi, Senior Product Manager, UiPath
👩🏫 Lenka Dulovicova, Product Program Manager, UiPath
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...James Anderson
Effective Application Security in Software Delivery lifecycle using Deployment Firewall and DBOM
The modern software delivery process (or the CI/CD process) includes many tools, distributed teams, open-source code, and cloud platforms. Constant focus on speed to release software to market, along with the traditional slow and manual security checks has caused gaps in continuous security as an important piece in the software supply chain. Today organizations feel more susceptible to external and internal cyber threats due to the vast attack surface in their applications supply chain and the lack of end-to-end governance and risk management.
The software team must secure its software delivery process to avoid vulnerability and security breaches. This needs to be achieved with existing tool chains and without extensive rework of the delivery processes. This talk will present strategies and techniques for providing visibility into the true risk of the existing vulnerabilities, preventing the introduction of security issues in the software, resolving vulnerabilities in production environments quickly, and capturing the deployment bill of materials (DBOM).
Speakers:
Bob Boule
Robert Boule is a technology enthusiast with PASSION for technology and making things work along with a knack for helping others understand how things work. He comes with around 20 years of solution engineering experience in application security, software continuous delivery, and SaaS platforms. He is known for his dynamic presentations in CI/CD and application security integrated in software delivery lifecycle.
Gopinath Rebala
Gopinath Rebala is the CTO of OpsMx, where he has overall responsibility for the machine learning and data processing architectures for Secure Software Delivery. Gopi also has a strong connection with our customers, leading design and architecture for strategic implementations. Gopi is a frequent speaker and well-known leader in continuous delivery and integrating security into software delivery.
Accelerate your Kubernetes clusters with Varnish CachingThijs Feryn
A presentation about the usage and availability of Varnish on Kubernetes. This talk explores the capabilities of Varnish caching and shows how to use the Varnish Helm chart to deploy it to Kubernetes.
This presentation was delivered at K8SUG Singapore. See https://feryn.eu/presentations/accelerate-your-kubernetes-clusters-with-varnish-caching-k8sug-singapore-28-2024 for more details.
Essentials of Automations: Optimizing FME Workflows with ParametersSafe Software
Are you looking to streamline your workflows and boost your projects’ efficiency? Do you find yourself searching for ways to add flexibility and control over your FME workflows? If so, you’re in the right place.
Join us for an insightful dive into the world of FME parameters, a critical element in optimizing workflow efficiency. This webinar marks the beginning of our three-part “Essentials of Automation” series. This first webinar is designed to equip you with the knowledge and skills to utilize parameters effectively: enhancing the flexibility, maintainability, and user control of your FME projects.
Here’s what you’ll gain:
- Essentials of FME Parameters: Understand the pivotal role of parameters, including Reader/Writer, Transformer, User, and FME Flow categories. Discover how they are the key to unlocking automation and optimization within your workflows.
- Practical Applications in FME Form: Delve into key user parameter types including choice, connections, and file URLs. Allow users to control how a workflow runs, making your workflows more reusable. Learn to import values and deliver the best user experience for your workflows while enhancing accuracy.
- Optimization Strategies in FME Flow: Explore the creation and strategic deployment of parameters in FME Flow, including the use of deployment and geometry parameters, to maximize workflow efficiency.
- Pro Tips for Success: Gain insights on parameterizing connections and leveraging new features like Conditional Visibility for clarity and simplicity.
We’ll wrap up with a glimpse into future webinars, followed by a Q&A session to address your specific questions surrounding this topic.
Don’t miss this opportunity to elevate your FME expertise and drive your projects to new heights of efficiency.
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...DanBrown980551
Do you want to learn how to model and simulate an electrical network from scratch in under an hour?
Then welcome to this PowSyBl workshop, hosted by Rte, the French Transmission System Operator (TSO)!
During the webinar, you will discover the PowSyBl ecosystem as well as handle and study an electrical network through an interactive Python notebook.
PowSyBl is an open source project hosted by LF Energy, which offers a comprehensive set of features for electrical grid modelling and simulation. Among other advanced features, PowSyBl provides:
- A fully editable and extendable library for grid component modelling;
- Visualization tools to display your network;
- Grid simulation tools, such as power flows, security analyses (with or without remedial actions) and sensitivity analyses;
The framework is mostly written in Java, with a Python binding so that Python developers can access PowSyBl functionalities as well.
What you will learn during the webinar:
- For beginners: discover PowSyBl's functionalities through a quick general presentation and the notebook, without needing any expert coding skills;
- For advanced developers: master the skills to efficiently apply PowSyBl functionalities to your real-world scenarios.
DevOps and Testing slides at DASA ConnectKari Kakkonen
My and Rik Marselis slides at 30.5.2024 DASA Connect conference. We discuss about what is testing, then what is agile testing and finally what is Testing in DevOps. Finally we had lovely workshop with the participants trying to find out different ways to think about quality and testing in different parts of the DevOps infinity loop.
Transcript: Selling digital books in 2024: Insights from industry leaders - T...BookNet Canada
The publishing industry has been selling digital audiobooks and ebooks for over a decade and has found its groove. What’s changed? What has stayed the same? Where do we go from here? Join a group of leading sales peers from across the industry for a conversation about the lessons learned since the popularization of digital books, best practices, digital book supply chain management, and more.
Link to video recording: https://bnctechforum.ca/sessions/selling-digital-books-in-2024-insights-from-industry-leaders/
Presented by BookNet Canada on May 28, 2024, with support from the Department of Canadian Heritage.
UiPath Test Automation using UiPath Test Suite series, part 4DianaGray10
Welcome to UiPath Test Automation using UiPath Test Suite series part 4. In this session, we will cover Test Manager overview along with SAP heatmap.
The UiPath Test Manager overview with SAP heatmap webinar offers a concise yet comprehensive exploration of the role of a Test Manager within SAP environments, coupled with the utilization of heatmaps for effective testing strategies.
Participants will gain insights into the responsibilities, challenges, and best practices associated with test management in SAP projects. Additionally, the webinar delves into the significance of heatmaps as a visual aid for identifying testing priorities, areas of risk, and resource allocation within SAP landscapes. Through this session, attendees can expect to enhance their understanding of test management principles while learning practical approaches to optimize testing processes in SAP environments using heatmap visualization techniques
What will you get from this session?
1. Insights into SAP testing best practices
2. Heatmap utilization for testing
3. Optimization of testing processes
4. Demo
Topics covered:
Execution from the test manager
Orchestrator execution result
Defect reporting
SAP heatmap example with demo
Speaker:
Deepak Rai, Automation Practice Lead, Boundaryless Group and UiPath MVP
Elevating Tactical DDD Patterns Through Object CalisthenicsDorra BARTAGUIZ
After immersing yourself in the blue book and its red counterpart, attending DDD-focused conferences, and applying tactical patterns, you're left with a crucial question: How do I ensure my design is effective? Tactical patterns within Domain-Driven Design (DDD) serve as guiding principles for creating clear and manageable domain models. However, achieving success with these patterns requires additional guidance. Interestingly, we've observed that a set of constraints initially designed for training purposes remarkably aligns with effective pattern implementation, offering a more ‘mechanical’ approach. Let's explore together how Object Calisthenics can elevate the design of your tactical DDD patterns, offering concrete help for those venturing into DDD for the first time!
3. Introduction
• Policies are extended functionalities which you can apply on your API instances using API Manager.
• API instances are instances of Mule applications defined in API Manager which are paired with the deployed
application in the runtime manager using Auto-Discovery.
• Alternatively, an offline custom policy is applied directly to the runtime and not through API Manager.
• API policies are layered on the top of the API implementation to provide governance, security or visibility.
• Majority of use cases are covered by default OOTB policies provided by MuleSoft:
• Client ID Enforcement
• Basic Authentication– Simple Policy
• Basic Authentication- LDAP
• IP Blacklist
• IP Whitelist
• Spike Control
• Rate Limiting
• Rate Limitingwith SLAetc.
4. Policy Architecture
• MisconceptionthatAPI Manager interceptsrequeststo your API, it doesn’t.
• API Instancesdefined in API Manager gets paired with the APIs deployed in the Mule Environmentvia
Auto-Discovery.
• A communicationagentwithin the Runtime manager checks any update in the API Managerand
downloads and applies the policies on the top of the API instances.
• Below applicationproperties allow pairing of API with the Mule application:
anypoint.platform.analytics_base_uri=https://analytics-ingest.anypoint.mulesoft.com
anypoint.platform.coreservice_base_uri=https://anypoint.mulesoft.com/accounts
anypoint.platform.platform_base_uri=https://anypoint.mulesoft.com/apiplatform
anypoint.platform.contracts_base_uri=https://anypoint.mulesoft.com/apigateway/ccs
anypoint.platform.client_id=<environment_client_id>
anypoint.platform.client_secret=<environment_client_secret>
6. Autodiscovery Revisit
• API Autodiscovery is used to pair an API in API Manager to its deployed Mule application.
• Runtime manager agent enforcesthe policies on the API by communicatingwith the API Manager.
• GateKeeperprevents this trafficby blocking the trackedresource until all policies have been retrieved
and applied without errors.During this period, the API returnsa 503 HTTP statuscode.
<api-gateway:autodiscovery
apiId="${apiId}" flowRef="myFlow" />
• Configure the apiIdwith the API ID that API
Manager assigned to your API.
• Set the flowRefelement to point to the HTTP
flow that youwant to pair to the API in API
Manager.
7. Resource Level Policies
• In Mule 4, resource-level policies supportHTTP-based APIs in addition to RAML APIs.You can apply
multiple conditions to filter your resources and HTTP methods using the URI template regex to any
number of methods in your API.
8. Custom Policies
• Custom Policies are extended functionalitieswhich are developed as per specific requirements and are
applied to the Mule applicationin the same way as default policies provided by MuleSoft.
• In Mule 4 and later,policies are assets in Exchange. You have to go to Exchange,instead of API Manager,
to create policies. In Mule 3, custompolicies were createdin API manager by uploading the policy
artefacts.
Online Policy
• An online policy is applied to an API by the runtime manager by connectingto the API Manager.
Offline Policy
• An offline policy is applied directly to the runtime and not throughAPI Manager.
9. Custom Policies
Scenarios when custom policies can be useful:
• Custom policies can be used for implementing any non-functionalrequirement that is related to API
management and is not available as an OOTB policy in the API manager.
• Implementing a custompolicy helps the policy logic to be applied on multiple APIs via API manager
rather than implementing the logic in every API.
• Inbound policies can be used to manage incoming requests or trafficto an API for example throttling,
circuitbreaker, cachingor for implementing any customsecurity mechanism.
• Outbound policies can be used to inject customheaders or perform any house-keeping tasks before and
after any outboundHTTP request made in the Mule flow.
10. Custom Policies
• The current workflow to get a working policy for Mule 4 thatcan be applied in Anypoint Platform
consistsof:
• Developthe policy.
• Package the policy.
• Uploadthe resulting policy assets to Exchange.
• Apply the policy to any API through API Manager.
• A custompolicy consistof two main artefactspackagedintoa JAR:
• A Mule configurationfile containingthe policy logic.
• A YAML file describing the policy configurations to be done via API manager UI.
• Create the custompolicy projectusing the Mule archetyperepository:
• https://repository-master.mulesoft.org/nexus/content/repositories/public
11. Custom Policies - Setup
• Set up your maven settings- $M2_HOME/conf/settings.xmlto locate the archetype repository:
<profile>
<id>archetype-repository</id>
<repositories>
<repository>
<id>archetype</id>
<name>MuleRepository</name>
<url>https://repository-master.mulesoft.org/nexus/content/repositories/public</url>
<releases>
<enabled>true</enabled>
<checksumPolicy>fail</checksumPolicy>
</releases>
<snapshots>
<enabled>true</enabled>
<checksumPolicy>warn</checksumPolicy>
</snapshots>
</repository>
</repositories>
</profile>
12. Custom Policies - Setup
• Create a maven projectusing the archetyperepository:
• Enter the policy descriptionand policy name:
mvn -Parchetype-repository archetype:generate
-DarchetypeGroupId=org.mule.tools
-DarchetypeArtifactId=api-gateway-custom-policy-archetype
-DarchetypeVersion=1.2.0
-DgroupId=f2c80369-122e-2ea2-8362-464d7f1aa055
-DartifactId=custom-circuit-breaker-policy
-Dversion=1.0.0
-Dpackage=mule-policy
• The groupId shouldbe the org id of the
organisationwhere the policy will be uploaded.
• Get the org id fromthe Access Management →
Organization.
13. Custom Policies - Setup
• Custom policy project structure:
• mule-artifact.json represents the descriptor for the custom policy application. Policies cannot export
resources nor packages such as Java classes.
• my-custom-policy.yaml renders the policy configuration UI. If this file is not provided, the policy won’t be able
to be applied through API Platform’s UI.
• template.xml where the actual logic of the policy and Mule configuration that defines the policy behaviour.
14. Custom Policies - Setup
• Import the maven projectin Anypoint Studio:
• File → Import → Maven→ ExistingMavenProjects → Browsethe root folder of the mavenproject whichgot generated → Click
Finish.
• The POM file of the projectwill containthe below segment,
• Mention the URL with the Org Id in the properties section in the POM file:
<distributionManagement>
<repository>
<id>exchange-server</id>
<name>Corporate Repository</name>
<url>${exchange.url}</url>
<layout>default</layout>
</repository>
</distributionManagement>
<exchange.url>https://maven.anypoint.mulesoft.com/api/v1/organizations/f2c80369-122e-2ea2-8362-
464d7f1aa055/maven</exchange.url>
• Add the Anypoint platformuserwhichhas rights to upload
artefactsinto Exchange,inthe server configurationin
Mavensettings. The <id> field shouldmatchthe name of
the <id> in distribution management in the POM file.
<server>
<id>exchange-server</id>
<username>myapuser</username>
<password>myappassword123</password>
</server>
16. Custom Policies – Inbound and
Outbound
• Policies can be applied to an HTTP flow as a source type or an operationtype.
• Sourcetype also called Inbound type is applicable to the HTTP Listener in the source of the HTTP flow.
• Operationtype also called Outbound type are applicable on each HTTP Requester in the HTTP Flow.
• To disable anoutbound policy for a specific HTTP requester,addthe below annotationotherwise the policy is applicable to all the
HTTP requesters in the flow,this feature is releasedfor Mule runtime version4.3.0 :
• api-gateway:disablePolicies=“true”
• A Sample Inbound
policy
17. Custom Policies – YAML
id: circuit-breaker-policy
name: circuit-breaker-policy
description: A Circuit Breaker
category: Custom
type: custom
resourceLevelSupported: true
encryptionSupported: false
standalone: true
configuration:
- propertyName: tripThreshold
name: Trip Threshold
description: Maximum number of errors allowed before the circuit is open.
type: int
minimumValue: 1
maximumValue: 2147483647
optional: false
sensitive: false
allowMultiple: false
- propertyName: errorCodes
name: Error Codes
description: A comma separated list of error codes for which the circuit breaker criteria is evaluated.
type: string
optional: false
sensitive: false
allowMultiple: false
• A YAML ConfigurationFile contains the policy
parameters andmetadata.
18. Custom Policies – YAML Property Types
• The ConfigurationUI properties are accessible in the policy templateusing Handlebar variables.
• Handlebar expressionssupport different constructslike if-else, each (for multiple values/keyvalue lists) etc.
• https://handlebarsjs.com/guide/builtin-helpers.html
• Depending of the type of the parameter,the UI will render a different type of input such as::
• String: Any string expected.
• Expression: A DataWeaveexpression starting with #[ and finished with ] is expected.
• Boolean: true or false.
• Int: A number is expected. This type requires additional properties.
• minimumValue: -1
• maximumValue: 2147483647
• Radio: One valueof a group of options. This type requires additional properties:
• Keyvalues: Collection of Key-Valuepairs. You can loop through all the Key-Valuepairs using handlebar #each construct.
• Ex - {{#each responseHeaders}}
<http-transform:header headerName="{{{this.key}}}" headerValue="{{{this.value}}}"/>
{{/each}}
19. Custom Policies – Extensions
• HTTP Policy TransformExtensionallows manipulation of HTTP request/responsemessages in the
custompolicies.
• Operationsallowed:
• Add Headers Operations
• Add Request Headers
• Add Request Headers List (Since mule-http-policy-transform-extension3.1.0)
• Add Response Headers
• Add Response Headers List (Since mule-http-policy-transform-extension3.1.0)
• Remove Headers
• Set Response
• Set Request
Ref: https://docs.mulesoft.com/api-manager/2.x/http-policy-transform
21. Custom Policies – Inbound and
Outbound
Source
Operation
HTTPFlow
HTTPListener
HTTPRequester
Mule Flow Steps
Mule Flow Steps
Execute next
Execute next
Pre-ExecutionSteps
Post-ExecutionSteps
Pre-ExecutionSteps
Post-ExecutionSteps
1
2
3
4
5
6 • Default
message
propagation
• Default
message
propagation
To achieve message
propagationin#1 and #5 use
property
propagateMessageTransforma
tions=true in the Source and
Operationelements
respectively
22. Custom Circuit Breaker - Demo
• This simple circuitbreakeravoids making the protected
call when the circuitis open, butwould needan
externalinterventiontoresetit when thingsare well
again.This is a reasonable approachwith electrical
circuitbreakersin buildings,but for softwarecircuit
breakerswe can have the breakeritself detectif the
underlyingcalls are working again.We can implement
this self-resettingbehaviourby trying the protectedcall
again aftera suitableinterval,andresettingthe
breaker shouldit succeed.
• Ref: https://martinfowler.com/bliki/CircuitBreaker.html
23. Custom Circuit Breaker - Demo
• GitHub Code Repository:
https://github.com/susmind/mule-circuit-
breaker-policy
◦ Clone the project and import in your
anypointstudio
◦ Modifypom.xml to inject your Org Id
◦ Configure your maven settings with the
AnypointExchange server credentials
◦ Deploythe policyusing maven command:
◦ mvn deploy
◦ Open Anypoint Exchange to verifythat the
custom policygot deployed.
◦ Go to API Manager API instance and apply
the policyby selectingthe category –
“Custom”
24. Custom Salesforce OAuth Injector Policy -
Demo
• GitHub Code Repository:
https://github.com/susmind/mule-circuit-breaker-policy
◦ This is an outbound policythat calls the Salesforce Login API,
stores,refreshes and injects OAuth Tokens for the outbound
Salesforce REST API calls in the HTTP flow on which the policy
is applied.
◦ This is implemented to demo an outboundpolicyand not
suggested to use this mechanism to interact with Salesforce
REST API in general.
◦ Use the steps mentioned in the previous slides to import the
policyproject in the Anypoint studio and use Maven to deploy
in the Exchange.
◦ Repositoryfor the sample API used in the Demo can be found
here: https://github.com/susmind/mule-meetup-sample-
api.git