SlideShare ist ein Scribd-Unternehmen logo
1 von 52
Recipes For the Perfect PI - Simple Ingredients for Complex Requirements SaschaWenninger - Australia Post
Bottom-Up Approach Photo by Gidzy
You’ll Hear About: Basis Adapter Framework Interface Design Questions Key Points to Take Home
30,000 Foot View SAP POS DM SAP PI SAP ERP Routing Mapping SAP SCEM XML XML XML XML Mapping Mapping JMS Queue Mapping Mapping 
 

Some Figures
 Retail Transactions from 8,000+ terminals in 3,400 stores: 500,000 – 750,000 messages per day Peaks of 45/second into PI, then split by receiver 6 receiving systems, 1-3 receivers per message Message size <10kB Roll-out: January – June 2011
Objectives Near-real time: <15 minutes end to end Scalable to 2,000,000 messages/day and 14 receiver systems Future peaks of 90/second into PI No impact on other critical PI interfaces 	e.g. Parcel Tracking interface moving 2m+ events per day As simple as possible Future-proof (no ccBPM, no ABAP mapping, etc.)
The Solution? Many small steps enabled us to get there.
Key Topic Basis
Basis System Memory Database Stuff Java Server Nodes The JVM Java Heap Space Wily Introscope
System Memory One of the main foundations of the system Needs to accommodate all aspects of the system: Java + ABAP + ICM + DBMS + OS + caching/buffers + other apps Need to avoid swapping to disk at all times – causes huge GC delays!
The Database DB Statistics Without DB stats, our throughput dropped to 1/6th of the normal! ,[object Object],DB Reorgs PI DB tables churn very frequently and fragment after a few weeks ,[object Object],[object Object]
The JVM PI 7.1 and later use SAP’s own JVM SAPJVM 4.1 for PI 7.0 coming soon (Notes 1495160, 1522198) Bug fixes and performance improvements delivered continually Several JVM Upgrades over the past 12 months significantly reduced OOM crashes and Garbage Collection times for our systems. This enables the use of larger heap spaces! Patching via JSPM takes 30 minutes and 1 restart, plus some testing
Java Heap Space More Heap = process larger messages, fewer full GCs, fewer OOMs SAP’s recommendation has historically been 2GB per Java process.  Recently changed to 4GB (for SAP JVM) AusPost has been using 4GB for 9 months now.  Main criteria: Full GCs should take less than 10 seconds.
Java Memory Analysis  This is in SolMan!
Wily Introscope Monitoring for the Java Stack Basic version is free with NetWeaver Java Provides functionality normally accessed via ABAP transactions
Wily Dashboards
More Dashboards
And More

Tons of Dashboards! 
and this is only the free version!
Our PI System PI 7.11 SP5 JVM 5.1 Patch level 59 (64 in test systems) 3 Java server nodes, 4GB heap space each. AIX 6.1 on IBM POWER6, 60GB RAM
Basis ,[object Object]
Database Stuff
Java Server Nodes
The JVM
Java Heap Space
Wily Introscope Many aspects which require special PI-Basis skills!
Key Topic Adapter Framework
Adapter Framework Thread Behaviour Messaging System
Threads Messages are processed using a number of adapter-specific queues. Each queue has its own thread pool.  e.g. for JMS:
Threads Threads are assigned to process messages from their respective pools ,[object Object],[object Object]
Caveat Some Adapters process messages serially!  e.g. JMS: 1 Adapter Thread per Communication Channel reads messages from the JMS queue { 1 JMS Comm Channel 3 Java Server Nodes
Threads in the AAE Adapter Thread picks up a message from the JMS queue, then: Executes Adapter Modules Performs Receiver Determination Persists 1 message per Receiver in Messaging System queue. Confirms message and removes from the JMS queue The longer this takes, the lower throughput will be.
What does this mean?
Sender-Side Performance is Really Important
Implications Throughput depends on Sender Adapter performance Try to avoid adapter modules in Sender adapters.  We achieved a 15% improvement by moving an XSLT mapping from the JMS adapter to the Operation Mapping.
Implications Throughput depends on Receiver Determination The initial “Adapter” thread evaluates conditions and copies the message for each Receiver.  ,[object Object]
DB performance: more Receivers = more I/O,[object Object]
2 Options In our system, each thread can process 10-15 messages/sec In order to consistently process 45 messages/sec from JMS, we need 4-5 concurrent JMS Sender Adapter threads.  Option 1: 5 Java server nodes Option 2: Multiple JMS Communication Channels.
Multiple Comm. Channels We cloned the Integrated Config Object and Sender Comm Channel ,[object Object], Better thread pool utilisation ,[object Object]
More scalableThis is not needed for SOAP since it’s truly parallel. Image Source: http://t.co/ZOBdlH0
Adapter Framework ,[object Object]
Messaging System Increased importance for Integrated Configuration scenarios!
Key Topic Interface Design
Integrated Configuration 	Receiver Determination +	Interface Determination +	Receiver Agreements Integrated Configuration Object Causes an interface to be executed in the Advanced Adapter Engine
Integrated Configuration Message Processing entirely in Java (AAE) Introduced in PI 7.1; more features in 7.11 and 7.3 Improved performance by: Reducing database I/O Eliminating ‘stack jumping’ between ABAP and Java 7-10 times throughput possible Not available for all adapters and scenarios.
Example
Example
Constraints There are a few things you can’t do with Integrated Configuration: IDocs* Multi-Mappings* ccBPMs But this is an Opportunity to be Creative! *features added in PI 7.3
Mapping Programs XSLT Easier to debug and tune Better performance from PI 7.1 onwards Easier to support Consolidate mapping steps ,[object Object],Reuse still possible via XSLT imports.
Communication Channels ABAP Proxies/Enterprise Services  Use SOAP Adapter in XI 3.0 mode JMS Senders  Clone comm. Channels for greater parallelisation Non-SAP Systems  Ensure inbound queuing is available to avoid backlog in PI
Design-Time Governance Don’t Overdo It! Find a balance which facilitates reuse but doesn’t impose too much up-front work. Image Source: http://geekandpoke.typepad.com

Weitere Àhnliche Inhalte

Was ist angesagt?

Sap interface overview
Sap interface overviewSap interface overview
Sap interface overview
gnareshmbacwa
 
Sap process integration (pi) exchange infrastructure (xi) certification in...
Sap process integration (pi)  exchange infrastructure (xi)  certification  in...Sap process integration (pi)  exchange infrastructure (xi)  certification  in...
Sap process integration (pi) exchange infrastructure (xi) certification in...
magnific5
 
Sap process integration (pi) exchange infrastructure (xi) technicaltraining...
Sap process integration (pi)  exchange infrastructure (xi)  technicaltraining...Sap process integration (pi)  exchange infrastructure (xi)  technicaltraining...
Sap process integration (pi) exchange infrastructure (xi) technicaltraining...
magnific5
 

Was ist angesagt? (20)

SAP PI and SOA Overview
SAP PI and SOA OverviewSAP PI and SOA Overview
SAP PI and SOA Overview
 
Sap Process Integration
Sap Process Integration Sap Process Integration
Sap Process Integration
 
SAP Systems Integration by SAP PI (XI)
SAP Systems Integration by SAP PI (XI)SAP Systems Integration by SAP PI (XI)
SAP Systems Integration by SAP PI (XI)
 
SAP PI
SAP PISAP PI
SAP PI
 
Sap interface overview
Sap interface overviewSap interface overview
Sap interface overview
 
AWS Webcast - Running SAP HANA on the AWS Cloud
AWS Webcast - Running SAP HANA on the AWS CloudAWS Webcast - Running SAP HANA on the AWS Cloud
AWS Webcast - Running SAP HANA on the AWS Cloud
 
Integrating the Enterprise with Event-Driven Messaging – Using FME Server as ...
Integrating the Enterprise with Event-Driven Messaging – Using FME Server as ...Integrating the Enterprise with Event-Driven Messaging – Using FME Server as ...
Integrating the Enterprise with Event-Driven Messaging – Using FME Server as ...
 
What Does Migrating to S/4HANA Mean for SAP Users?
What Does Migrating to S/4HANA Mean for SAP Users?What Does Migrating to S/4HANA Mean for SAP Users?
What Does Migrating to S/4HANA Mean for SAP Users?
 
Why IBM Power for SAP by John Hedge
Why IBM Power for SAP by John HedgeWhy IBM Power for SAP by John Hedge
Why IBM Power for SAP by John Hedge
 
What's New in SAP HANA SPS 11 DB Control Center (Operations)
What's New in SAP HANA SPS 11 DB Control Center (Operations)What's New in SAP HANA SPS 11 DB Control Center (Operations)
What's New in SAP HANA SPS 11 DB Control Center (Operations)
 
What's new on SAP HANA Workload Management
What's new on SAP HANA Workload ManagementWhat's new on SAP HANA Workload Management
What's new on SAP HANA Workload Management
 
Deep dive session - sap and aws - extend and innovate
Deep dive session - sap and aws - extend and innovateDeep dive session - sap and aws - extend and innovate
Deep dive session - sap and aws - extend and innovate
 
Sap process integration (pi) exchange infrastructure (xi) certification in...
Sap process integration (pi)  exchange infrastructure (xi)  certification  in...Sap process integration (pi)  exchange infrastructure (xi)  certification  in...
Sap process integration (pi) exchange infrastructure (xi) certification in...
 
Sap process integration (pi) exchange infrastructure (xi) technicaltraining...
Sap process integration (pi)  exchange infrastructure (xi)  technicaltraining...Sap process integration (pi)  exchange infrastructure (xi)  technicaltraining...
Sap process integration (pi) exchange infrastructure (xi) technicaltraining...
 
FDMEE Scripting - Cloud and On-Premises - It Ain't Groovy, But It's My Bread ...
FDMEE Scripting - Cloud and On-Premises - It Ain't Groovy, But It's My Bread ...FDMEE Scripting - Cloud and On-Premises - It Ain't Groovy, But It's My Bread ...
FDMEE Scripting - Cloud and On-Premises - It Ain't Groovy, But It's My Bread ...
 
Building ISV Applications that run in the cloud with SQL Anywhere On-Demand E...
Building ISV Applications that run in the cloud with SQL Anywhere On-Demand E...Building ISV Applications that run in the cloud with SQL Anywhere On-Demand E...
Building ISV Applications that run in the cloud with SQL Anywhere On-Demand E...
 
What's New in SAP HANA SPS 11 Platform Lifecycle Management (Operations)
What's New in SAP HANA SPS 11 Platform Lifecycle Management (Operations)What's New in SAP HANA SPS 11 Platform Lifecycle Management (Operations)
What's New in SAP HANA SPS 11 Platform Lifecycle Management (Operations)
 
Change management in hybrid landscapes
Change management in hybrid landscapesChange management in hybrid landscapes
Change management in hybrid landscapes
 
AzureRS - Sap on azure: Ambientes seguros e EscalĂĄveis
AzureRS - Sap on azure: Ambientes seguros e EscalĂĄveisAzureRS - Sap on azure: Ambientes seguros e EscalĂĄveis
AzureRS - Sap on azure: Ambientes seguros e EscalĂĄveis
 
SAP HANA INFRA - Amazon Web Services - Cloud
SAP HANA INFRA - Amazon Web Services - CloudSAP HANA INFRA - Amazon Web Services - Cloud
SAP HANA INFRA - Amazon Web Services - Cloud
 

Andere mochten auch

SAP TechEd 2010 highlights
SAP TechEd 2010 highlightsSAP TechEd 2010 highlights
SAP TechEd 2010 highlights
Sascha Wenninger
 
Erp implementation checklist
Erp implementation checklistErp implementation checklist
Erp implementation checklist
Mitch Rushing
 
Sap pi overview
Sap pi overviewSap pi overview
Sap pi overview
smavachee
 

Andere mochten auch (14)

The Lesson Learned from Implementation of ERP in Project-Based Holdings
The Lesson Learned from Implementation of ERP in Project-Based HoldingsThe Lesson Learned from Implementation of ERP in Project-Based Holdings
The Lesson Learned from Implementation of ERP in Project-Based Holdings
 
REST - A Super Quick Intro
REST - A Super Quick IntroREST - A Super Quick Intro
REST - A Super Quick Intro
 
SAP TechEd 2010 highlights
SAP TechEd 2010 highlightsSAP TechEd 2010 highlights
SAP TechEd 2010 highlights
 
REST: So What's It All About? (SAP TechEd 2011, MOB107)
REST: So What's It All About? (SAP TechEd 2011, MOB107)REST: So What's It All About? (SAP TechEd 2011, MOB107)
REST: So What's It All About? (SAP TechEd 2011, MOB107)
 
2 Minute Gap Analysis Worksheet
2 Minute Gap Analysis Worksheet  2 Minute Gap Analysis Worksheet
2 Minute Gap Analysis Worksheet
 
The CSV File Strikes Back
The CSV File Strikes BackThe CSV File Strikes Back
The CSV File Strikes Back
 
The Checklist for Modern ERP: ERP Made Sexy
The Checklist for Modern ERP: ERP Made SexyThe Checklist for Modern ERP: ERP Made Sexy
The Checklist for Modern ERP: ERP Made Sexy
 
Erp implementation checklist
Erp implementation checklistErp implementation checklist
Erp implementation checklist
 
Sap pi overview
Sap pi overviewSap pi overview
Sap pi overview
 
ERP Gap Analysis
ERP Gap AnalysisERP Gap Analysis
ERP Gap Analysis
 
Build your Own Technology Roadmap!
Build your Own Technology Roadmap!Build your Own Technology Roadmap!
Build your Own Technology Roadmap!
 
Case study on erp failures
Case study on erp failuresCase study on erp failures
Case study on erp failures
 
Success and Failure Examples of ERP Implementation
Success and Failure Examples of ERP ImplementationSuccess and Failure Examples of ERP Implementation
Success and Failure Examples of ERP Implementation
 
ERP Case Study - Failure case - FoxMeyer Case
ERP Case Study - Failure case - FoxMeyer CaseERP Case Study - Failure case - FoxMeyer Case
ERP Case Study - Failure case - FoxMeyer Case
 

Ähnlich wie Lessons Learnt Implementing High-Performance Integration using SAP PI

The Art of Message Queues - TEKX
The Art of Message Queues - TEKXThe Art of Message Queues - TEKX
The Art of Message Queues - TEKX
Mike Willbanks
 
Usemon; Building The Big Brother Of The Java Virtual Machinve
Usemon; Building The Big Brother Of The Java Virtual MachinveUsemon; Building The Big Brother Of The Java Virtual Machinve
Usemon; Building The Big Brother Of The Java Virtual Machinve
Paul René JÞrgensen
 
PPT slides
PPT slidesPPT slides
PPT slides
Videoguy
 
Troubleshooting SQL Server
Troubleshooting SQL ServerTroubleshooting SQL Server
Troubleshooting SQL Server
Stephen Rose
 
Maximize Messaging and Performance and Lowering Infrastructure Footprint
Maximize Messaging and Performance and Lowering Infrastructure FootprintMaximize Messaging and Performance and Lowering Infrastructure Footprint
Maximize Messaging and Performance and Lowering Infrastructure Footprint
WSO2
 
Optimizing your java applications for multi core hardware
Optimizing your java applications for multi core hardwareOptimizing your java applications for multi core hardware
Optimizing your java applications for multi core hardware
IndicThreads
 
Xen App Platinum For Service Providers (072209)
Xen App Platinum For Service Providers (072209)Xen App Platinum For Service Providers (072209)
Xen App Platinum For Service Providers (072209)
Scott Swanburg
 

Ähnlich wie Lessons Learnt Implementing High-Performance Integration using SAP PI (20)

The Art of Message Queues - TEKX
The Art of Message Queues - TEKXThe Art of Message Queues - TEKX
The Art of Message Queues - TEKX
 
How To Scale v2
How To Scale v2How To Scale v2
How To Scale v2
 
Introduction to requirement of microservices
Introduction to requirement of microservicesIntroduction to requirement of microservices
Introduction to requirement of microservices
 
Low latency in java 8 v5
Low latency in java 8 v5Low latency in java 8 v5
Low latency in java 8 v5
 
Tuning and development with SIP Servlets on Mobicents
Tuning and development with SIP Servlets on MobicentsTuning and development with SIP Servlets on Mobicents
Tuning and development with SIP Servlets on Mobicents
 
Scaling Streaming - Concepts, Research, Goals
Scaling Streaming - Concepts, Research, GoalsScaling Streaming - Concepts, Research, Goals
Scaling Streaming - Concepts, Research, Goals
 
Usemon; Building The Big Brother Of The Java Virtual Machinve
Usemon; Building The Big Brother Of The Java Virtual MachinveUsemon; Building The Big Brother Of The Java Virtual Machinve
Usemon; Building The Big Brother Of The Java Virtual Machinve
 
ChakraCore - JSConf Last Call
ChakraCore - JSConf Last CallChakraCore - JSConf Last Call
ChakraCore - JSConf Last Call
 
PPT slides
PPT slidesPPT slides
PPT slides
 
Troubleshooting SQL Server
Troubleshooting SQL ServerTroubleshooting SQL Server
Troubleshooting SQL Server
 
How to scale your web app
How to scale your web appHow to scale your web app
How to scale your web app
 
Maximize Messaging and Performance and Lowering Infrastructure Footprint
Maximize Messaging and Performance and Lowering Infrastructure FootprintMaximize Messaging and Performance and Lowering Infrastructure Footprint
Maximize Messaging and Performance and Lowering Infrastructure Footprint
 
Impact2014 session # 1523 performance optimization using ibm java on z and w...
Impact2014  session # 1523 performance optimization using ibm java on z and w...Impact2014  session # 1523 performance optimization using ibm java on z and w...
Impact2014 session # 1523 performance optimization using ibm java on z and w...
 
Velocity 2010 - ATS
Velocity 2010 - ATSVelocity 2010 - ATS
Velocity 2010 - ATS
 
Optimizing your java applications for multi core hardware
Optimizing your java applications for multi core hardwareOptimizing your java applications for multi core hardware
Optimizing your java applications for multi core hardware
 
Riding with camel
Riding with camelRiding with camel
Riding with camel
 
Xen App Platinum For Service Providers (072209)
Xen App Platinum For Service Providers (072209)Xen App Platinum For Service Providers (072209)
Xen App Platinum For Service Providers (072209)
 
Handling Data in Mega Scale Systems
Handling Data in Mega Scale SystemsHandling Data in Mega Scale Systems
Handling Data in Mega Scale Systems
 
Oracle R12 EBS Performance Tuning
Oracle R12 EBS Performance TuningOracle R12 EBS Performance Tuning
Oracle R12 EBS Performance Tuning
 
Fastest Servlets in the West
Fastest Servlets in the WestFastest Servlets in the West
Fastest Servlets in the West
 

Mehr von Sascha Wenninger

REST - What's It All About? (SAP TechEd 2012, CD110)
REST - What's It All About? (SAP TechEd 2012, CD110)REST - What's It All About? (SAP TechEd 2012, CD110)
REST - What's It All About? (SAP TechEd 2012, CD110)
Sascha Wenninger
 

Mehr von Sascha Wenninger (6)

HTTP/2 and SAP Fiori
HTTP/2 and SAP FioriHTTP/2 and SAP Fiori
HTTP/2 and SAP Fiori
 
A Look at the Performance of SAP UI Technologies - UXP212 at SAP TechEd && d-...
A Look at the Performance of SAP UI Technologies - UXP212 at SAP TechEd && d-...A Look at the Performance of SAP UI Technologies - UXP212 at SAP TechEd && d-...
A Look at the Performance of SAP UI Technologies - UXP212 at SAP TechEd && d-...
 
A Look at the Performance of SAP's Modern UIs
A Look at the Performance of SAP's Modern UIsA Look at the Performance of SAP's Modern UIs
A Look at the Performance of SAP's Modern UIs
 
Recipes for the Perfect PI v2.0
Recipes for the Perfect PI v2.0Recipes for the Perfect PI v2.0
Recipes for the Perfect PI v2.0
 
Navigating SAP’s Integration Options (Mastering SAP Technologies 2013)
Navigating SAP’s Integration Options (Mastering SAP Technologies 2013)Navigating SAP’s Integration Options (Mastering SAP Technologies 2013)
Navigating SAP’s Integration Options (Mastering SAP Technologies 2013)
 
REST - What's It All About? (SAP TechEd 2012, CD110)
REST - What's It All About? (SAP TechEd 2012, CD110)REST - What's It All About? (SAP TechEd 2012, CD110)
REST - What's It All About? (SAP TechEd 2012, CD110)
 

KĂŒrzlich hochgeladen

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

KĂŒrzlich hochgeladen (20)

GenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdfGenAI Risks & Security Meetup 01052024.pdf
GenAI Risks & Security Meetup 01052024.pdf
 
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu SubbuApidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
Apidays Singapore 2024 - Modernizing Securities Finance by Madhu Subbu
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Data Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt RobisonData Cloud, More than a CDP by Matt Robison
Data Cloud, More than a CDP by Matt Robison
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
Ransomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdfRansomware_Q4_2023. The report. [EN].pdf
Ransomware_Q4_2023. The report. [EN].pdf
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Navi Mumbai Call Girls đŸ„° 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls đŸ„° 8617370543 Service Offer VIP Hot ModelNavi Mumbai Call Girls đŸ„° 8617370543 Service Offer VIP Hot Model
Navi Mumbai Call Girls đŸ„° 8617370543 Service Offer VIP Hot Model
 
A Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source MilvusA Beginners Guide to Building a RAG App Using Open Source Milvus
A Beginners Guide to Building a RAG App Using Open Source Milvus
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
Apidays Singapore 2024 - Scalable LLM APIs for AI and Generative AI Applicati...
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024AXA XL - Insurer Innovation Award Americas 2024
AXA XL - Insurer Innovation Award Americas 2024
 

Lessons Learnt Implementing High-Performance Integration using SAP PI

  • 1.
  • 2. Recipes For the Perfect PI - Simple Ingredients for Complex Requirements SaschaWenninger - Australia Post
  • 4. You’ll Hear About: Basis Adapter Framework Interface Design Questions Key Points to Take Home
  • 5. 30,000 Foot View SAP POS DM SAP PI SAP ERP Routing Mapping SAP SCEM XML XML XML XML Mapping Mapping JMS Queue Mapping Mapping 
 

  • 6. Some Figures
 Retail Transactions from 8,000+ terminals in 3,400 stores: 500,000 – 750,000 messages per day Peaks of 45/second into PI, then split by receiver 6 receiving systems, 1-3 receivers per message Message size <10kB Roll-out: January – June 2011
  • 7. Objectives Near-real time: <15 minutes end to end Scalable to 2,000,000 messages/day and 14 receiver systems Future peaks of 90/second into PI No impact on other critical PI interfaces e.g. Parcel Tracking interface moving 2m+ events per day As simple as possible Future-proof (no ccBPM, no ABAP mapping, etc.)
  • 8. The Solution? Many small steps enabled us to get there.
  • 10. Basis System Memory Database Stuff Java Server Nodes The JVM Java Heap Space Wily Introscope
  • 11. System Memory One of the main foundations of the system Needs to accommodate all aspects of the system: Java + ABAP + ICM + DBMS + OS + caching/buffers + other apps Need to avoid swapping to disk at all times – causes huge GC delays!
  • 12.
  • 13. The JVM PI 7.1 and later use SAP’s own JVM SAPJVM 4.1 for PI 7.0 coming soon (Notes 1495160, 1522198) Bug fixes and performance improvements delivered continually Several JVM Upgrades over the past 12 months significantly reduced OOM crashes and Garbage Collection times for our systems. This enables the use of larger heap spaces! Patching via JSPM takes 30 minutes and 1 restart, plus some testing
  • 14. Java Heap Space More Heap = process larger messages, fewer full GCs, fewer OOMs SAP’s recommendation has historically been 2GB per Java process. Recently changed to 4GB (for SAP JVM) AusPost has been using 4GB for 9 months now. Main criteria: Full GCs should take less than 10 seconds.
  • 15. Java Memory Analysis  This is in SolMan!
  • 16. Wily Introscope Monitoring for the Java Stack Basic version is free with NetWeaver Java Provides functionality normally accessed via ABAP transactions
  • 20. Tons of Dashboards! 
and this is only the free version!
  • 21. Our PI System PI 7.11 SP5 JVM 5.1 Patch level 59 (64 in test systems) 3 Java server nodes, 4GB heap space each. AIX 6.1 on IBM POWER6, 60GB RAM
  • 22.
  • 27. Wily Introscope Many aspects which require special PI-Basis skills!
  • 28. Key Topic Adapter Framework
  • 29. Adapter Framework Thread Behaviour Messaging System
  • 30. Threads Messages are processed using a number of adapter-specific queues. Each queue has its own thread pool. e.g. for JMS:
  • 31.
  • 32. Caveat Some Adapters process messages serially! e.g. JMS: 1 Adapter Thread per Communication Channel reads messages from the JMS queue { 1 JMS Comm Channel 3 Java Server Nodes
  • 33. Threads in the AAE Adapter Thread picks up a message from the JMS queue, then: Executes Adapter Modules Performs Receiver Determination Persists 1 message per Receiver in Messaging System queue. Confirms message and removes from the JMS queue The longer this takes, the lower throughput will be.
  • 34. What does this mean?
  • 35. Sender-Side Performance is Really Important
  • 36. Implications Throughput depends on Sender Adapter performance Try to avoid adapter modules in Sender adapters. We achieved a 15% improvement by moving an XSLT mapping from the JMS adapter to the Operation Mapping.
  • 37.
  • 38.
  • 39. 2 Options In our system, each thread can process 10-15 messages/sec In order to consistently process 45 messages/sec from JMS, we need 4-5 concurrent JMS Sender Adapter threads. Option 1: 5 Java server nodes Option 2: Multiple JMS Communication Channels.
  • 40.
  • 41. More scalableThis is not needed for SOAP since it’s truly parallel. Image Source: http://t.co/ZOBdlH0
  • 42.
  • 43. Messaging System Increased importance for Integrated Configuration scenarios!
  • 45. Integrated Configuration Receiver Determination + Interface Determination + Receiver Agreements Integrated Configuration Object Causes an interface to be executed in the Advanced Adapter Engine
  • 46. Integrated Configuration Message Processing entirely in Java (AAE) Introduced in PI 7.1; more features in 7.11 and 7.3 Improved performance by: Reducing database I/O Eliminating ‘stack jumping’ between ABAP and Java 7-10 times throughput possible Not available for all adapters and scenarios.
  • 49. Constraints There are a few things you can’t do with Integrated Configuration: IDocs* Multi-Mappings* ccBPMs But this is an Opportunity to be Creative! *features added in PI 7.3
  • 50.
  • 51. Communication Channels ABAP Proxies/Enterprise Services  Use SOAP Adapter in XI 3.0 mode JMS Senders  Clone comm. Channels for greater parallelisation Non-SAP Systems  Ensure inbound queuing is available to avoid backlog in PI
  • 52. Design-Time Governance Don’t Overdo It! Find a balance which facilitates reuse but doesn’t impose too much up-front work. Image Source: http://geekandpoke.typepad.com
  • 54. Key Points to Take Home Wily Introscope Essential for understanding performance of the Java stack Use Integrated Configuration Objects 20 minutes to migrate an existing interface Keep your JVM Current Continuous improvements without much fuss Most of the other points can be quick wins too if you don’t do them all at once.
  • 55. SaschaWenninger Australia Post sascha.wenninger@auspost.com.au @sufw +61 403 933 472
  • 56. Further Reading PI Performance Check SOA MiddlewareArticles on SDN Incl. the Performance section