SlideShare una empresa de Scribd logo
1 de 17
Why Mule?
Use Case / User Stories
2
All contents Copyright © 2013, MuleSoft Inc.
File
Overview
Java
Problem Statement
Java
Challenges Why Mule?
VM
The Solution
Java
Before & After
Java
Lesions Learned Q&A
flow: Agenda
flow: conf_Solution_Architecture
Overview
3
All contents Copyright © 2013, MuleSoft Inc.
http://www.linkedin.com/in/adhishpendharkar
Problem Statement - Numbers / Numbers…..
4
All contents Copyright © 2013, MuleSoft Inc.
i
Be
rational
π
Get
Real..
Capacity in Transactions per Day
Throughput in Transactions per Second
(TPS)
Location 2011 Peak Volume Growth
2012
Capacity
2012 Capacity
+ Headroom
Aggressive Cut-off &
STP
+ Headroom in
Aggressive Cut-off &
STP
Japan 685,000 2x 1,000,000 1,500,000 556 834
China 9,800 4x 34,000 51,000 19 29
Taiwan 531 51x 26,821 40,232 15 23
Hong Kong 11,714 12x 140,568 210,852 79 118
Korea 3,846 16x 58,630 87,945 33 49
India 167,000 3x 500,000 750,000 278 417
Singapore 10,373 17x 167,000 250,500 93 140
Philippines 1,919 27x 50,100 75,150 28 42
Indonesia 7,922 17x 127,540 191,310 71 107
Malaysia 1,227 41x 50,100 75,150 28 42
Thailand 2,945 18x 50,100 75,150 28 42
Vietnam 323 156x 50,100 75,150 28 42
Australia 142,248 7x 995,736 1,493,604 554 830
New Zealand 6,416 20x 128,320 192,480 72 107
Problem Statement - Non Functional
5All contents Copyright © 2013, MuleSoft Inc.
• No single point of failure.
• RTO within a data center of 30 minutes.
• RTO to Disaster Recovery site within 2 hours
• Resilience is designed in, built for, and verified through failover testing.
• Compute capacity to support current volumes with 100% headroom at
the time of go-live.
• Application and system architecture should allow future scalability of
compute capacity to support future business forecasted peak daily
volumes with 100% headroom without the need for application
change
• Storage capacity to support current volume with 50% headroom at
launch
• Application and system architecture should allow future scalability of
storage capacity to support future business forecasted peak daily
volume with 50% headroom without the need for application change.
• Platform / OS / Infrastructure Independent.
• Average CPU utilization of the application should not exceed
2%.
• Memory usage of the application should not exceed 2%
• Database connections used by the application should not
exceed 2%
• There should be no explicit garbage collection unless
approved by architect.
• No orphan or hang sessions or processes
• Response times of the application in terms of application
loading, screen open & output on screen (2 seconds as
threshold)
• Number of out-of process creations should not exceed 5%
Problem Statement - Functional
6All contents Copyright © 2013, MuleSoft Inc.
• 2 Physical Solaris Machines humming for number of years.
• Monolithic Java Applications written 10+ years back.
• 5000+ AutoSys Jobs and same number of scripts
• 1,214,699 Lines of code
• Code Complexity of the range of 7.8 ~ 36.2
• Hardware Infrastructure availability
• H/A, Cluster, Failover capabilities
• High Speed Storage on Virtualized Platform.
• Regulatory In country requirements
• Security / Audit and AML requirements
• Cost of Developers / SME’s and time to market.
• Running costs / support
- Commodity Hardware
- User Support / Communities
- Hello Worlds!!! and lots of examples on World’s Wonderful Webites
(www)
Challenges
7All contents Copyright © 2013, MuleSoft Inc.
Why Mule?
8
Hold on your Horses, lets visit this topic in short gallop.
• Timer watches the “/download”
directory for incoming payment files.
• When a file arrives main.script.001
generates a new script under
/job/main.script.001.tmp
• main.script.001 then copies the
incoming file from the “/download”
directory to the /import directory
• main.script.001 runs the newly
generated script, which will then
process the incoming file
• main.script.001.tmp uploads the
incoming file (and its transactions) into
the database
Before…Use Case - Load Transaction Data
9All contents Copyright © 2013, MuleSoft Inc.
main.script.001
/job
main.script.001.tmp
DB
/download
[Original File]
/import
[Duplicate File]
Timer
flow: payment.file.script
• main.script.001 watches the “/download” directory for
incoming files
• main.script.001 copies any incoming files to the “/import” for
processing. It converts these file into a different format and
puts them into the same directory
• main.script.001 generates the 1st ack file and the 1st ack
email in the “/export” directory
• cntry.script.002 watches the “/export” directory for 1st ack
files
• cntry.script.002 copies the 1st ack files into the “/ack1”
directory
• cntry.script.002 sends the 1st ack files to down system via
NDM
• cntry.script.003 watches the “/export” directory for 1st ack
emails
• cntry.script.003 copies the 1st ack email to the “/email”
directory
• cntry.script.001 watches the “/import” for new files
• cntry.script.001 uploads any files (and its transactions) into
the database
Before…Use Case - Load Transaction Data / Ack
10All contents Copyright © 2013, MuleSoft Inc.
main.script.001
/download
[Original File]
/import
[Duplicate]
/export
/ack1/ndm /email
cntry.script.001
DB
cntry.script.002
cntry.script.003
flow: payment.file.ack
After.. Vendor 1
11
All contents Copyright © 2013, MuleSoft Inc.
After.. Vendor 2
12
All contents Copyright © 2013, MuleSoft Inc.
Ring Buffer
Service Bus
Service Bus 2
Service
Brokers Bus
In Memory Data
Architecture
Cascade Ring
Buffer
DB Persistence
After.. In House Team (using Mule POC’s)
13
All contents Copyright © 2013, MuleSoft Inc.
Validate
Persist & Parse
Validate
1st Ack
Persist & Parse
CSV File Flow XML File Flow
Send Ack
Send Ack (FileBase)
Send Ack
Send Ack (Email)
Product
Classification
Validation
Persist
Txn Extensions
Send Ack
2nd Ack
Txn Ack
After.. Mule
14
All contents Copyright © 2013, MuleSoft Inc.
File
File Watcher
Java
File Validation
Java
File Persistence File Parse
flow: csv_parser_flow
Java
File
File Watcher
Java
File Parse FirstAck File Parse
flow: iso20022_ack_flow
Java Java Java
File Persistence
VM
GIRO Txn
Java
Message
Classification
Java
Message
Validation
Java
Message
Persist
All
Sec. Ack
Msg
flow: giro_txn_vm_flow
Ctrl C Ctrl V
After.. How it looks on Infrastructure
15
All contents Copyright © 2013, MuleSoft Inc.
• Active-Active-Active: Application can run across data center within the country or outside the country.
• Active Data Replication across geo / metro and local capabilities using combination of SRDF and In Memory
Site A
Virtual Server Infrastructure
Scale!
VM VM VMVM
Virtualized
high-availability
infrastructure
Scale
OS OS OSOS
HA
Seamless Flip-Flop via
VMotion
App
Storage
SAN
Database
Active-Active
Applications
Primary database
across sites
Phy
OS
Phy
OS
Oracle RAC
Site B
Virtual Server Infrastructure
Scale!
VM VM VMVM Scale
OS OS OSOS
HA
App
Storage
SAN
Database
Phy
OS
Phy
OS
Oracle RAC
Shared Data volume across sites
DataGuard / GoldenGate Replication
App
Storage
SAN
App
Storage
SAN
Shared Data volume across sites
Reporting database
across sites
In Memory Architecture In Memory Architecture
Cross Site
Replication
Physical
HA
Physical Server
Infrastructure
In Memory Data
Caching
Different
Country / Data
Center
Physical
HA
Lessons Learned
16
All contents Copyright © 2013, MuleSoft Inc.
“Eight months ago I started working at MuleSoft as an intern on the SaaS ISV partner team. When I evaluate my
experience at MuleSoft, a cliche yet valid saying comes to mind: Everything happens for a reason.”
“I would recommend MuleSoft to any intelligent, dedicated individual. We work really hard here, but all that time you are
surrounded by awesome people that make working a fun and rewarding experience. If you want to work with people
who want you to succeed, while challenging yourself everyday — come work at MuleSoft”
- Source http://themuleternship.wordpress.com/ by Moira Chambers.
Q&A
17All contents Copyright © 2013, MuleSoft Inc.

Más contenido relacionado

La actualidad más candente

R12.2.5 new features
R12.2.5 new featuresR12.2.5 new features
R12.2.5 new featuresTahirGhafoor
 
Oracle WebLogic Server 12.2.1 Do More with Less
Oracle WebLogic Server 12.2.1 Do More with LessOracle WebLogic Server 12.2.1 Do More with Less
Oracle WebLogic Server 12.2.1 Do More with LessEd Burns
 
Weblogic configuration & administration
Weblogic   configuration & administrationWeblogic   configuration & administration
Weblogic configuration & administrationMuhammad Mansoor
 
WebSphere Technical University: Top WebSphere Problem Determination Features
WebSphere Technical University: Top WebSphere Problem Determination FeaturesWebSphere Technical University: Top WebSphere Problem Determination Features
WebSphere Technical University: Top WebSphere Problem Determination FeaturesChris Bailey
 
Oracle WebLogic Server Basic Concepts
Oracle WebLogic Server Basic ConceptsOracle WebLogic Server Basic Concepts
Oracle WebLogic Server Basic ConceptsJames Bayer
 
AAI-2016 WebSphere Application Server Installation and Maintenance in the Ent...
AAI-2016 WebSphere Application Server Installation and Maintenance in the Ent...AAI-2016 WebSphere Application Server Installation and Maintenance in the Ent...
AAI-2016 WebSphere Application Server Installation and Maintenance in the Ent...WASdev Community
 
Monitoring and Tuning Oracle FMW 11g
Monitoring and Tuning Oracle FMW 11gMonitoring and Tuning Oracle FMW 11g
Monitoring and Tuning Oracle FMW 11gMatthias Furrer
 
Anatomy of Autoconfig in Oracle E-Business Suite
Anatomy of Autoconfig in Oracle E-Business SuiteAnatomy of Autoconfig in Oracle E-Business Suite
Anatomy of Autoconfig in Oracle E-Business Suitevasuballa
 
AAI-2013 Preparing to Fail: Practical WebSphere Application Server High Avail...
AAI-2013 Preparing to Fail: Practical WebSphere Application Server High Avail...AAI-2013 Preparing to Fail: Practical WebSphere Application Server High Avail...
AAI-2013 Preparing to Fail: Practical WebSphere Application Server High Avail...WASdev Community
 
Security of Oracle EBS - How I can Protect my System (UKOUG APPS 18 edition)
Security of Oracle EBS - How I can Protect my System (UKOUG APPS 18 edition)Security of Oracle EBS - How I can Protect my System (UKOUG APPS 18 edition)
Security of Oracle EBS - How I can Protect my System (UKOUG APPS 18 edition)Andrejs Prokopjevs
 
Application Continuity
Application ContinuityApplication Continuity
Application ContinuitySean Braymen
 
Adop and maintenance task presentation 151015
Adop and maintenance task presentation 151015Adop and maintenance task presentation 151015
Adop and maintenance task presentation 151015andreas kuncoro
 
How to build a cloud adapter
How to build a cloud adapterHow to build a cloud adapter
How to build a cloud adapterMaarten Smeets
 
WebLogic Server Work Managers and Overload Protection
WebLogic Server Work Managers and Overload ProtectionWebLogic Server Work Managers and Overload Protection
WebLogic Server Work Managers and Overload ProtectionJames Bayer
 
WebLogic Developer Webcast 5: Troubleshooting and Testing with WebLogic, Soap...
WebLogic Developer Webcast 5: Troubleshooting and Testing with WebLogic, Soap...WebLogic Developer Webcast 5: Troubleshooting and Testing with WebLogic, Soap...
WebLogic Developer Webcast 5: Troubleshooting and Testing with WebLogic, Soap...Jeffrey West
 
Editioning use in ebs
Editioning use in  ebsEditioning use in  ebs
Editioning use in ebspasalapudi123
 
Oracle E-Business Suite R12.2.6 on Database 12c: Install, Patch and Administer
Oracle E-Business Suite R12.2.6 on Database 12c: Install, Patch and AdministerOracle E-Business Suite R12.2.6 on Database 12c: Install, Patch and Administer
Oracle E-Business Suite R12.2.6 on Database 12c: Install, Patch and AdministerAndrejs Karpovs
 

La actualidad más candente (20)

R12.2.5 new features
R12.2.5 new featuresR12.2.5 new features
R12.2.5 new features
 
Oracle WebLogic Server 12.2.1 Do More with Less
Oracle WebLogic Server 12.2.1 Do More with LessOracle WebLogic Server 12.2.1 Do More with Less
Oracle WebLogic Server 12.2.1 Do More with Less
 
Weblogic configuration & administration
Weblogic   configuration & administrationWeblogic   configuration & administration
Weblogic configuration & administration
 
WebSphere Technical University: Top WebSphere Problem Determination Features
WebSphere Technical University: Top WebSphere Problem Determination FeaturesWebSphere Technical University: Top WebSphere Problem Determination Features
WebSphere Technical University: Top WebSphere Problem Determination Features
 
Oracle WebLogic Server Basic Concepts
Oracle WebLogic Server Basic ConceptsOracle WebLogic Server Basic Concepts
Oracle WebLogic Server Basic Concepts
 
AAI-2016 WebSphere Application Server Installation and Maintenance in the Ent...
AAI-2016 WebSphere Application Server Installation and Maintenance in the Ent...AAI-2016 WebSphere Application Server Installation and Maintenance in the Ent...
AAI-2016 WebSphere Application Server Installation and Maintenance in the Ent...
 
Monitoring and Tuning Oracle FMW 11g
Monitoring and Tuning Oracle FMW 11gMonitoring and Tuning Oracle FMW 11g
Monitoring and Tuning Oracle FMW 11g
 
Anatomy of Autoconfig in Oracle E-Business Suite
Anatomy of Autoconfig in Oracle E-Business SuiteAnatomy of Autoconfig in Oracle E-Business Suite
Anatomy of Autoconfig in Oracle E-Business Suite
 
AAI-2013 Preparing to Fail: Practical WebSphere Application Server High Avail...
AAI-2013 Preparing to Fail: Practical WebSphere Application Server High Avail...AAI-2013 Preparing to Fail: Practical WebSphere Application Server High Avail...
AAI-2013 Preparing to Fail: Practical WebSphere Application Server High Avail...
 
Security of Oracle EBS - How I can Protect my System (UKOUG APPS 18 edition)
Security of Oracle EBS - How I can Protect my System (UKOUG APPS 18 edition)Security of Oracle EBS - How I can Protect my System (UKOUG APPS 18 edition)
Security of Oracle EBS - How I can Protect my System (UKOUG APPS 18 edition)
 
Seminar - JBoss Migration
Seminar - JBoss MigrationSeminar - JBoss Migration
Seminar - JBoss Migration
 
Application Continuity
Application ContinuityApplication Continuity
Application Continuity
 
Indexes overview
Indexes overviewIndexes overview
Indexes overview
 
Adop and maintenance task presentation 151015
Adop and maintenance task presentation 151015Adop and maintenance task presentation 151015
Adop and maintenance task presentation 151015
 
How to build a cloud adapter
How to build a cloud adapterHow to build a cloud adapter
How to build a cloud adapter
 
WebLogic Server Work Managers and Overload Protection
WebLogic Server Work Managers and Overload ProtectionWebLogic Server Work Managers and Overload Protection
WebLogic Server Work Managers and Overload Protection
 
WebLogic Developer Webcast 5: Troubleshooting and Testing with WebLogic, Soap...
WebLogic Developer Webcast 5: Troubleshooting and Testing with WebLogic, Soap...WebLogic Developer Webcast 5: Troubleshooting and Testing with WebLogic, Soap...
WebLogic Developer Webcast 5: Troubleshooting and Testing with WebLogic, Soap...
 
Editioning use in ebs
Editioning use in  ebsEditioning use in  ebs
Editioning use in ebs
 
Dmz aa aioug
Dmz aa aiougDmz aa aioug
Dmz aa aioug
 
Oracle E-Business Suite R12.2.6 on Database 12c: Install, Patch and Administer
Oracle E-Business Suite R12.2.6 on Database 12c: Install, Patch and AdministerOracle E-Business Suite R12.2.6 on Database 12c: Install, Patch and Administer
Oracle E-Business Suite R12.2.6 on Database 12c: Install, Patch and Administer
 

Similar a High Volume Payments using Mule

KACE Agent Architecture and Troubleshooting Overview
KACE Agent Architecture and Troubleshooting OverviewKACE Agent Architecture and Troubleshooting Overview
KACE Agent Architecture and Troubleshooting OverviewDell World
 
Java Development on Bluemix
Java Development on BluemixJava Development on Bluemix
Java Development on BluemixRam Vennam
 
Ebs performance tuning session feb 13 2013---Presented by Oracle
Ebs performance tuning session  feb 13 2013---Presented by OracleEbs performance tuning session  feb 13 2013---Presented by Oracle
Ebs performance tuning session feb 13 2013---Presented by OracleAkash Pramanik
 
Datasheet weblogicpluginforrd
Datasheet weblogicpluginforrdDatasheet weblogicpluginforrd
Datasheet weblogicpluginforrdMidVision
 
FOISDBA-Ver1.1.pptx
FOISDBA-Ver1.1.pptxFOISDBA-Ver1.1.pptx
FOISDBA-Ver1.1.pptxssuser20fcbe
 
Was l iberty for java batch and jsr352
Was l iberty for java batch and jsr352Was l iberty for java batch and jsr352
Was l iberty for java batch and jsr352sflynn073
 
Microsoft Windows Server AppFabric
Microsoft Windows Server AppFabricMicrosoft Windows Server AppFabric
Microsoft Windows Server AppFabricMark Ginnebaugh
 
How bol.com makes sense of its logs, using the Elastic technology stack.
How bol.com makes sense of its logs, using the Elastic technology stack.How bol.com makes sense of its logs, using the Elastic technology stack.
How bol.com makes sense of its logs, using the Elastic technology stack.Renzo Tomà
 
Google Cloud Next '22 Recap: Serverless & Data edition
Google Cloud Next '22 Recap: Serverless & Data editionGoogle Cloud Next '22 Recap: Serverless & Data edition
Google Cloud Next '22 Recap: Serverless & Data editionDaniel Zivkovic
 
AIR - Framework ( Cairngorm and Parsley )
AIR - Framework ( Cairngorm and Parsley )AIR - Framework ( Cairngorm and Parsley )
AIR - Framework ( Cairngorm and Parsley )senthil0809
 
(ZDM) Zero Downtime DB Migration to Oracle Cloud
(ZDM) Zero Downtime DB Migration to Oracle Cloud(ZDM) Zero Downtime DB Migration to Oracle Cloud
(ZDM) Zero Downtime DB Migration to Oracle CloudRuggero Citton
 
SathishKumar Natarajan
SathishKumar NatarajanSathishKumar Natarajan
SathishKumar NatarajanSathish Kumar
 
Architecting and Tuning IIB/eXtreme Scale for Maximum Performance and Reliabi...
Architecting and Tuning IIB/eXtreme Scale for Maximum Performance and Reliabi...Architecting and Tuning IIB/eXtreme Scale for Maximum Performance and Reliabi...
Architecting and Tuning IIB/eXtreme Scale for Maximum Performance and Reliabi...Prolifics
 
[Rakuten TechConf2014] [C-5] Ichiba Architecture on ExaLogic
[Rakuten TechConf2014] [C-5] Ichiba Architecture on ExaLogic[Rakuten TechConf2014] [C-5] Ichiba Architecture on ExaLogic
[Rakuten TechConf2014] [C-5] Ichiba Architecture on ExaLogicRakuten Group, Inc.
 
Sanjaykumar Kakaso Mane_MAY2016
Sanjaykumar Kakaso Mane_MAY2016Sanjaykumar Kakaso Mane_MAY2016
Sanjaykumar Kakaso Mane_MAY2016Sanjay Mane
 
How to build streaming data pipelines with Akka Streams, Flink, and Spark usi...
How to build streaming data pipelines with Akka Streams, Flink, and Spark usi...How to build streaming data pipelines with Akka Streams, Flink, and Spark usi...
How to build streaming data pipelines with Akka Streams, Flink, and Spark usi...Lightbend
 
Automic Empowering Business Through Automation
Automic Empowering Business Through AutomationAutomic Empowering Business Through Automation
Automic Empowering Business Through AutomationCA | Automic Software
 

Similar a High Volume Payments using Mule (20)

IUG ATL PC 9.5
IUG ATL PC 9.5IUG ATL PC 9.5
IUG ATL PC 9.5
 
KACE Agent Architecture and Troubleshooting Overview
KACE Agent Architecture and Troubleshooting OverviewKACE Agent Architecture and Troubleshooting Overview
KACE Agent Architecture and Troubleshooting Overview
 
CV_RishabhDixit
CV_RishabhDixitCV_RishabhDixit
CV_RishabhDixit
 
Java Development on Bluemix
Java Development on BluemixJava Development on Bluemix
Java Development on Bluemix
 
Ebs performance tuning session feb 13 2013---Presented by Oracle
Ebs performance tuning session  feb 13 2013---Presented by OracleEbs performance tuning session  feb 13 2013---Presented by Oracle
Ebs performance tuning session feb 13 2013---Presented by Oracle
 
Datasheet weblogicpluginforrd
Datasheet weblogicpluginforrdDatasheet weblogicpluginforrd
Datasheet weblogicpluginforrd
 
FOISDBA-Ver1.1.pptx
FOISDBA-Ver1.1.pptxFOISDBA-Ver1.1.pptx
FOISDBA-Ver1.1.pptx
 
Was l iberty for java batch and jsr352
Was l iberty for java batch and jsr352Was l iberty for java batch and jsr352
Was l iberty for java batch and jsr352
 
Upgrading Em13c Collaborate 2016
Upgrading Em13c Collaborate 2016Upgrading Em13c Collaborate 2016
Upgrading Em13c Collaborate 2016
 
Microsoft Windows Server AppFabric
Microsoft Windows Server AppFabricMicrosoft Windows Server AppFabric
Microsoft Windows Server AppFabric
 
How bol.com makes sense of its logs, using the Elastic technology stack.
How bol.com makes sense of its logs, using the Elastic technology stack.How bol.com makes sense of its logs, using the Elastic technology stack.
How bol.com makes sense of its logs, using the Elastic technology stack.
 
Google Cloud Next '22 Recap: Serverless & Data edition
Google Cloud Next '22 Recap: Serverless & Data editionGoogle Cloud Next '22 Recap: Serverless & Data edition
Google Cloud Next '22 Recap: Serverless & Data edition
 
AIR - Framework ( Cairngorm and Parsley )
AIR - Framework ( Cairngorm and Parsley )AIR - Framework ( Cairngorm and Parsley )
AIR - Framework ( Cairngorm and Parsley )
 
(ZDM) Zero Downtime DB Migration to Oracle Cloud
(ZDM) Zero Downtime DB Migration to Oracle Cloud(ZDM) Zero Downtime DB Migration to Oracle Cloud
(ZDM) Zero Downtime DB Migration to Oracle Cloud
 
SathishKumar Natarajan
SathishKumar NatarajanSathishKumar Natarajan
SathishKumar Natarajan
 
Architecting and Tuning IIB/eXtreme Scale for Maximum Performance and Reliabi...
Architecting and Tuning IIB/eXtreme Scale for Maximum Performance and Reliabi...Architecting and Tuning IIB/eXtreme Scale for Maximum Performance and Reliabi...
Architecting and Tuning IIB/eXtreme Scale for Maximum Performance and Reliabi...
 
[Rakuten TechConf2014] [C-5] Ichiba Architecture on ExaLogic
[Rakuten TechConf2014] [C-5] Ichiba Architecture on ExaLogic[Rakuten TechConf2014] [C-5] Ichiba Architecture on ExaLogic
[Rakuten TechConf2014] [C-5] Ichiba Architecture on ExaLogic
 
Sanjaykumar Kakaso Mane_MAY2016
Sanjaykumar Kakaso Mane_MAY2016Sanjaykumar Kakaso Mane_MAY2016
Sanjaykumar Kakaso Mane_MAY2016
 
How to build streaming data pipelines with Akka Streams, Flink, and Spark usi...
How to build streaming data pipelines with Akka Streams, Flink, and Spark usi...How to build streaming data pipelines with Akka Streams, Flink, and Spark usi...
How to build streaming data pipelines with Akka Streams, Flink, and Spark usi...
 
Automic Empowering Business Through Automation
Automic Empowering Business Through AutomationAutomic Empowering Business Through Automation
Automic Empowering Business Through Automation
 

Último

Anypoint Code Builder , Google Pub sub connector and MuleSoft RPA
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPAAnypoint Code Builder , Google Pub sub connector and MuleSoft RPA
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPAshyamraj55
 
COMPUTER 10: Lesson 7 - File Storage and Online Collaboration
COMPUTER 10: Lesson 7 - File Storage and Online CollaborationCOMPUTER 10: Lesson 7 - File Storage and Online Collaboration
COMPUTER 10: Lesson 7 - File Storage and Online Collaborationbruanjhuli
 
Introduction to Matsuo Laboratory (ENG).pptx
Introduction to Matsuo Laboratory (ENG).pptxIntroduction to Matsuo Laboratory (ENG).pptx
Introduction to Matsuo Laboratory (ENG).pptxMatsuo Lab
 
Linked Data in Production: Moving Beyond Ontologies
Linked Data in Production: Moving Beyond OntologiesLinked Data in Production: Moving Beyond Ontologies
Linked Data in Production: Moving Beyond OntologiesDavid Newbury
 
Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)Commit University
 
AI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just MinutesAI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just MinutesMd Hossain Ali
 
COMPUTER 10 Lesson 8 - Building a Website
COMPUTER 10 Lesson 8 - Building a WebsiteCOMPUTER 10 Lesson 8 - Building a Website
COMPUTER 10 Lesson 8 - Building a Websitedgelyza
 
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019IES VE
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesThousandEyes
 
Things you didn't know you can use in your Salesforce
Things you didn't know you can use in your SalesforceThings you didn't know you can use in your Salesforce
Things you didn't know you can use in your SalesforceMartin Humpolec
 
Do we need a new standard for visualizing the invisible?
Do we need a new standard for visualizing the invisible?Do we need a new standard for visualizing the invisible?
Do we need a new standard for visualizing the invisible?SANGHEE SHIN
 
UiPath Platform: The Backend Engine Powering Your Automation - Session 1
UiPath Platform: The Backend Engine Powering Your Automation - Session 1UiPath Platform: The Backend Engine Powering Your Automation - Session 1
UiPath Platform: The Backend Engine Powering Your Automation - Session 1DianaGray10
 
Cybersecurity Workshop #1.pptx
Cybersecurity Workshop #1.pptxCybersecurity Workshop #1.pptx
Cybersecurity Workshop #1.pptxGDSC PJATK
 
Artificial Intelligence & SEO Trends for 2024
Artificial Intelligence & SEO Trends for 2024Artificial Intelligence & SEO Trends for 2024
Artificial Intelligence & SEO Trends for 2024D Cloud Solutions
 
Introduction to Quantum Computing
Introduction to Quantum ComputingIntroduction to Quantum Computing
Introduction to Quantum ComputingGDSC PJATK
 
OpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability AdventureOpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability AdventureEric D. Schabell
 
RAG Patterns and Vector Search in Generative AI
RAG Patterns and Vector Search in Generative AIRAG Patterns and Vector Search in Generative AI
RAG Patterns and Vector Search in Generative AIUdaiappa Ramachandran
 
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCostKubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCostMatt Ray
 
Digital magic. A small project for controlling smart light bulbs.
Digital magic. A small project for controlling smart light bulbs.Digital magic. A small project for controlling smart light bulbs.
Digital magic. A small project for controlling smart light bulbs.francesco barbera
 
Bird eye's view on Camunda open source ecosystem
Bird eye's view on Camunda open source ecosystemBird eye's view on Camunda open source ecosystem
Bird eye's view on Camunda open source ecosystemAsko Soukka
 

Último (20)

Anypoint Code Builder , Google Pub sub connector and MuleSoft RPA
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPAAnypoint Code Builder , Google Pub sub connector and MuleSoft RPA
Anypoint Code Builder , Google Pub sub connector and MuleSoft RPA
 
COMPUTER 10: Lesson 7 - File Storage and Online Collaboration
COMPUTER 10: Lesson 7 - File Storage and Online CollaborationCOMPUTER 10: Lesson 7 - File Storage and Online Collaboration
COMPUTER 10: Lesson 7 - File Storage and Online Collaboration
 
Introduction to Matsuo Laboratory (ENG).pptx
Introduction to Matsuo Laboratory (ENG).pptxIntroduction to Matsuo Laboratory (ENG).pptx
Introduction to Matsuo Laboratory (ENG).pptx
 
Linked Data in Production: Moving Beyond Ontologies
Linked Data in Production: Moving Beyond OntologiesLinked Data in Production: Moving Beyond Ontologies
Linked Data in Production: Moving Beyond Ontologies
 
Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)Crea il tuo assistente AI con lo Stregatto (open source python framework)
Crea il tuo assistente AI con lo Stregatto (open source python framework)
 
AI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just MinutesAI Fame Rush Review – Virtual Influencer Creation In Just Minutes
AI Fame Rush Review – Virtual Influencer Creation In Just Minutes
 
COMPUTER 10 Lesson 8 - Building a Website
COMPUTER 10 Lesson 8 - Building a WebsiteCOMPUTER 10 Lesson 8 - Building a Website
COMPUTER 10 Lesson 8 - Building a Website
 
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
IESVE Software for Florida Code Compliance Using ASHRAE 90.1-2019
 
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyesHow to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
How to Effectively Monitor SD-WAN and SASE Environments with ThousandEyes
 
Things you didn't know you can use in your Salesforce
Things you didn't know you can use in your SalesforceThings you didn't know you can use in your Salesforce
Things you didn't know you can use in your Salesforce
 
Do we need a new standard for visualizing the invisible?
Do we need a new standard for visualizing the invisible?Do we need a new standard for visualizing the invisible?
Do we need a new standard for visualizing the invisible?
 
UiPath Platform: The Backend Engine Powering Your Automation - Session 1
UiPath Platform: The Backend Engine Powering Your Automation - Session 1UiPath Platform: The Backend Engine Powering Your Automation - Session 1
UiPath Platform: The Backend Engine Powering Your Automation - Session 1
 
Cybersecurity Workshop #1.pptx
Cybersecurity Workshop #1.pptxCybersecurity Workshop #1.pptx
Cybersecurity Workshop #1.pptx
 
Artificial Intelligence & SEO Trends for 2024
Artificial Intelligence & SEO Trends for 2024Artificial Intelligence & SEO Trends for 2024
Artificial Intelligence & SEO Trends for 2024
 
Introduction to Quantum Computing
Introduction to Quantum ComputingIntroduction to Quantum Computing
Introduction to Quantum Computing
 
OpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability AdventureOpenShift Commons Paris - Choose Your Own Observability Adventure
OpenShift Commons Paris - Choose Your Own Observability Adventure
 
RAG Patterns and Vector Search in Generative AI
RAG Patterns and Vector Search in Generative AIRAG Patterns and Vector Search in Generative AI
RAG Patterns and Vector Search in Generative AI
 
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCostKubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
KubeConEU24-Monitoring Kubernetes and Cloud Spend with OpenCost
 
Digital magic. A small project for controlling smart light bulbs.
Digital magic. A small project for controlling smart light bulbs.Digital magic. A small project for controlling smart light bulbs.
Digital magic. A small project for controlling smart light bulbs.
 
Bird eye's view on Camunda open source ecosystem
Bird eye's view on Camunda open source ecosystemBird eye's view on Camunda open source ecosystem
Bird eye's view on Camunda open source ecosystem
 

High Volume Payments using Mule

  • 1. Why Mule? Use Case / User Stories
  • 2. 2 All contents Copyright © 2013, MuleSoft Inc. File Overview Java Problem Statement Java Challenges Why Mule? VM The Solution Java Before & After Java Lesions Learned Q&A flow: Agenda flow: conf_Solution_Architecture
  • 3. Overview 3 All contents Copyright © 2013, MuleSoft Inc. http://www.linkedin.com/in/adhishpendharkar
  • 4. Problem Statement - Numbers / Numbers….. 4 All contents Copyright © 2013, MuleSoft Inc. i Be rational π Get Real.. Capacity in Transactions per Day Throughput in Transactions per Second (TPS) Location 2011 Peak Volume Growth 2012 Capacity 2012 Capacity + Headroom Aggressive Cut-off & STP + Headroom in Aggressive Cut-off & STP Japan 685,000 2x 1,000,000 1,500,000 556 834 China 9,800 4x 34,000 51,000 19 29 Taiwan 531 51x 26,821 40,232 15 23 Hong Kong 11,714 12x 140,568 210,852 79 118 Korea 3,846 16x 58,630 87,945 33 49 India 167,000 3x 500,000 750,000 278 417 Singapore 10,373 17x 167,000 250,500 93 140 Philippines 1,919 27x 50,100 75,150 28 42 Indonesia 7,922 17x 127,540 191,310 71 107 Malaysia 1,227 41x 50,100 75,150 28 42 Thailand 2,945 18x 50,100 75,150 28 42 Vietnam 323 156x 50,100 75,150 28 42 Australia 142,248 7x 995,736 1,493,604 554 830 New Zealand 6,416 20x 128,320 192,480 72 107
  • 5. Problem Statement - Non Functional 5All contents Copyright © 2013, MuleSoft Inc. • No single point of failure. • RTO within a data center of 30 minutes. • RTO to Disaster Recovery site within 2 hours • Resilience is designed in, built for, and verified through failover testing. • Compute capacity to support current volumes with 100% headroom at the time of go-live. • Application and system architecture should allow future scalability of compute capacity to support future business forecasted peak daily volumes with 100% headroom without the need for application change • Storage capacity to support current volume with 50% headroom at launch • Application and system architecture should allow future scalability of storage capacity to support future business forecasted peak daily volume with 50% headroom without the need for application change.
  • 6. • Platform / OS / Infrastructure Independent. • Average CPU utilization of the application should not exceed 2%. • Memory usage of the application should not exceed 2% • Database connections used by the application should not exceed 2% • There should be no explicit garbage collection unless approved by architect. • No orphan or hang sessions or processes • Response times of the application in terms of application loading, screen open & output on screen (2 seconds as threshold) • Number of out-of process creations should not exceed 5% Problem Statement - Functional 6All contents Copyright © 2013, MuleSoft Inc.
  • 7. • 2 Physical Solaris Machines humming for number of years. • Monolithic Java Applications written 10+ years back. • 5000+ AutoSys Jobs and same number of scripts • 1,214,699 Lines of code • Code Complexity of the range of 7.8 ~ 36.2 • Hardware Infrastructure availability • H/A, Cluster, Failover capabilities • High Speed Storage on Virtualized Platform. • Regulatory In country requirements • Security / Audit and AML requirements • Cost of Developers / SME’s and time to market. • Running costs / support - Commodity Hardware - User Support / Communities - Hello Worlds!!! and lots of examples on World’s Wonderful Webites (www) Challenges 7All contents Copyright © 2013, MuleSoft Inc.
  • 8. Why Mule? 8 Hold on your Horses, lets visit this topic in short gallop.
  • 9. • Timer watches the “/download” directory for incoming payment files. • When a file arrives main.script.001 generates a new script under /job/main.script.001.tmp • main.script.001 then copies the incoming file from the “/download” directory to the /import directory • main.script.001 runs the newly generated script, which will then process the incoming file • main.script.001.tmp uploads the incoming file (and its transactions) into the database Before…Use Case - Load Transaction Data 9All contents Copyright © 2013, MuleSoft Inc. main.script.001 /job main.script.001.tmp DB /download [Original File] /import [Duplicate File] Timer flow: payment.file.script
  • 10. • main.script.001 watches the “/download” directory for incoming files • main.script.001 copies any incoming files to the “/import” for processing. It converts these file into a different format and puts them into the same directory • main.script.001 generates the 1st ack file and the 1st ack email in the “/export” directory • cntry.script.002 watches the “/export” directory for 1st ack files • cntry.script.002 copies the 1st ack files into the “/ack1” directory • cntry.script.002 sends the 1st ack files to down system via NDM • cntry.script.003 watches the “/export” directory for 1st ack emails • cntry.script.003 copies the 1st ack email to the “/email” directory • cntry.script.001 watches the “/import” for new files • cntry.script.001 uploads any files (and its transactions) into the database Before…Use Case - Load Transaction Data / Ack 10All contents Copyright © 2013, MuleSoft Inc. main.script.001 /download [Original File] /import [Duplicate] /export /ack1/ndm /email cntry.script.001 DB cntry.script.002 cntry.script.003 flow: payment.file.ack
  • 11. After.. Vendor 1 11 All contents Copyright © 2013, MuleSoft Inc.
  • 12. After.. Vendor 2 12 All contents Copyright © 2013, MuleSoft Inc. Ring Buffer Service Bus Service Bus 2 Service Brokers Bus In Memory Data Architecture Cascade Ring Buffer DB Persistence
  • 13. After.. In House Team (using Mule POC’s) 13 All contents Copyright © 2013, MuleSoft Inc. Validate Persist & Parse Validate 1st Ack Persist & Parse CSV File Flow XML File Flow Send Ack Send Ack (FileBase) Send Ack Send Ack (Email) Product Classification Validation Persist Txn Extensions Send Ack 2nd Ack Txn Ack
  • 14. After.. Mule 14 All contents Copyright © 2013, MuleSoft Inc. File File Watcher Java File Validation Java File Persistence File Parse flow: csv_parser_flow Java File File Watcher Java File Parse FirstAck File Parse flow: iso20022_ack_flow Java Java Java File Persistence VM GIRO Txn Java Message Classification Java Message Validation Java Message Persist All Sec. Ack Msg flow: giro_txn_vm_flow Ctrl C Ctrl V
  • 15. After.. How it looks on Infrastructure 15 All contents Copyright © 2013, MuleSoft Inc. • Active-Active-Active: Application can run across data center within the country or outside the country. • Active Data Replication across geo / metro and local capabilities using combination of SRDF and In Memory Site A Virtual Server Infrastructure Scale! VM VM VMVM Virtualized high-availability infrastructure Scale OS OS OSOS HA Seamless Flip-Flop via VMotion App Storage SAN Database Active-Active Applications Primary database across sites Phy OS Phy OS Oracle RAC Site B Virtual Server Infrastructure Scale! VM VM VMVM Scale OS OS OSOS HA App Storage SAN Database Phy OS Phy OS Oracle RAC Shared Data volume across sites DataGuard / GoldenGate Replication App Storage SAN App Storage SAN Shared Data volume across sites Reporting database across sites In Memory Architecture In Memory Architecture Cross Site Replication Physical HA Physical Server Infrastructure In Memory Data Caching Different Country / Data Center Physical HA
  • 16. Lessons Learned 16 All contents Copyright © 2013, MuleSoft Inc. “Eight months ago I started working at MuleSoft as an intern on the SaaS ISV partner team. When I evaluate my experience at MuleSoft, a cliche yet valid saying comes to mind: Everything happens for a reason.” “I would recommend MuleSoft to any intelligent, dedicated individual. We work really hard here, but all that time you are surrounded by awesome people that make working a fun and rewarding experience. If you want to work with people who want you to succeed, while challenging yourself everyday — come work at MuleSoft” - Source http://themuleternship.wordpress.com/ by Moira Chambers.
  • 17. Q&A 17All contents Copyright © 2013, MuleSoft Inc.

Notas del editor

  1. Overview: Me / Myself / Adhish (its all about me) Problem Statement: Numbers (business bat) / Non Functional / Functional Challenges: Weight Loss / Developer Debt (Sonar / SQUEL) Before & After : Vendor Solutions Vs. Mule/Inhouse
  2. That’s me, yehey!!!
  3. Numbers: This project started in 2011 as a 5 year transformation.
  4. Current Volumes: This project was started in 2012 (planning in 2011) with 5 years to go live. Recover Time Objective: was twisted by business to Recover Time Operate. Future business: 2015 and beyond, as this was a 5 year plan, it started back in 2011. Storage: Played a critical aspect of the solution, we had to cut down on logging, implement other mechanism i.e. Splunk etc.
  5. Average CPU: was based line on the older application which was in production. Memory: same as the older application Use of GC: … DB Connections / MQ / Qpid etc.
  6. Talk about the Cash Business, file based, low value, large amount of data. Compound the problem with Country / Client / Time of transmission et`c.
  7. Talk about the complex of multiple files / clean up / data files / security / regulation(s) etc.
  8. Mule Shipped a trainer from Antwerp (Tom) to help us get the team in Hong Kong up and running, it was a 5 days intense course with hands on lab.