SlideShare una empresa de Scribd logo
1 de 30
1
Oracle JCS – How To Estimate
Production System Performance
Andrejus Baranovskis, Red Samurai Consulting
Oracle ACE Director, Oracle Developer Champion
2About Us
Oracle Experts Team
• Oracle PaaS Partner Community Award for Outstanding Java Cloud Service Contribution 2017
• Oracle Fusion Middleware Partner Community Award for Outstanding ACM/BPM Contribution 2015
• Oracle Fusion Middleware Innovation Award Winner 2010
• SOA Partner Community Award for Outstanding Contribution Across the World 2010
ADF, JET, MAF, Oracle Cloud (JCS, MCS, PCS, ACC), Oracle Fusion Middleware
3
3 Membership Tiers
• Oracle ACE Director
• Oracle ACE
• Oracle ACE Associate
bit.ly/OracleACEProgram
500+ Technical Experts
Helping Peers Globally
Connect:
Nominate yourself or someone you know: acenomination.oracle.com
@oracleace
Facebook.com/oracleaces
oracle-ace_ww@oracle.com
4Agenda
JCS Performance Estimation
Overview 01
Test Cases 02
Results 03
Methodology 04
5Summit ADF
Sample Application for Performance Test
6
• Login
• Wait 15-25 seconds
• Browse/select customers tree
• Wait 15-25 seconds
• Browse customers orders
• Wait 15-25 seconds
• Browse inventory control
• Wait 15-25 seconds
• Logout
Scenario
Performance Test
7ADF BC Scalability Settings
Application Module Pool Tuning
8Red Samurai ADF Performance Audit
Performance Monitor
9
• OC3: 1 CPU, 7.5 GB RAM (1 Cloud Node, No Cluster)
• -Xms256m –Xmx2048m –XX:PermSize=256m –XX:MaxPermSize=512m
• OC4: 2 CPU, 15 GB RAM (1 Cloud Node, No Cluster)
• -Xms256m –Xmx4096m –XX:PermSize=256m –XX:MaxPermSize=1024m
• OC4: 2 CPU, 15 GB RAM (1 Cloud Node, Cluster)
• -Xms256m –Xmx4096m –XX:PermSize=256m –XX:MaxPermSize=1024m
• OC3: 1 CPU, 7.5 GB RAM (2 Cloud Nodes, Cluster)
• -Xms256m –Xmx2048m –XX:PermSize=256m –XX:MaxPermSize=512m
JCS Compute Shapes
Performance Test – Managed Server Memory
10
• Test case:
• 100 threads
• 30 mins ramp-up
• 3 loops
• 15 to 25 seconds waits
• Output:
• Avg. request time: 60 ms. Avg. requests per minute: 1200
• Top active threads: 10
• DB connections peak: 3
• Garbage collection time avg.: 70 ms., Calls per minute: 13
• Processor: 40%, Heap avg.: 900 MB
• AM instances top: 15, Activations: 0
Test A
OC3 – 1 Cloud Node, No Cluster. AM Pool: 150. Status: OK
11
• Test case:
• 200 threads
• 30 mins ramp-up
• 3 loops
• 15 to 25 seconds waits
• Output:
• Avg. request time: 188 ms. Avg. requests per minute: 2150
• Top active threads: 75
• DB connections peak: 20
• Garbage collection time avg.: 3500 ms., Calls per minute: 21
• Processor: 60%, Heap avg.: 1200 MB
• AM instances top: 146, Activations: 0
Test B
OC3 – 1 Cloud Node, No Cluster. AM Pool: 150. Status: OK
12
• Test case:
• 400 threads
• 30 mins ramp-up
• 3 loops
• 15 to 25 seconds waits
• Output:
• Avg. request time: 900 (2500+ after activation) ms. Avg. requests per minute: 2600
• Top active threads: 320 (growing after activation)
• DB connections peak: 59
• Garbage collection time avg.: 2300 (2700 after activation) ms., Calls per minute: 25
• Processor: 90%, Heap avg.: 1400 MB
• AM instances top: 150, Activations: 1621 per minute
Test C
OC3 – 1 Cloud Node, No Cluster. AM Pool: 150. Status: FAIL
13
• Test case:
• 400 threads
• 30 mins ramp-up
• 3 loops
• 15 to 25 seconds waits
• Output:
• Avg. request time: 600 ms. Avg. requests per minute: 2400
• Top active threads: 330
• DB connections peak: 65
• Garbage collection time avg.: 4000 ms., Calls per minute: 30
• Processor: 80%, Heap avg.: 1400 MB
• AM instances top: 365, Activations: 0
Test D
OC3 – 1 Cloud Node, No Cluster. AM Pool: 500. Status: OK
14
• Test case:
• 400 threads
• 30 mins ramp-up
• 3 loops
• 15 to 25 seconds waits
• Output:
• Avg. request time: 180 ms. Avg. requests per minute: 4800
• Top active threads: 157
• DB connections peak: 60
• Garbage collection time avg.: 1800 ms., Calls per minute: 25
• Processor: 65%, Heap avg.: 1850 MB
• AM instances top: 176, Activations: 0
Test E
OC4 – 1 Cloud Node, No Cluster. AM Pool: 500. Status: OK
15
• Test case:
• 400 threads
• 30 mins ramp-up
• 3 loops
• 15 to 25 seconds waits
• Output:
• Avg. request time: 282/225 ms. Avg. requests per minute: 2000/1251
• Top active threads: 320/320
• DB connections peak: 40/40
• Garbage collection time avg.: 2100/3000 ms., Calls per minute: 8/9
• Processor: 35% / 30%, Heap avg.: 1700/1414 MB
• AM instances top: 314/322, Activations: 0
Test F
OC4 – 1 Cloud Node, Cluster. AM Pool: 500. Status: OK
16
• Test case:
• 400 threads
• 30 mins ramp-up
• 3 loops
• 15 to 25 seconds waits
• Output:
• Avg. request time: 100/121 ms. Avg. requests per minute: 1200/1300
• Top active threads: 211/211
• DB connections peak: 16/17
• Garbage collection time avg.: 1500/1800ms., Calls per minute: 18/18
• Processor: 53% / 60%, Heap avg.: 1180/1200 MB
• AM instances top: 120/119, Activations: 0
Test G
OC3 – 2 Cloud Nodes, Cluster. AM Pool: 500. Status: OK
17Request Time/Garbage Collection Time
0
500
1000
1500
2000
2500
3000
3500
4000
4500
C D E F G
Avg. request time
Avg. garbage collection time
18Top Active Threads
0
50
100
150
200
250
300
350
C D E F G
Top Active Threads
19DB Connections Peak/AM Instances
0
50
100
150
200
250
300
350
400
C D E F G
DB Connections peak
AM Instances
20Processor %
0
10
20
30
40
50
60
70
80
90
100
C D E F G
Processor
21Heap Size
0
200
400
600
800
1000
1200
1400
1600
1800
2000
C D E F G
Heap Size
22
• Use ADF sample as baseline
• Select key use cases from your system for performance test
• Start with minimum JCS Compute Shape
• Grow performance test to expected number of threads gradually
• Scale up single Cloud Node and increase heap, if need to support more threads
• Setup cluster with X Cloud Nodes, when increasing single Cloud Node heap is not enough
Methodology
How to select JCS Compute Shape
23JCS – Scale Up
24JCS – Scale Up
25JCS – Scale Up
26JCS – Cluster
27JCS – Cluster
28JCS – Load Balancer
29
QUESTIONS
Learn More.
30
THANKS FOR WATCHING
See You Next Time
@RedSamurai @RedSamurai @RedSamurai

Más contenido relacionado

Similar a Oracle Java Cloud Service: How to Estimate Production System Performance

The server side story: Parallel and Asynchronous programming in .NET - ITPro...
The server side story:  Parallel and Asynchronous programming in .NET - ITPro...The server side story:  Parallel and Asynchronous programming in .NET - ITPro...
The server side story: Parallel and Asynchronous programming in .NET - ITPro...Panagiotis Kanavos
 
End-to-end Troubleshooting Checklist for Microsoft SQL Server
End-to-end Troubleshooting Checklist for Microsoft SQL ServerEnd-to-end Troubleshooting Checklist for Microsoft SQL Server
End-to-end Troubleshooting Checklist for Microsoft SQL ServerKevin Kline
 
Tomcat Optimisation & Performance Tuning
Tomcat Optimisation & Performance TuningTomcat Optimisation & Performance Tuning
Tomcat Optimisation & Performance Tuninglovingprince58
 
Surge 2013: Maximizing Scalability, Resiliency, and Engineering Velocity in t...
Surge 2013: Maximizing Scalability, Resiliency, and Engineering Velocity in t...Surge 2013: Maximizing Scalability, Resiliency, and Engineering Velocity in t...
Surge 2013: Maximizing Scalability, Resiliency, and Engineering Velocity in t...Coburn Watson
 
HighLoad Solutions On MySQL / Xiaobin Lin (Alibaba)
HighLoad Solutions On MySQL / Xiaobin Lin (Alibaba)HighLoad Solutions On MySQL / Xiaobin Lin (Alibaba)
HighLoad Solutions On MySQL / Xiaobin Lin (Alibaba)Ontico
 
PyCon AU 2015 - Using benchmarks to understand how wsgi servers work
PyCon AU 2015  - Using benchmarks to understand how wsgi servers workPyCon AU 2015  - Using benchmarks to understand how wsgi servers work
PyCon AU 2015 - Using benchmarks to understand how wsgi servers workGraham Dumpleton
 
Should you read Kafka as a stream or in batch? Should you even care? | Ido Na...
Should you read Kafka as a stream or in batch? Should you even care? | Ido Na...Should you read Kafka as a stream or in batch? Should you even care? | Ido Na...
Should you read Kafka as a stream or in batch? Should you even care? | Ido Na...HostedbyConfluent
 
JavaOne 2010: Top 10 Causes for Java Issues in Production and What to Do When...
JavaOne 2010: Top 10 Causes for Java Issues in Production and What to Do When...JavaOne 2010: Top 10 Causes for Java Issues in Production and What to Do When...
JavaOne 2010: Top 10 Causes for Java Issues in Production and What to Do When...srisatish ambati
 
Performance Scenario: Diagnosing and resolving sudden slow down on two node RAC
Performance Scenario: Diagnosing and resolving sudden slow down on two node RACPerformance Scenario: Diagnosing and resolving sudden slow down on two node RAC
Performance Scenario: Diagnosing and resolving sudden slow down on two node RACKristofferson A
 
Using Riak for Events storage and analysis at Booking.com
Using Riak for Events storage and analysis at Booking.comUsing Riak for Events storage and analysis at Booking.com
Using Riak for Events storage and analysis at Booking.comDamien Krotkine
 
Benchmarking Apache Samza: 1.2 million messages per sec per node
Benchmarking Apache Samza: 1.2 million messages per sec per nodeBenchmarking Apache Samza: 1.2 million messages per sec per node
Benchmarking Apache Samza: 1.2 million messages per sec per nodeTao Feng
 
Analyzing and Interpreting AWR
Analyzing and Interpreting AWRAnalyzing and Interpreting AWR
Analyzing and Interpreting AWRpasalapudi
 
Data Science Lab Meetup: Cassandra and Spark
Data Science Lab Meetup: Cassandra and SparkData Science Lab Meetup: Cassandra and Spark
Data Science Lab Meetup: Cassandra and SparkChristopher Batey
 
How to Run a 1,000,000 VU Load Test using Apache JMeter and BlazeMeter
How to Run a 1,000,000 VU Load Test using Apache JMeter and BlazeMeterHow to Run a 1,000,000 VU Load Test using Apache JMeter and BlazeMeter
How to Run a 1,000,000 VU Load Test using Apache JMeter and BlazeMeterAlon Girmonsky
 
Oracle GoldenGate Architecture Performance
Oracle GoldenGate Architecture PerformanceOracle GoldenGate Architecture Performance
Oracle GoldenGate Architecture PerformanceEnkitec
 
SolarWinds Federal User Group 2016 - SolarWinds Enterprise Scalability, Integ...
SolarWinds Federal User Group 2016 - SolarWinds Enterprise Scalability, Integ...SolarWinds Federal User Group 2016 - SolarWinds Enterprise Scalability, Integ...
SolarWinds Federal User Group 2016 - SolarWinds Enterprise Scalability, Integ...SolarWinds
 

Similar a Oracle Java Cloud Service: How to Estimate Production System Performance (20)

Otimizando servidores web
Otimizando servidores webOtimizando servidores web
Otimizando servidores web
 
The server side story: Parallel and Asynchronous programming in .NET - ITPro...
The server side story:  Parallel and Asynchronous programming in .NET - ITPro...The server side story:  Parallel and Asynchronous programming in .NET - ITPro...
The server side story: Parallel and Asynchronous programming in .NET - ITPro...
 
End-to-end Troubleshooting Checklist for Microsoft SQL Server
End-to-end Troubleshooting Checklist for Microsoft SQL ServerEnd-to-end Troubleshooting Checklist for Microsoft SQL Server
End-to-end Troubleshooting Checklist for Microsoft SQL Server
 
Tomcat Optimisation & Performance Tuning
Tomcat Optimisation & Performance TuningTomcat Optimisation & Performance Tuning
Tomcat Optimisation & Performance Tuning
 
Surge 2013: Maximizing Scalability, Resiliency, and Engineering Velocity in t...
Surge 2013: Maximizing Scalability, Resiliency, and Engineering Velocity in t...Surge 2013: Maximizing Scalability, Resiliency, and Engineering Velocity in t...
Surge 2013: Maximizing Scalability, Resiliency, and Engineering Velocity in t...
 
HighLoad Solutions On MySQL / Xiaobin Lin (Alibaba)
HighLoad Solutions On MySQL / Xiaobin Lin (Alibaba)HighLoad Solutions On MySQL / Xiaobin Lin (Alibaba)
HighLoad Solutions On MySQL / Xiaobin Lin (Alibaba)
 
PyCon AU 2015 - Using benchmarks to understand how wsgi servers work
PyCon AU 2015  - Using benchmarks to understand how wsgi servers workPyCon AU 2015  - Using benchmarks to understand how wsgi servers work
PyCon AU 2015 - Using benchmarks to understand how wsgi servers work
 
Should you read Kafka as a stream or in batch? Should you even care? | Ido Na...
Should you read Kafka as a stream or in batch? Should you even care? | Ido Na...Should you read Kafka as a stream or in batch? Should you even care? | Ido Na...
Should you read Kafka as a stream or in batch? Should you even care? | Ido Na...
 
JavaOne 2010: Top 10 Causes for Java Issues in Production and What to Do When...
JavaOne 2010: Top 10 Causes for Java Issues in Production and What to Do When...JavaOne 2010: Top 10 Causes for Java Issues in Production and What to Do When...
JavaOne 2010: Top 10 Causes for Java Issues in Production and What to Do When...
 
Performance Scenario: Diagnosing and resolving sudden slow down on two node RAC
Performance Scenario: Diagnosing and resolving sudden slow down on two node RACPerformance Scenario: Diagnosing and resolving sudden slow down on two node RAC
Performance Scenario: Diagnosing and resolving sudden slow down on two node RAC
 
Using Riak for Events storage and analysis at Booking.com
Using Riak for Events storage and analysis at Booking.comUsing Riak for Events storage and analysis at Booking.com
Using Riak for Events storage and analysis at Booking.com
 
Experience using the IO-500
Experience using the IO-500Experience using the IO-500
Experience using the IO-500
 
Benchmarking Apache Samza: 1.2 million messages per sec per node
Benchmarking Apache Samza: 1.2 million messages per sec per nodeBenchmarking Apache Samza: 1.2 million messages per sec per node
Benchmarking Apache Samza: 1.2 million messages per sec per node
 
Otimizando seu projeto Rails
Otimizando seu projeto RailsOtimizando seu projeto Rails
Otimizando seu projeto Rails
 
Analyzing and Interpreting AWR
Analyzing and Interpreting AWRAnalyzing and Interpreting AWR
Analyzing and Interpreting AWR
 
Data Science Lab Meetup: Cassandra and Spark
Data Science Lab Meetup: Cassandra and SparkData Science Lab Meetup: Cassandra and Spark
Data Science Lab Meetup: Cassandra and Spark
 
How to Run a 1,000,000 VU Load Test using Apache JMeter and BlazeMeter
How to Run a 1,000,000 VU Load Test using Apache JMeter and BlazeMeterHow to Run a 1,000,000 VU Load Test using Apache JMeter and BlazeMeter
How to Run a 1,000,000 VU Load Test using Apache JMeter and BlazeMeter
 
6 app-tcp
6 app-tcp6 app-tcp
6 app-tcp
 
Oracle GoldenGate Architecture Performance
Oracle GoldenGate Architecture PerformanceOracle GoldenGate Architecture Performance
Oracle GoldenGate Architecture Performance
 
SolarWinds Federal User Group 2016 - SolarWinds Enterprise Scalability, Integ...
SolarWinds Federal User Group 2016 - SolarWinds Enterprise Scalability, Integ...SolarWinds Federal User Group 2016 - SolarWinds Enterprise Scalability, Integ...
SolarWinds Federal User Group 2016 - SolarWinds Enterprise Scalability, Integ...
 

Más de andrejusb

Machine Learning Applied - Tabular Dataset Models and Sentiment Analysis
Machine Learning Applied - Tabular Dataset Models and Sentiment AnalysisMachine Learning Applied - Tabular Dataset Models and Sentiment Analysis
Machine Learning Applied - Tabular Dataset Models and Sentiment Analysisandrejusb
 
JavaScript Development on Steroids with Oracle Visual Builder
JavaScript Development on Steroids with Oracle Visual BuilderJavaScript Development on Steroids with Oracle Visual Builder
JavaScript Development on Steroids with Oracle Visual Builderandrejusb
 
Machine Learning Applied - Contextual Chatbots Coding, Oracle JET and TensorFlow
Machine Learning Applied - Contextual Chatbots Coding, Oracle JET and TensorFlowMachine Learning Applied - Contextual Chatbots Coding, Oracle JET and TensorFlow
Machine Learning Applied - Contextual Chatbots Coding, Oracle JET and TensorFlowandrejusb
 
Reliable, Fast, Engaging Offline-First Architecture for JavaScript Applications
 Reliable, Fast, Engaging Offline-First Architecture for JavaScript Applications Reliable, Fast, Engaging Offline-First Architecture for JavaScript Applications
Reliable, Fast, Engaging Offline-First Architecture for JavaScript Applicationsandrejusb
 
Machine Learning Applied - Contextual Chatbots Coding, Oracle JET and Tensor...
 Machine Learning Applied - Contextual Chatbots Coding, Oracle JET and Tensor... Machine Learning Applied - Contextual Chatbots Coding, Oracle JET and Tensor...
Machine Learning Applied - Contextual Chatbots Coding, Oracle JET and Tensor...andrejusb
 
Microservice Approach for Web Development with Micro Frontends
Microservice Approach for Web Development with Micro FrontendsMicroservice Approach for Web Development with Micro Frontends
Microservice Approach for Web Development with Micro Frontendsandrejusb
 
Machine Learning Applied - Contextual Chatbots Coding, Oracle JET and Tensorflow
Machine Learning Applied - Contextual Chatbots Coding, Oracle JET and TensorflowMachine Learning Applied - Contextual Chatbots Coding, Oracle JET and Tensorflow
Machine Learning Applied - Contextual Chatbots Coding, Oracle JET and Tensorflowandrejusb
 
Oracle Development Cloud Service
Oracle Development Cloud ServiceOracle Development Cloud Service
Oracle Development Cloud Serviceandrejusb
 
Essential Kit for Oracle JET Programming
Essential Kit for Oracle JET ProgrammingEssential Kit for Oracle JET Programming
Essential Kit for Oracle JET Programmingandrejusb
 
Oracle JET and ADF BC REST Production Experience with Oracle Java Cloud
Oracle JET and ADF BC REST Production Experience with Oracle Java CloudOracle JET and ADF BC REST Production Experience with Oracle Java Cloud
Oracle JET and ADF BC REST Production Experience with Oracle Java Cloudandrejusb
 
Offline Web with Oracle JET
Offline Web with Oracle JETOffline Web with Oracle JET
Offline Web with Oracle JETandrejusb
 
End-to-End Cloud: Oracle Java Cloud, Oracle Mobile Cloud Service, Oracle MAF,...
End-to-End Cloud: Oracle Java Cloud, Oracle Mobile Cloud Service, Oracle MAF,...End-to-End Cloud: Oracle Java Cloud, Oracle Mobile Cloud Service, Oracle MAF,...
End-to-End Cloud: Oracle Java Cloud, Oracle Mobile Cloud Service, Oracle MAF,...andrejusb
 
Forms, ADF and JET a Non-Aggression Pact
Forms, ADF and JET a Non-Aggression PactForms, ADF and JET a Non-Aggression Pact
Forms, ADF and JET a Non-Aggression Pactandrejusb
 
Oracle JET CRUD and ADF BC REST
Oracle JET CRUD and ADF BC RESTOracle JET CRUD and ADF BC REST
Oracle JET CRUD and ADF BC RESTandrejusb
 
Oracle JET and WebSocket
Oracle JET and WebSocketOracle JET and WebSocket
Oracle JET and WebSocketandrejusb
 
Oracle Alta UI Patterns for Enterprise Applications and Responsive UI Support
Oracle Alta UI Patterns for Enterprise Applications and Responsive UI SupportOracle Alta UI Patterns for Enterprise Applications and Responsive UI Support
Oracle Alta UI Patterns for Enterprise Applications and Responsive UI Supportandrejusb
 
ADF Mythbusters UKOUG'14
ADF Mythbusters UKOUG'14ADF Mythbusters UKOUG'14
ADF Mythbusters UKOUG'14andrejusb
 
Data Caching Strategies for Oracle Mobile Application Framework
Data Caching Strategies for Oracle Mobile Application FrameworkData Caching Strategies for Oracle Mobile Application Framework
Data Caching Strategies for Oracle Mobile Application Frameworkandrejusb
 
ADF Development Survival Kit
ADF Development Survival KitADF Development Survival Kit
ADF Development Survival Kitandrejusb
 
ADF Anti-Patterns: Dangerous Tutorials
ADF Anti-Patterns: Dangerous TutorialsADF Anti-Patterns: Dangerous Tutorials
ADF Anti-Patterns: Dangerous Tutorialsandrejusb
 

Más de andrejusb (20)

Machine Learning Applied - Tabular Dataset Models and Sentiment Analysis
Machine Learning Applied - Tabular Dataset Models and Sentiment AnalysisMachine Learning Applied - Tabular Dataset Models and Sentiment Analysis
Machine Learning Applied - Tabular Dataset Models and Sentiment Analysis
 
JavaScript Development on Steroids with Oracle Visual Builder
JavaScript Development on Steroids with Oracle Visual BuilderJavaScript Development on Steroids with Oracle Visual Builder
JavaScript Development on Steroids with Oracle Visual Builder
 
Machine Learning Applied - Contextual Chatbots Coding, Oracle JET and TensorFlow
Machine Learning Applied - Contextual Chatbots Coding, Oracle JET and TensorFlowMachine Learning Applied - Contextual Chatbots Coding, Oracle JET and TensorFlow
Machine Learning Applied - Contextual Chatbots Coding, Oracle JET and TensorFlow
 
Reliable, Fast, Engaging Offline-First Architecture for JavaScript Applications
 Reliable, Fast, Engaging Offline-First Architecture for JavaScript Applications Reliable, Fast, Engaging Offline-First Architecture for JavaScript Applications
Reliable, Fast, Engaging Offline-First Architecture for JavaScript Applications
 
Machine Learning Applied - Contextual Chatbots Coding, Oracle JET and Tensor...
 Machine Learning Applied - Contextual Chatbots Coding, Oracle JET and Tensor... Machine Learning Applied - Contextual Chatbots Coding, Oracle JET and Tensor...
Machine Learning Applied - Contextual Chatbots Coding, Oracle JET and Tensor...
 
Microservice Approach for Web Development with Micro Frontends
Microservice Approach for Web Development with Micro FrontendsMicroservice Approach for Web Development with Micro Frontends
Microservice Approach for Web Development with Micro Frontends
 
Machine Learning Applied - Contextual Chatbots Coding, Oracle JET and Tensorflow
Machine Learning Applied - Contextual Chatbots Coding, Oracle JET and TensorflowMachine Learning Applied - Contextual Chatbots Coding, Oracle JET and Tensorflow
Machine Learning Applied - Contextual Chatbots Coding, Oracle JET and Tensorflow
 
Oracle Development Cloud Service
Oracle Development Cloud ServiceOracle Development Cloud Service
Oracle Development Cloud Service
 
Essential Kit for Oracle JET Programming
Essential Kit for Oracle JET ProgrammingEssential Kit for Oracle JET Programming
Essential Kit for Oracle JET Programming
 
Oracle JET and ADF BC REST Production Experience with Oracle Java Cloud
Oracle JET and ADF BC REST Production Experience with Oracle Java CloudOracle JET and ADF BC REST Production Experience with Oracle Java Cloud
Oracle JET and ADF BC REST Production Experience with Oracle Java Cloud
 
Offline Web with Oracle JET
Offline Web with Oracle JETOffline Web with Oracle JET
Offline Web with Oracle JET
 
End-to-End Cloud: Oracle Java Cloud, Oracle Mobile Cloud Service, Oracle MAF,...
End-to-End Cloud: Oracle Java Cloud, Oracle Mobile Cloud Service, Oracle MAF,...End-to-End Cloud: Oracle Java Cloud, Oracle Mobile Cloud Service, Oracle MAF,...
End-to-End Cloud: Oracle Java Cloud, Oracle Mobile Cloud Service, Oracle MAF,...
 
Forms, ADF and JET a Non-Aggression Pact
Forms, ADF and JET a Non-Aggression PactForms, ADF and JET a Non-Aggression Pact
Forms, ADF and JET a Non-Aggression Pact
 
Oracle JET CRUD and ADF BC REST
Oracle JET CRUD and ADF BC RESTOracle JET CRUD and ADF BC REST
Oracle JET CRUD and ADF BC REST
 
Oracle JET and WebSocket
Oracle JET and WebSocketOracle JET and WebSocket
Oracle JET and WebSocket
 
Oracle Alta UI Patterns for Enterprise Applications and Responsive UI Support
Oracle Alta UI Patterns for Enterprise Applications and Responsive UI SupportOracle Alta UI Patterns for Enterprise Applications and Responsive UI Support
Oracle Alta UI Patterns for Enterprise Applications and Responsive UI Support
 
ADF Mythbusters UKOUG'14
ADF Mythbusters UKOUG'14ADF Mythbusters UKOUG'14
ADF Mythbusters UKOUG'14
 
Data Caching Strategies for Oracle Mobile Application Framework
Data Caching Strategies for Oracle Mobile Application FrameworkData Caching Strategies for Oracle Mobile Application Framework
Data Caching Strategies for Oracle Mobile Application Framework
 
ADF Development Survival Kit
ADF Development Survival KitADF Development Survival Kit
ADF Development Survival Kit
 
ADF Anti-Patterns: Dangerous Tutorials
ADF Anti-Patterns: Dangerous TutorialsADF Anti-Patterns: Dangerous Tutorials
ADF Anti-Patterns: Dangerous Tutorials
 

Último

Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...
Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...
Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...OnePlan Solutions
 
VK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web DevelopmentVK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web Developmentvyaparkranti
 
VictoriaMetrics Q1 Meet Up '24 - Community & News Update
VictoriaMetrics Q1 Meet Up '24 - Community & News UpdateVictoriaMetrics Q1 Meet Up '24 - Community & News Update
VictoriaMetrics Q1 Meet Up '24 - Community & News UpdateVictoriaMetrics
 
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdfExploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdfkalichargn70th171
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...confluent
 
Keeping your build tool updated in a multi repository world
Keeping your build tool updated in a multi repository worldKeeping your build tool updated in a multi repository world
Keeping your build tool updated in a multi repository worldRoberto Pérez Alcolea
 
Machine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringMachine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringHironori Washizaki
 
Strategies for using alternative queries to mitigate zero results
Strategies for using alternative queries to mitigate zero resultsStrategies for using alternative queries to mitigate zero results
Strategies for using alternative queries to mitigate zero resultsJean Silva
 
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptx
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptxThe Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptx
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptxRTS corp
 
Osi security architecture in network.pptx
Osi security architecture in network.pptxOsi security architecture in network.pptx
Osi security architecture in network.pptxVinzoCenzo
 
2024 DevNexus Patterns for Resiliency: Shuffle shards
2024 DevNexus Patterns for Resiliency: Shuffle shards2024 DevNexus Patterns for Resiliency: Shuffle shards
2024 DevNexus Patterns for Resiliency: Shuffle shardsChristopher Curtin
 
Powering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsPowering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsSafe Software
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtimeandrehoraa
 
UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptxUI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptxAndreas Kunz
 
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalLionel Briand
 
SAM Training Session - How to use EXCEL ?
SAM Training Session - How to use EXCEL ?SAM Training Session - How to use EXCEL ?
SAM Training Session - How to use EXCEL ?Alexandre Beguel
 
SoftTeco - Software Development Company Profile
SoftTeco - Software Development Company ProfileSoftTeco - Software Development Company Profile
SoftTeco - Software Development Company Profileakrivarotava
 
Leveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
Leveraging AI for Mobile App Testing on Real Devices | Applitools + KobitonLeveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
Leveraging AI for Mobile App Testing on Real Devices | Applitools + KobitonApplitools
 
Ronisha Informatics Private Limited Catalogue
Ronisha Informatics Private Limited CatalogueRonisha Informatics Private Limited Catalogue
Ronisha Informatics Private Limited Catalogueitservices996
 
VictoriaMetrics Anomaly Detection Updates: Q1 2024
VictoriaMetrics Anomaly Detection Updates: Q1 2024VictoriaMetrics Anomaly Detection Updates: Q1 2024
VictoriaMetrics Anomaly Detection Updates: Q1 2024VictoriaMetrics
 

Último (20)

Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...
Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...
Tech Tuesday Slides - Introduction to Project Management with OnePlan's Work ...
 
VK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web DevelopmentVK Business Profile - provides IT solutions and Web Development
VK Business Profile - provides IT solutions and Web Development
 
VictoriaMetrics Q1 Meet Up '24 - Community & News Update
VictoriaMetrics Q1 Meet Up '24 - Community & News UpdateVictoriaMetrics Q1 Meet Up '24 - Community & News Update
VictoriaMetrics Q1 Meet Up '24 - Community & News Update
 
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdfExploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
Exploring Selenium_Appium Frameworks for Seamless Integration with HeadSpin.pdf
 
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
Catch the Wave: SAP Event-Driven and Data Streaming for the Intelligence Ente...
 
Keeping your build tool updated in a multi repository world
Keeping your build tool updated in a multi repository worldKeeping your build tool updated in a multi repository world
Keeping your build tool updated in a multi repository world
 
Machine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their EngineeringMachine Learning Software Engineering Patterns and Their Engineering
Machine Learning Software Engineering Patterns and Their Engineering
 
Strategies for using alternative queries to mitigate zero results
Strategies for using alternative queries to mitigate zero resultsStrategies for using alternative queries to mitigate zero results
Strategies for using alternative queries to mitigate zero results
 
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptx
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptxThe Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptx
The Role of IoT and Sensor Technology in Cargo Cloud Solutions.pptx
 
Osi security architecture in network.pptx
Osi security architecture in network.pptxOsi security architecture in network.pptx
Osi security architecture in network.pptx
 
2024 DevNexus Patterns for Resiliency: Shuffle shards
2024 DevNexus Patterns for Resiliency: Shuffle shards2024 DevNexus Patterns for Resiliency: Shuffle shards
2024 DevNexus Patterns for Resiliency: Shuffle shards
 
Powering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data StreamsPowering Real-Time Decisions with Continuous Data Streams
Powering Real-Time Decisions with Continuous Data Streams
 
SpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at RuntimeSpotFlow: Tracking Method Calls and States at Runtime
SpotFlow: Tracking Method Calls and States at Runtime
 
UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptxUI5ers live - Custom Controls wrapping 3rd-party libs.pptx
UI5ers live - Custom Controls wrapping 3rd-party libs.pptx
 
Precise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive GoalPrecise and Complete Requirements? An Elusive Goal
Precise and Complete Requirements? An Elusive Goal
 
SAM Training Session - How to use EXCEL ?
SAM Training Session - How to use EXCEL ?SAM Training Session - How to use EXCEL ?
SAM Training Session - How to use EXCEL ?
 
SoftTeco - Software Development Company Profile
SoftTeco - Software Development Company ProfileSoftTeco - Software Development Company Profile
SoftTeco - Software Development Company Profile
 
Leveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
Leveraging AI for Mobile App Testing on Real Devices | Applitools + KobitonLeveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
Leveraging AI for Mobile App Testing on Real Devices | Applitools + Kobiton
 
Ronisha Informatics Private Limited Catalogue
Ronisha Informatics Private Limited CatalogueRonisha Informatics Private Limited Catalogue
Ronisha Informatics Private Limited Catalogue
 
VictoriaMetrics Anomaly Detection Updates: Q1 2024
VictoriaMetrics Anomaly Detection Updates: Q1 2024VictoriaMetrics Anomaly Detection Updates: Q1 2024
VictoriaMetrics Anomaly Detection Updates: Q1 2024
 

Oracle Java Cloud Service: How to Estimate Production System Performance

  • 1. 1 Oracle JCS – How To Estimate Production System Performance Andrejus Baranovskis, Red Samurai Consulting Oracle ACE Director, Oracle Developer Champion
  • 2. 2About Us Oracle Experts Team • Oracle PaaS Partner Community Award for Outstanding Java Cloud Service Contribution 2017 • Oracle Fusion Middleware Partner Community Award for Outstanding ACM/BPM Contribution 2015 • Oracle Fusion Middleware Innovation Award Winner 2010 • SOA Partner Community Award for Outstanding Contribution Across the World 2010 ADF, JET, MAF, Oracle Cloud (JCS, MCS, PCS, ACC), Oracle Fusion Middleware
  • 3. 3 3 Membership Tiers • Oracle ACE Director • Oracle ACE • Oracle ACE Associate bit.ly/OracleACEProgram 500+ Technical Experts Helping Peers Globally Connect: Nominate yourself or someone you know: acenomination.oracle.com @oracleace Facebook.com/oracleaces oracle-ace_ww@oracle.com
  • 4. 4Agenda JCS Performance Estimation Overview 01 Test Cases 02 Results 03 Methodology 04
  • 5. 5Summit ADF Sample Application for Performance Test
  • 6. 6 • Login • Wait 15-25 seconds • Browse/select customers tree • Wait 15-25 seconds • Browse customers orders • Wait 15-25 seconds • Browse inventory control • Wait 15-25 seconds • Logout Scenario Performance Test
  • 7. 7ADF BC Scalability Settings Application Module Pool Tuning
  • 8. 8Red Samurai ADF Performance Audit Performance Monitor
  • 9. 9 • OC3: 1 CPU, 7.5 GB RAM (1 Cloud Node, No Cluster) • -Xms256m –Xmx2048m –XX:PermSize=256m –XX:MaxPermSize=512m • OC4: 2 CPU, 15 GB RAM (1 Cloud Node, No Cluster) • -Xms256m –Xmx4096m –XX:PermSize=256m –XX:MaxPermSize=1024m • OC4: 2 CPU, 15 GB RAM (1 Cloud Node, Cluster) • -Xms256m –Xmx4096m –XX:PermSize=256m –XX:MaxPermSize=1024m • OC3: 1 CPU, 7.5 GB RAM (2 Cloud Nodes, Cluster) • -Xms256m –Xmx2048m –XX:PermSize=256m –XX:MaxPermSize=512m JCS Compute Shapes Performance Test – Managed Server Memory
  • 10. 10 • Test case: • 100 threads • 30 mins ramp-up • 3 loops • 15 to 25 seconds waits • Output: • Avg. request time: 60 ms. Avg. requests per minute: 1200 • Top active threads: 10 • DB connections peak: 3 • Garbage collection time avg.: 70 ms., Calls per minute: 13 • Processor: 40%, Heap avg.: 900 MB • AM instances top: 15, Activations: 0 Test A OC3 – 1 Cloud Node, No Cluster. AM Pool: 150. Status: OK
  • 11. 11 • Test case: • 200 threads • 30 mins ramp-up • 3 loops • 15 to 25 seconds waits • Output: • Avg. request time: 188 ms. Avg. requests per minute: 2150 • Top active threads: 75 • DB connections peak: 20 • Garbage collection time avg.: 3500 ms., Calls per minute: 21 • Processor: 60%, Heap avg.: 1200 MB • AM instances top: 146, Activations: 0 Test B OC3 – 1 Cloud Node, No Cluster. AM Pool: 150. Status: OK
  • 12. 12 • Test case: • 400 threads • 30 mins ramp-up • 3 loops • 15 to 25 seconds waits • Output: • Avg. request time: 900 (2500+ after activation) ms. Avg. requests per minute: 2600 • Top active threads: 320 (growing after activation) • DB connections peak: 59 • Garbage collection time avg.: 2300 (2700 after activation) ms., Calls per minute: 25 • Processor: 90%, Heap avg.: 1400 MB • AM instances top: 150, Activations: 1621 per minute Test C OC3 – 1 Cloud Node, No Cluster. AM Pool: 150. Status: FAIL
  • 13. 13 • Test case: • 400 threads • 30 mins ramp-up • 3 loops • 15 to 25 seconds waits • Output: • Avg. request time: 600 ms. Avg. requests per minute: 2400 • Top active threads: 330 • DB connections peak: 65 • Garbage collection time avg.: 4000 ms., Calls per minute: 30 • Processor: 80%, Heap avg.: 1400 MB • AM instances top: 365, Activations: 0 Test D OC3 – 1 Cloud Node, No Cluster. AM Pool: 500. Status: OK
  • 14. 14 • Test case: • 400 threads • 30 mins ramp-up • 3 loops • 15 to 25 seconds waits • Output: • Avg. request time: 180 ms. Avg. requests per minute: 4800 • Top active threads: 157 • DB connections peak: 60 • Garbage collection time avg.: 1800 ms., Calls per minute: 25 • Processor: 65%, Heap avg.: 1850 MB • AM instances top: 176, Activations: 0 Test E OC4 – 1 Cloud Node, No Cluster. AM Pool: 500. Status: OK
  • 15. 15 • Test case: • 400 threads • 30 mins ramp-up • 3 loops • 15 to 25 seconds waits • Output: • Avg. request time: 282/225 ms. Avg. requests per minute: 2000/1251 • Top active threads: 320/320 • DB connections peak: 40/40 • Garbage collection time avg.: 2100/3000 ms., Calls per minute: 8/9 • Processor: 35% / 30%, Heap avg.: 1700/1414 MB • AM instances top: 314/322, Activations: 0 Test F OC4 – 1 Cloud Node, Cluster. AM Pool: 500. Status: OK
  • 16. 16 • Test case: • 400 threads • 30 mins ramp-up • 3 loops • 15 to 25 seconds waits • Output: • Avg. request time: 100/121 ms. Avg. requests per minute: 1200/1300 • Top active threads: 211/211 • DB connections peak: 16/17 • Garbage collection time avg.: 1500/1800ms., Calls per minute: 18/18 • Processor: 53% / 60%, Heap avg.: 1180/1200 MB • AM instances top: 120/119, Activations: 0 Test G OC3 – 2 Cloud Nodes, Cluster. AM Pool: 500. Status: OK
  • 17. 17Request Time/Garbage Collection Time 0 500 1000 1500 2000 2500 3000 3500 4000 4500 C D E F G Avg. request time Avg. garbage collection time
  • 19. 19DB Connections Peak/AM Instances 0 50 100 150 200 250 300 350 400 C D E F G DB Connections peak AM Instances
  • 22. 22 • Use ADF sample as baseline • Select key use cases from your system for performance test • Start with minimum JCS Compute Shape • Grow performance test to expected number of threads gradually • Scale up single Cloud Node and increase heap, if need to support more threads • Setup cluster with X Cloud Nodes, when increasing single Cloud Node heap is not enough Methodology How to select JCS Compute Shape
  • 28. 28JCS – Load Balancer
  • 30. 30 THANKS FOR WATCHING See You Next Time @RedSamurai @RedSamurai @RedSamurai

Notas del editor

  1. What Oracle bring to the toolkit
  2. What Oracle bring to the toolkit
  3. What Oracle bring to the toolkit
  4. What Oracle bring to the toolkit
  5. What Oracle bring to the toolkit
  6. What Oracle bring to the toolkit
  7. What Oracle bring to the toolkit
  8. What Oracle bring to the toolkit
  9. What Oracle bring to the toolkit
  10. What Oracle bring to the toolkit
  11. What Oracle bring to the toolkit
  12. What Oracle bring to the toolkit
  13. What Oracle bring to the toolkit
  14. What Oracle bring to the toolkit
  15. What Oracle bring to the toolkit
  16. What Oracle bring to the toolkit
  17. What Oracle bring to the toolkit
  18. What Oracle bring to the toolkit
  19. What Oracle bring to the toolkit
  20. What Oracle bring to the toolkit
  21. What Oracle bring to the toolkit
  22. What Oracle bring to the toolkit
  23. What Oracle bring to the toolkit
  24. What Oracle bring to the toolkit