SlideShare uma empresa Scribd logo
1 de 41
MuleSoft Meetup
Reading, United Kingdom
04th March, 2022
https://integralzone.com
sales@integralzone.com
PAGE 2
✔ This will be a recorded session.
✔ Please be on mute during the speaker session.
✔ At the end of each speaker presentation, you can ask questions using chat or Q&A
options.
✔ A quiz will be conducted at the end of the session.
✔ The recordings and slides of the session will be made available to all the attendees.
House rules
2
PAGE 3
Agenda
5pm – 5.15pm Introductions
5:15pm Speaker Session I: MuleSoft Transaction types followed by QnA
5:45pm Speaker Session II: Code quality analysis followed by QnA
6:15pm Quiz
5:45pm Closure
3
PAGE 4
Saurabh Vatsa
Solution Architect,
MuleSoft Mentor
Integral Zone
Speakers
Naveen
Manager: Product Sales
Integral Zone
Speaker Host Speaker
Hitesh Joshi
Senior MuleSoft Consultant
MuleSoft Mentor
Integral Zone
PAGE 5
- 2015 Company founded by ex-Oracle and ex-MuleSoft
employees
- Head quartered in the UK and offices in India and
Middle East
- MuleSoft/Salesforce services partner
- 50+ MuleSoft Services engagements
- 40+ customers including HSBC, Unilever, BP, NHS and
Roche
- 2019 Foray into Product development
- 4 Products in Dev Sec Ops and C4E space
About Integral Zone
5
Saurabh Vatsa
Solution Architect, Integral Zone
MuleSoft Mentor
Transaction Management
MuleSoft Meet up | Reading, United Kingdom
What is a Transaction?
Transaction is a group of actions that should be performed as if they were a single "bulk" action.
● Atomicity
● Consistency
● Isolation
● Durability
7
Transaction Management in Mulesoft
Transactions in Mule are required when we have a series of processes in a flow that must succeed
completely or fail completely.
8
Single Resource Transactions
It only uses a single resource to send or receive messages: JMS broker, VM queues, or JDBC connections.
○ The example below illustrates a flow which includes a single resource transaction performed using the source
and publish operations of the JMS connector.
9
Single Resource Transactions
A typical flow with Local Transaction (Single Resource Transaction)
10
Single Resource Transactions
The following screenshot highlights how to always begin a local transaction.
11
Single Resource Transactions
The following image highlights how to join a transaction that is already in progress.
12
XA Transactions
Extended Architecture Transactions (or XA Transactions) can be used to group a series of operations from multiple
transactional resources, such as VM, JMS or Database, into a single reliable global transaction.
The XA protocol defines a 2-phase commit protocol which can be used to reliably coordinate and sequence a series
of atomic operations across multiple servers of different types.
13
XA Transactions
A typical flow with XA Transaction.
14
XA Transactions
The following screenshots highlights how to always begin a XA transaction and how to join a XA in-progress
transaction.
15
XA Transactions
XA supports nested transactions:
16
XA Nested Transactions
17
XA Transactions
18
Using Bitronix to Manage Transactions
Bitronix works on JTA (Java Transaction API) to perform global transactions , that is, transactions that access and
update data on two or more networked computer resources.
Bitronix Transaction Manager allows Mule to automatically recover interrupted transactions on restart.
It runs a recovery process to process any inflight transactions that were left abandoned during a instance crash or
connectivity issues.
19
Error Handling
When an error occurs during a transaction, your application must either handle the error and continue or perform a
rollback.
There are two types of error handlers, which behave differently when an error occurs during a transaction:
○ On Error Propagate
○ If the on-error-propagate error handler is inside the error-handler scope corresponding to the
component that began the transaction it will rollback the transaction if there is any error in the flow.
20
Error Handling
On Error Continue
The error is handled, the transaction remains active and is able to commit.
21
Use Case : Ecommerce Checkout
The upcoming use case is about a ecommerce checkout and payment process involving payment through
multiple payment methods (wallet and bank transactions), gift cards redemption and cash back.
Requirements:
➔ Debit customer’s wallet and account based on the chosen payment method.
➔ If wallet debit or bank call times out , retry the entire transaction again in the background and create the
order for the customer
➔ If wallet debit or bank call returns any error, rollback the transaction and return the error message.
➔ If redemption of the gift card or credit of wallet fails, retry in the background and commit the transaction.
22
Use Case : Ecommerce Checkout
23
Thank You
Now its time for QnA
Hitesh Joshi
Senior MuleSoft Consultant
Integral Zone
MuleSoft Code quality Analysis
Maintaining code quality in integration delivery
MuleSoft Meet up | Reading, United Kingdom
04th March, 2022
26
⮚ What is Code Quality
⮚ Mulesoft Code Quality Tools
⮚ Deep dive into IZ Analyzer
⮚ Demo
⮚ Endnotes
Agenda
27
What is Code Quality
Bug free
Security
Maintainability
Reusability
Complexity
Others
Peer Review
Quality
Code
• Everyone
• Security Team
• NW Team
• Architects
• Support Team
• Project Man
• Project Man
• Business
• Architect
• Project Man
• Project Man
• Business
28
Mulesoft Code Quality Tools
Popular Mulesoft Code Quality Assessment Tools Available in the market
⮚ Mule-Sonar-Plugin
⮚ Mule-Lint
⮚ IZ Analyzer
29
Mule-Sonar-Plugin
Mule-Sonar-Plugin is open source unlicensed project available in market which provides static code
analysis for Mulesoft projects. It leverages popular CQA platform SonarQube’s quality gates to do
validation of Mule code.
⮚ Open Source
⮚ No cost – free to use
⮚ Can scan multiple projects
⮚ Central view
⮚ Unlicensed – Not an official product.
⮚ Only static code analysis.
⮚ No plugin for Anypoint Studio
⮚ Comes with very few predefined Mule validation rules.
⮚ No thought leadership behind.
⮚ Since unlicensed – No support channel,
No guaranteed updates
Pros Cons
30
Mule-Lint
Mule-Lint is another open source unlicensed project which was initiated by a few evangelist in
Mule space on Minimum Viable Product basis. This also provides static code analysis for Mule.
Pros Cons
⮚ Open Source
⮚ No cost – free to use
⮚ Light weighted
⮚ Unlicensed – Not an official product.
⮚ Only static code analysis.
⮚ No plugin for Anypoint Studio
⮚ All validation rules have to be defined .
⮚ No thought leadership behind.
⮚ Since unlicensed – No support channel,
No guaranteed updates
31
IZ Analyzer – Deep Dive
IZ Analyser’s biggest edge compared to other two products for Mulesoft CQA is Anypoint Studio
plugin. It’s on-the-fly result set in studio shows real time code violations, enabling developers to
make their code compliant early in dev lifecycle saving lot of time.
⮚ Tailor-made for Mulesoft – Pre defined 180+ Mule validation rules.
⮚ Static Code Analysis – With DevOps plugin – WebView
⮚ Real-time Dynamic Code Analysis – Anypoint Studio Plugin
⮚ Ability to scan Non Mule – OAS API specs as well.
⮚ Enterprise grade license, support from Integral Zone.
32
Deep dive – IZ Analyzer
How does it makes normal Muleys life easy?
⮚ Anypoint Studio Plugin.
⮚ Early code violation detection.
⮚ Predefined rules for Mule best practices.
⮚ Autofix and FixPreview feature at button clicks.
⮚ Custom rule creation.
⮚ DevOps integrated code scans.
⮚ Organisational web view.
⮚ Ability to scan non mule API specs as well.
33
Deep dive – IZ Analyzer
⮚ Quick Demo - Anypoint Studio Plugin
▪ All connectors configs are not defined in global.xml
▪ Implementation should not be in auto generated file
▪ API Datatype - min and max length not defined for String datatype
34
Mule CQA Tools Comparison
Features
Mule-Sonar-
Plugin
IZ Analyzer MuleLint
Purpose built for all Mule configuration files
(YAML, XML, RAML, OAS)
Anypoint Studio Plugin
Predefined Mule best practice rules
Central rules management for MuleSoft
Enterprise grade support
Auto Fix and FixPreview Feature
Custom Rule Creation – Studio Editor
Regular rules updates from product
Comprehensive central insight
Well documented use
Thank You
Now its time for QnA
Its Quiz time
37
Quiz: Questions
1. In case there is no error handling defined and any failure happens during the
transaction, is the transaction rolled back or still committed?
2. Is it possible to set a transactional resource to skip and to not be a part of an in-
progress transaction ?
3. Does Munit support Sonar reports in Mule? If yes, with which version of Munit this
functionality was released? If not, what is the MuleSoft roadmap for this.
38
Quiz: Answers
1. In case there is no error handling defined and any failure happens during the
transaction, is the transaction rolled back or still committed?
Transaction is rolled back. By default, Mule propagates an exception in the absence of
exception handling
2. Is it possible to set a transactional resource to skip and to not be a part of an in-
progress transaction ?
Yes, it is possible if we explicitly set the transaction action as “Not_Supported“
3. Does Munit support Sonar reports in Mule?
1. If yes, with which version of Munit this functionality was released?
Yes, it does.
2. If not, what is the MuleSoft roadmap for this.
MuleSoft has already included this and it is available from Munit version 2.3.0
onwards.
39
Quick knowledge hacks
C4E
a. Video series: Accelerating C4E adoption
a. Video 1: Introduction
b. Video 2: Accelerators
c. Video 3: Code review
d. Video 4: DevSecOps
b. All C4E-related archive
IZ ANALYZER
a. Automate Mule Code reviews with IZ Analyzer: An Overview with Explanatory video
b. Technical Documentation about IZ Analyzer
40
What next?
Try for free
IZ Analyzer and get your Code review results
instantly!
https://analyzer.integralzone.com/try
Participate in our Code Quality Reviews:
Annual Trend Survey 2022
https://survey.integralzone.com/zs/nhCCyE
Survey sample questions
Thank you
Visit us at
https://integralzone.com
sales@integralzone.com

Mais conteúdo relacionado

Mais procurados

MuleSoft: How to Engage Partners/Customers and API Led with Alexa
MuleSoft: How to Engage Partners/Customers and  API Led with Alexa MuleSoft: How to Engage Partners/Customers and  API Led with Alexa
MuleSoft: How to Engage Partners/Customers and API Led with Alexa
Angel Alberici
 

Mais procurados (20)

Anypoint MQ-DLQ NYC Meet Up
Anypoint MQ-DLQ NYC Meet UpAnypoint MQ-DLQ NYC Meet Up
Anypoint MQ-DLQ NYC Meet Up
 
MuleSoft São Paulo Meetup #3 - 18 Jun
MuleSoft São Paulo Meetup #3 - 18 JunMuleSoft São Paulo Meetup #3 - 18 Jun
MuleSoft São Paulo Meetup #3 - 18 Jun
 
Sustainability Challenge, Postman, Rest sheet and Anypoint provider : MuleSof...
Sustainability Challenge, Postman, Rest sheet and Anypoint provider : MuleSof...Sustainability Challenge, Postman, Rest sheet and Anypoint provider : MuleSof...
Sustainability Challenge, Postman, Rest sheet and Anypoint provider : MuleSof...
 
MuleSoft Meetup Houston #15
MuleSoft Meetup Houston #15MuleSoft Meetup Houston #15
MuleSoft Meetup Houston #15
 
MuleSoft Milano Meetup #7 Florence Consulting
MuleSoft Milano Meetup #7  Florence Consulting MuleSoft Milano Meetup #7  Florence Consulting
MuleSoft Milano Meetup #7 Florence Consulting
 
Meetup bangalore-may22nd2021
Meetup bangalore-may22nd2021Meetup bangalore-may22nd2021
Meetup bangalore-may22nd2021
 
Power of LWC + Mulesoft
Power of LWC + MulesoftPower of LWC + Mulesoft
Power of LWC + Mulesoft
 
Solace PubSub+ MuleSoft Connector for Mule 4
Solace PubSub+ MuleSoft Connector for Mule 4Solace PubSub+ MuleSoft Connector for Mule 4
Solace PubSub+ MuleSoft Connector for Mule 4
 
6th Manila MuleSoft Meetup May 2020
6th Manila MuleSoft Meetup May 20206th Manila MuleSoft Meetup May 2020
6th Manila MuleSoft Meetup May 2020
 
MuleSoft: How to Engage Partners/Customers and API Led with Alexa
MuleSoft: How to Engage Partners/Customers and  API Led with Alexa MuleSoft: How to Engage Partners/Customers and  API Led with Alexa
MuleSoft: How to Engage Partners/Customers and API Led with Alexa
 
MuleSoft Meetup Bangalore #12
MuleSoft Meetup Bangalore #12MuleSoft Meetup Bangalore #12
MuleSoft Meetup Bangalore #12
 
NYC MuleSoft Meetup 2019 Q2- MuleSoft for Mobile Applications
NYC MuleSoft Meetup 2019 Q2- MuleSoft for Mobile ApplicationsNYC MuleSoft Meetup 2019 Q2- MuleSoft for Mobile Applications
NYC MuleSoft Meetup 2019 Q2- MuleSoft for Mobile Applications
 
Delhi MuleSoft Meetup - 19 march2022
Delhi MuleSoft Meetup - 19 march2022Delhi MuleSoft Meetup - 19 march2022
Delhi MuleSoft Meetup - 19 march2022
 
Indianapolis mulesoft meetup_sep_11_2021
Indianapolis mulesoft meetup_sep_11_2021Indianapolis mulesoft meetup_sep_11_2021
Indianapolis mulesoft meetup_sep_11_2021
 
Rtf externalize tls MuleSoft meetup
Rtf externalize tls MuleSoft meetupRtf externalize tls MuleSoft meetup
Rtf externalize tls MuleSoft meetup
 
MuleSoft Meetup Bangalore - 26 May 2018
MuleSoft Meetup Bangalore - 26 May 2018MuleSoft Meetup Bangalore - 26 May 2018
MuleSoft Meetup Bangalore - 26 May 2018
 
MuleSoft Meetup Bangalore - March 6 2021
MuleSoft Meetup Bangalore - March 6 2021MuleSoft Meetup Bangalore - March 6 2021
MuleSoft Meetup Bangalore - March 6 2021
 
Automate mule deployments with github actions and travis ci
Automate mule deployments with github actions  and  travis ciAutomate mule deployments with github actions  and  travis ci
Automate mule deployments with github actions and travis ci
 
Using the Mule 4 SDK to build a connector : MuleSoft Virtual Muleys Meetups
Using the Mule 4 SDK to build a connector  : MuleSoft Virtual Muleys MeetupsUsing the Mule 4 SDK to build a connector  : MuleSoft Virtual Muleys Meetups
Using the Mule 4 SDK to build a connector : MuleSoft Virtual Muleys Meetups
 
Kochi Mulesoft Meetup #4
Kochi Mulesoft Meetup #4Kochi Mulesoft Meetup #4
Kochi Mulesoft Meetup #4
 

Semelhante a MuleSoft Meetup | Reading Meetup Group | Hosted by Integral Zone

Semelhante a MuleSoft Meetup | Reading Meetup Group | Hosted by Integral Zone (20)

Ahmadabad mule soft_meetup_11_october_2020_errorhanlingandmonitoringalerts
Ahmadabad mule soft_meetup_11_october_2020_errorhanlingandmonitoringalertsAhmadabad mule soft_meetup_11_october_2020_errorhanlingandmonitoringalerts
Ahmadabad mule soft_meetup_11_october_2020_errorhanlingandmonitoringalerts
 
Ahmadabad mule soft_meetup_11_october_2020_errorhanlingandmonitoringalerts
Ahmadabad mule soft_meetup_11_october_2020_errorhanlingandmonitoringalertsAhmadabad mule soft_meetup_11_october_2020_errorhanlingandmonitoringalerts
Ahmadabad mule soft_meetup_11_october_2020_errorhanlingandmonitoringalerts
 
MuleSoft Composer | Patna MuleSoft Meetup #14
MuleSoft Composer | Patna MuleSoft Meetup #14MuleSoft Composer | Patna MuleSoft Meetup #14
MuleSoft Composer | Patna MuleSoft Meetup #14
 
Singapore MuleSoft Meetup - 23 Nov 2022
Singapore MuleSoft Meetup - 23 Nov 2022Singapore MuleSoft Meetup - 23 Nov 2022
Singapore MuleSoft Meetup - 23 Nov 2022
 
Manila MuleSoft Meetup - August 2020
Manila MuleSoft Meetup - August 2020Manila MuleSoft Meetup - August 2020
Manila MuleSoft Meetup - August 2020
 
TomaszPoszytek_ALM-Fundamentals_SS2023.pdf
TomaszPoszytek_ALM-Fundamentals_SS2023.pdfTomaszPoszytek_ALM-Fundamentals_SS2023.pdf
TomaszPoszytek_ALM-Fundamentals_SS2023.pdf
 
Princeton-NJ-Meetup-Troubleshooting-with-AnyPoint-Monitoring
Princeton-NJ-Meetup-Troubleshooting-with-AnyPoint-MonitoringPrinceton-NJ-Meetup-Troubleshooting-with-AnyPoint-Monitoring
Princeton-NJ-Meetup-Troubleshooting-with-AnyPoint-Monitoring
 
Mule soft meetups-24012020
Mule soft meetups-24012020Mule soft meetups-24012020
Mule soft meetups-24012020
 
Second Caracas MuleSoft Meetup Slides
Second Caracas MuleSoft Meetup SlidesSecond Caracas MuleSoft Meetup Slides
Second Caracas MuleSoft Meetup Slides
 
Sydney mule soft meetup 30 april 2020
Sydney mule soft meetup   30 april 2020Sydney mule soft meetup   30 april 2020
Sydney mule soft meetup 30 april 2020
 
MuleSoft Meetup Virtual_ 2_Charlotte
MuleSoft Meetup Virtual_ 2_CharlotteMuleSoft Meetup Virtual_ 2_Charlotte
MuleSoft Meetup Virtual_ 2_Charlotte
 
Mulesoft Meetup Roma - Monitoring Framework & DevOps.pptx
Mulesoft Meetup Roma - Monitoring Framework & DevOps.pptxMulesoft Meetup Roma - Monitoring Framework & DevOps.pptx
Mulesoft Meetup Roma - Monitoring Framework & DevOps.pptx
 
MuleSoft Surat Virtual Meetup#16 - Anypoint Deployment Option, API and Operat...
MuleSoft Surat Virtual Meetup#16 - Anypoint Deployment Option, API and Operat...MuleSoft Surat Virtual Meetup#16 - Anypoint Deployment Option, API and Operat...
MuleSoft Surat Virtual Meetup#16 - Anypoint Deployment Option, API and Operat...
 
MuleSoft Event Driven Architecture (EDA Patterns in MuleSoft) - VirtualMuleys63
MuleSoft Event Driven Architecture (EDA Patterns in MuleSoft) - VirtualMuleys63MuleSoft Event Driven Architecture (EDA Patterns in MuleSoft) - VirtualMuleys63
MuleSoft Event Driven Architecture (EDA Patterns in MuleSoft) - VirtualMuleys63
 
Cracow MuleSoft Meetup #1
Cracow MuleSoft Meetup #1Cracow MuleSoft Meetup #1
Cracow MuleSoft Meetup #1
 
What's New with Anypoint Platform? Unified Platform Management
What's New with Anypoint Platform? Unified Platform ManagementWhat's New with Anypoint Platform? Unified Platform Management
What's New with Anypoint Platform? Unified Platform Management
 
Singapore MuleSoft Meetup - 24 Aug 2022
Singapore MuleSoft Meetup - 24 Aug 2022Singapore MuleSoft Meetup - 24 Aug 2022
Singapore MuleSoft Meetup - 24 Aug 2022
 
Melbourne Virtual MuleSoft Meetup June 2022
Melbourne Virtual MuleSoft Meetup June 2022Melbourne Virtual MuleSoft Meetup June 2022
Melbourne Virtual MuleSoft Meetup June 2022
 
Mule Meetup Hyderabad - Aug 2020
Mule Meetup Hyderabad - Aug 2020Mule Meetup Hyderabad - Aug 2020
Mule Meetup Hyderabad - Aug 2020
 
Unleash MuleSoft Platform for Enterprise Healthcare Solutions
Unleash MuleSoft Platform for Enterprise Healthcare SolutionsUnleash MuleSoft Platform for Enterprise Healthcare Solutions
Unleash MuleSoft Platform for Enterprise Healthcare Solutions
 

Último

introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
VishalKumarJha10
 
The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is inside
shinachiaurasa2
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
mohitmore19
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
Health
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
VictorSzoltysek
 

Último (20)

introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
 
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdfPayment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
Payment Gateway Testing Simplified_ A Step-by-Step Guide for Beginners.pdf
 
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is inside
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdfAzure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
Azure_Native_Qumulo_High_Performance_Compute_Benchmarks.pdf
 
LEVEL 5 - SESSION 1 2023 (1).pptx - PDF 123456
LEVEL 5   - SESSION 1 2023 (1).pptx - PDF 123456LEVEL 5   - SESSION 1 2023 (1).pptx - PDF 123456
LEVEL 5 - SESSION 1 2023 (1).pptx - PDF 123456
 
8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students8257 interfacing 2 in microprocessor for btech students
8257 interfacing 2 in microprocessor for btech students
 
Right Money Management App For Your Financial Goals
Right Money Management App For Your Financial GoalsRight Money Management App For Your Financial Goals
Right Money Management App For Your Financial Goals
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
Exploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdfExploring the Best Video Editing App.pdf
Exploring the Best Video Editing App.pdf
 
Sector 18, Noida Call girls :8448380779 Model Escorts | 100% verified
Sector 18, Noida Call girls :8448380779 Model Escorts | 100% verifiedSector 18, Noida Call girls :8448380779 Model Escorts | 100% verified
Sector 18, Noida Call girls :8448380779 Model Escorts | 100% verified
 
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM TechniquesAI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
AI Mastery 201: Elevating Your Workflow with Advanced LLM Techniques
 
10 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 202410 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 2024
 
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park %in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
BUS PASS MANGEMENT SYSTEM USING PHP.pptx
BUS PASS MANGEMENT SYSTEM USING PHP.pptxBUS PASS MANGEMENT SYSTEM USING PHP.pptx
BUS PASS MANGEMENT SYSTEM USING PHP.pptx
 
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa%in tembisa+277-882-255-28 abortion pills for sale in tembisa
%in tembisa+277-882-255-28 abortion pills for sale in tembisa
 

MuleSoft Meetup | Reading Meetup Group | Hosted by Integral Zone

  • 1. MuleSoft Meetup Reading, United Kingdom 04th March, 2022 https://integralzone.com sales@integralzone.com
  • 2. PAGE 2 ✔ This will be a recorded session. ✔ Please be on mute during the speaker session. ✔ At the end of each speaker presentation, you can ask questions using chat or Q&A options. ✔ A quiz will be conducted at the end of the session. ✔ The recordings and slides of the session will be made available to all the attendees. House rules 2
  • 3. PAGE 3 Agenda 5pm – 5.15pm Introductions 5:15pm Speaker Session I: MuleSoft Transaction types followed by QnA 5:45pm Speaker Session II: Code quality analysis followed by QnA 6:15pm Quiz 5:45pm Closure 3
  • 4. PAGE 4 Saurabh Vatsa Solution Architect, MuleSoft Mentor Integral Zone Speakers Naveen Manager: Product Sales Integral Zone Speaker Host Speaker Hitesh Joshi Senior MuleSoft Consultant MuleSoft Mentor Integral Zone
  • 5. PAGE 5 - 2015 Company founded by ex-Oracle and ex-MuleSoft employees - Head quartered in the UK and offices in India and Middle East - MuleSoft/Salesforce services partner - 50+ MuleSoft Services engagements - 40+ customers including HSBC, Unilever, BP, NHS and Roche - 2019 Foray into Product development - 4 Products in Dev Sec Ops and C4E space About Integral Zone 5
  • 6. Saurabh Vatsa Solution Architect, Integral Zone MuleSoft Mentor Transaction Management MuleSoft Meet up | Reading, United Kingdom
  • 7. What is a Transaction? Transaction is a group of actions that should be performed as if they were a single "bulk" action. ● Atomicity ● Consistency ● Isolation ● Durability 7
  • 8. Transaction Management in Mulesoft Transactions in Mule are required when we have a series of processes in a flow that must succeed completely or fail completely. 8
  • 9. Single Resource Transactions It only uses a single resource to send or receive messages: JMS broker, VM queues, or JDBC connections. ○ The example below illustrates a flow which includes a single resource transaction performed using the source and publish operations of the JMS connector. 9
  • 10. Single Resource Transactions A typical flow with Local Transaction (Single Resource Transaction) 10
  • 11. Single Resource Transactions The following screenshot highlights how to always begin a local transaction. 11
  • 12. Single Resource Transactions The following image highlights how to join a transaction that is already in progress. 12
  • 13. XA Transactions Extended Architecture Transactions (or XA Transactions) can be used to group a series of operations from multiple transactional resources, such as VM, JMS or Database, into a single reliable global transaction. The XA protocol defines a 2-phase commit protocol which can be used to reliably coordinate and sequence a series of atomic operations across multiple servers of different types. 13
  • 14. XA Transactions A typical flow with XA Transaction. 14
  • 15. XA Transactions The following screenshots highlights how to always begin a XA transaction and how to join a XA in-progress transaction. 15
  • 16. XA Transactions XA supports nested transactions: 16
  • 19. Using Bitronix to Manage Transactions Bitronix works on JTA (Java Transaction API) to perform global transactions , that is, transactions that access and update data on two or more networked computer resources. Bitronix Transaction Manager allows Mule to automatically recover interrupted transactions on restart. It runs a recovery process to process any inflight transactions that were left abandoned during a instance crash or connectivity issues. 19
  • 20. Error Handling When an error occurs during a transaction, your application must either handle the error and continue or perform a rollback. There are two types of error handlers, which behave differently when an error occurs during a transaction: ○ On Error Propagate ○ If the on-error-propagate error handler is inside the error-handler scope corresponding to the component that began the transaction it will rollback the transaction if there is any error in the flow. 20
  • 21. Error Handling On Error Continue The error is handled, the transaction remains active and is able to commit. 21
  • 22. Use Case : Ecommerce Checkout The upcoming use case is about a ecommerce checkout and payment process involving payment through multiple payment methods (wallet and bank transactions), gift cards redemption and cash back. Requirements: ➔ Debit customer’s wallet and account based on the chosen payment method. ➔ If wallet debit or bank call times out , retry the entire transaction again in the background and create the order for the customer ➔ If wallet debit or bank call returns any error, rollback the transaction and return the error message. ➔ If redemption of the gift card or credit of wallet fails, retry in the background and commit the transaction. 22
  • 23. Use Case : Ecommerce Checkout 23
  • 24. Thank You Now its time for QnA
  • 25. Hitesh Joshi Senior MuleSoft Consultant Integral Zone MuleSoft Code quality Analysis Maintaining code quality in integration delivery MuleSoft Meet up | Reading, United Kingdom 04th March, 2022
  • 26. 26 ⮚ What is Code Quality ⮚ Mulesoft Code Quality Tools ⮚ Deep dive into IZ Analyzer ⮚ Demo ⮚ Endnotes Agenda
  • 27. 27 What is Code Quality Bug free Security Maintainability Reusability Complexity Others Peer Review Quality Code • Everyone • Security Team • NW Team • Architects • Support Team • Project Man • Project Man • Business • Architect • Project Man • Project Man • Business
  • 28. 28 Mulesoft Code Quality Tools Popular Mulesoft Code Quality Assessment Tools Available in the market ⮚ Mule-Sonar-Plugin ⮚ Mule-Lint ⮚ IZ Analyzer
  • 29. 29 Mule-Sonar-Plugin Mule-Sonar-Plugin is open source unlicensed project available in market which provides static code analysis for Mulesoft projects. It leverages popular CQA platform SonarQube’s quality gates to do validation of Mule code. ⮚ Open Source ⮚ No cost – free to use ⮚ Can scan multiple projects ⮚ Central view ⮚ Unlicensed – Not an official product. ⮚ Only static code analysis. ⮚ No plugin for Anypoint Studio ⮚ Comes with very few predefined Mule validation rules. ⮚ No thought leadership behind. ⮚ Since unlicensed – No support channel, No guaranteed updates Pros Cons
  • 30. 30 Mule-Lint Mule-Lint is another open source unlicensed project which was initiated by a few evangelist in Mule space on Minimum Viable Product basis. This also provides static code analysis for Mule. Pros Cons ⮚ Open Source ⮚ No cost – free to use ⮚ Light weighted ⮚ Unlicensed – Not an official product. ⮚ Only static code analysis. ⮚ No plugin for Anypoint Studio ⮚ All validation rules have to be defined . ⮚ No thought leadership behind. ⮚ Since unlicensed – No support channel, No guaranteed updates
  • 31. 31 IZ Analyzer – Deep Dive IZ Analyser’s biggest edge compared to other two products for Mulesoft CQA is Anypoint Studio plugin. It’s on-the-fly result set in studio shows real time code violations, enabling developers to make their code compliant early in dev lifecycle saving lot of time. ⮚ Tailor-made for Mulesoft – Pre defined 180+ Mule validation rules. ⮚ Static Code Analysis – With DevOps plugin – WebView ⮚ Real-time Dynamic Code Analysis – Anypoint Studio Plugin ⮚ Ability to scan Non Mule – OAS API specs as well. ⮚ Enterprise grade license, support from Integral Zone.
  • 32. 32 Deep dive – IZ Analyzer How does it makes normal Muleys life easy? ⮚ Anypoint Studio Plugin. ⮚ Early code violation detection. ⮚ Predefined rules for Mule best practices. ⮚ Autofix and FixPreview feature at button clicks. ⮚ Custom rule creation. ⮚ DevOps integrated code scans. ⮚ Organisational web view. ⮚ Ability to scan non mule API specs as well.
  • 33. 33 Deep dive – IZ Analyzer ⮚ Quick Demo - Anypoint Studio Plugin ▪ All connectors configs are not defined in global.xml ▪ Implementation should not be in auto generated file ▪ API Datatype - min and max length not defined for String datatype
  • 34. 34 Mule CQA Tools Comparison Features Mule-Sonar- Plugin IZ Analyzer MuleLint Purpose built for all Mule configuration files (YAML, XML, RAML, OAS) Anypoint Studio Plugin Predefined Mule best practice rules Central rules management for MuleSoft Enterprise grade support Auto Fix and FixPreview Feature Custom Rule Creation – Studio Editor Regular rules updates from product Comprehensive central insight Well documented use
  • 35. Thank You Now its time for QnA
  • 37. 37 Quiz: Questions 1. In case there is no error handling defined and any failure happens during the transaction, is the transaction rolled back or still committed? 2. Is it possible to set a transactional resource to skip and to not be a part of an in- progress transaction ? 3. Does Munit support Sonar reports in Mule? If yes, with which version of Munit this functionality was released? If not, what is the MuleSoft roadmap for this.
  • 38. 38 Quiz: Answers 1. In case there is no error handling defined and any failure happens during the transaction, is the transaction rolled back or still committed? Transaction is rolled back. By default, Mule propagates an exception in the absence of exception handling 2. Is it possible to set a transactional resource to skip and to not be a part of an in- progress transaction ? Yes, it is possible if we explicitly set the transaction action as “Not_Supported“ 3. Does Munit support Sonar reports in Mule? 1. If yes, with which version of Munit this functionality was released? Yes, it does. 2. If not, what is the MuleSoft roadmap for this. MuleSoft has already included this and it is available from Munit version 2.3.0 onwards.
  • 39. 39 Quick knowledge hacks C4E a. Video series: Accelerating C4E adoption a. Video 1: Introduction b. Video 2: Accelerators c. Video 3: Code review d. Video 4: DevSecOps b. All C4E-related archive IZ ANALYZER a. Automate Mule Code reviews with IZ Analyzer: An Overview with Explanatory video b. Technical Documentation about IZ Analyzer
  • 40. 40 What next? Try for free IZ Analyzer and get your Code review results instantly! https://analyzer.integralzone.com/try Participate in our Code Quality Reviews: Annual Trend Survey 2022 https://survey.integralzone.com/zs/nhCCyE Survey sample questions
  • 41. Thank you Visit us at https://integralzone.com sales@integralzone.com