SlideShare a Scribd company logo
Travelers 360-Degree Health
Assessment of Microservices on
the Pivotal Platform
October 7-10, 2019
Austin Convention Center
1
Unless otherwise indicated, these slides are © 2013-2019 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ 2
Introduction
Nehal Gandhi
Lead Architect
Travelers Personal Insurance
Rohit Kelapure
Principal Solutions Architect
Pivotal App Modernization
Unless otherwise indicated, these slides are © 2013-2019 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Agenda
Overview of Travelers
A 360 Degree Assessment Of
Microservices & Platform Health
Assessment Dimensions
Application Health Check
Results
SRE Practices
3
© 2019 The Travelers Indemnity Company. All rights reserved.
Travelers Insurance Overview
4
• The largest writer of commercial property insurance in the United States.
• The largest writer of workers compensation insurance in the United States.
• Top three writer of personal insurance through independent agents in the United
States, including number one in homeowners.
• Total assets of approximately $105 billion, shareholder equity of approximately $23
billion and a total revenue of $30 billion.
• A component of the Dow Jones Industrial average.
• More than 30,000 employees.
• Representatives in every U.S. state, Canada, the Republic of Ireland, the United
Kingdom and at Lloyds.
© 2019 The Travelers Indemnity Company. All rights reserved.
Key Objectives and approach
5
Architecture Assessment
– Assess alignment of the architecture with the Pivotal Platform Cloud – Native model
– Assure the application architecture and roadmap is sustainable
– Consider the validity of the application findings and recommendations
 Production Stability and Business Capability Delivery
– Gain confidence that the application will support the upcoming spike and cadence of feature
releases
– Prioritize key steps which could improve the stability, performance, and scalability of the
applications
• MaaS (Model As A Service)
• Understand Current State
• Define Objective and Key Results
• Perform Architecture
Retrospective
• Assess Microservice Design and
Pivotal Platform alignment
• Identify Risks and Mitigation
Strategies
• Review Source Code
• Assess Architecture Health
• Align Engineering Metrics with
SLO
• Review Path to Production
• 2 Weeks Onsite with
Travelers Teams
• Rohit Kelapure
• Will Voorhees
• Oleg Iavorskyi
• PI Solution Architecture
• Application Team Leads
• Cloud Engineering
Objectives Applications in Scope
Approach
Duration Pivotal Consultants Travelers Team
Unless otherwise indicated, these slides are © 2013-2019 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
PEOPLE
How is your Development
Team doing? Do they have
the right mix of skills? Are
they following the right
methodologies? What are
their process pains? Is the
velocity trending correctly?
APPLICATIONS
Are your apps Service Level
Objectives met in
Production? What are the
top performance
constraints? What are the
high priority implementation
concerns? Is the
architecture the right fit?
PLATFORM
Are the app teams able to
leverage the capabilities of
the platform as advised?
What are the pain points
with platform services? Is
the Platform misconfigured ?
A 360 Degree Assessment Of Your Applications
Unless otherwise indicated, these slides are © 2013-2019 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Balanced Team
The platform team consists of a product manager and at least two
platform engineers with a combination of infrastructure and software
engineering skills. Does the team has all the tools and workstation
infrastructure it needs for performing at a high velocity?
Architecture
Is the architecture tightly coupled? Are Microservices too fine grained?
Is the architecture adding technical debt? Is the architecture tending in
the right direction? Can it be extended easily?
Assessment Dimensions
Platform as a Product
The platform’s capabilities change in response to the needs of its users.
It is treated as a product that is inclusive of not only Pivotal Platform but
all the services and integrations that make it a viable environment for
applications to run.
Process and Path to Production
Developers are able to take full advantage of the platform via modern
and optimized tools and processes. Does Devops and CI/CD follow the
right set of processes? How is code promoted across environments?
Change Management
How does feature development work? What changes need to be made
to the architecture and code for sustainability and evolution along the
right dimensions? Top 3 things to bring the code and design in
alignment with design principles.
Monitoring and Metrics
Establishing desired service behavior, measuring how the service is
actually behaving, and correcting discrepancies. Examples: response
latency, error or unanswered query rate, peak utilization of resources.
Failure Mode Analysis
Understand the impact of failure of critical external dependencies on the
core service. Play out scenarios where there is partial or complete loss
of business functionality and plan for appropriate countermeasures.
Technical Debt
Dependency Management and Library updates within the project. Is
there a substantial bloat of libraries and third party dependencies in the
project? Where is the technical debt accumulated in the components?
Emergency Response
Are run books in place to capture the right set of logs when a failure
occurs? Does the development team follow a prescribed set of steps to
triage and debug a problem in production? Are circuit breakers and
other fallbacks in place to revert to a degraded functionality during
failure?
Performance Optimization
Are the applications starting slowly? Applications not meeting their
expected SLAs. Analysis of performance issues ranging from high
memory allocation to increased latency and high CPU. Performance test
plan evaluation.
Unless otherwise indicated, these slides are © 2013-2019 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Typical Outcomes Health Check
● Define Objectives and Key Results
● Assess Microservice design and
Pivotal Platform Alignment
● Identify Architectural Risks and
Concerns
● Assess Architecture Health and
Engineering Practice Health
● Align Engineering Metrics with
Service Level Indicators and
Objectives
● Review Path To Production & Identify
Gaps
● Develop Future Application
Architecture Roadmap
● Remediate Application Code and
Dependencies, Library anti-patterns
● Performance Baseline, Execution
Plan, Tooling & Profiling
● Assist in setting up a performance
environment and load harness with
tests
● Opportunistic enhancements like
JVM Level tuning
● Day 2 app support best practices
recommendations
● Chaos Testing
● SRE Practices
© 2019 The Travelers Indemnity Company. All rights reserved.
Discovery and Framing
10
© 2019 The Travelers Indemnity Company. All rights reserved.
Discovery and Framing
11
© 2019 The Travelers Indemnity Company. All rights reserved.
Application Health Check Results (Part 1)
12
© 2019 The Travelers Indemnity Company. All rights reserved.
Application Health Check Results (Part 2)
13
© 2019 The Travelers Indemnity Company. All rights reserved.
Achievements
14
1. Comprehensive health check across 10 dimensions of an application in 2 weeks
2. Enabled the team to perform performance profiling of code for startup, CPU and latency
3. Resolved Performance Mystery from the November outage (High CPU utilization driving auto scaling).
4. Tuned threadpool settings, Garbage Collector for optimal throughput
5. Repeatable Saturation and endurance testing of application
6. Demonstrated > app can scale under sustained load keeping response times under SLO
7. Reduced classpath bloat and improved startup times with spring boot startup bench
8. Architecture/Code review resulted in significant findings that will setup the team for success
9. Cross collaboration across ICs and Dev teams to create ICU and dedicated RabbitMQ plans
10. Pairing on removing exceptions and errors reduced startup time
11. Outlined critical must fix items from platform and app perspective for application
12. Mob programming on performance analysis experiments led to a shared and deep understanding of the multi-threaded code and
performance profiling patterns
13. Increased understanding of platform capabilities including Pivotal Platform Metrics and autoscaling policies
14. Pruned pom.xml to reduce classpath bloat
15. Analyzed Spring Cloud Stream upgrade and implementation for Cloudstream POC
Unless otherwise indicated, these slides are © 2013-2019 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Providing a Level of Service to Users
● What are SLIs and SLOs?
● Service Level Indicator (SLI) is a metric
○ Represents a specific user workflow
○ Common examples: request latency,
error rate, throughput
● Service Level Objective (SLO) is a
threshold
○ Threshold below which user needs
are not being met for that workflow
■ This leads to unhappy users
○ For each SLI, we might establish a
SLO
Unless otherwise indicated, these slides are © 2013-2019 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Platform Metrics Health & KPIs User Metrics
Product
Inception Feature Design Release
Production
Usage
Release Viability
Design
Measure
Previous releases define a baseline
with which to establish appropriate
success/failure thresholds
Design feature
success
indicators
Initial KPIs
based on
risks
Explore user
interactions
• Combine Health and User metrics to define success criteria for a release, and use that success criteria to
determine if the release is moving your product in the desired direction.
• Some metrics can be measured instantaneously at release time, while others may need a longer period of active
use to validate user behavior has been effectively changed by a release.
• When you deploy a release onto the platform, you get Application events like starting, stopping, and crashing,
Container resource utilization like CPU and memory, Application health monitoring based on a listening port or an
HTTP response code
Unless otherwise indicated, these slides are © 2013-2019 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Application Metrics Dashboard
Unless otherwise indicated, these slides are © 2013-2019 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Balancing Reliability and Features
SLI ≤ SLOz Release New Features
Focus on Reliability
Yes
No
Unless otherwise indicated, these slides are © 2013-2019 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Site Reliability Engineering - Why are we doing this?
● Reliability is a product
feature
● Users expect product to
have features and they
expect those features to
work (nearly) all the time
● Inherent tension between
having a reliable system
and creating & deploying
new features.
● New features = less
reliability (Google says
70% of their outages
caused by deploying
changes)
● Users continually expect
new features (and security
patches)
Unless otherwise indicated, these slides are © 2013-2019 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Controlled Experiments – Chaos / Load
A scientific procedure to test a hypothesis
1. Understand steady-state behavior first. (Look at four golden
signals!)
2. Form a hypothesis about what happens to the steady-state
behavior when exposed to an event. Pro-tip: identify a control
group as well!
3. Introduce Chaos/Load in the experimental group
4. Test the hypothesis: compare the control group to the
experimental group
Unless otherwise indicated, these slides are © 2013-2019 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/
Simulating Failure - Use Caution
Minimize Blast Radius: Try not to blow up everything
● Avoid undue harm
● Time-box your activities
● Scope to skirt total IaaS domain failure
Embrace Risk:
● Explore component interactions
● Increase complexity as maturity deepens
● Maximize your potential
https://cloud.rohitkelapure.com/2019/05/load-testing-tools.html
https://cloud.rohitkelapure.com/2019/07/tools-to-create-chaos.html
Thank You

More Related Content

What's hot

Enterprise Application Migration
Enterprise Application MigrationEnterprise Application Migration
Enterprise Application Migration
VMware Tanzu
 
Reimagining Customer Experiences Utilizing Pivotal Cloud Foundry
Reimagining Customer Experiences Utilizing Pivotal Cloud FoundryReimagining Customer Experiences Utilizing Pivotal Cloud Foundry
Reimagining Customer Experiences Utilizing Pivotal Cloud Foundry
VMware Tanzu
 
Pivotal Developer-Ready Infrastructure Slides
Pivotal Developer-Ready Infrastructure SlidesPivotal Developer-Ready Infrastructure Slides
Pivotal Developer-Ready Infrastructure Slides
VMware Tanzu
 
DevOps automation for Container based App Delivery
DevOps automation for Container based App DeliveryDevOps automation for Container based App Delivery
DevOps automation for Container based App Delivery
WaveMaker, Inc.
 
Leveraging Standard Buildpacks to Migrate Not-So-Standard Apps
Leveraging Standard Buildpacks to Migrate Not-So-Standard AppsLeveraging Standard Buildpacks to Migrate Not-So-Standard Apps
Leveraging Standard Buildpacks to Migrate Not-So-Standard Apps
VMware Tanzu
 
DevOps KPIs as a Service: Daimler’s Solution
DevOps KPIs as a Service: Daimler’s SolutionDevOps KPIs as a Service: Daimler’s Solution
DevOps KPIs as a Service: Daimler’s Solution
VMware Tanzu
 
Deep Dive into Pivotal Cloud Foundry 2.0
Deep Dive into Pivotal Cloud Foundry 2.0Deep Dive into Pivotal Cloud Foundry 2.0
Deep Dive into Pivotal Cloud Foundry 2.0
VMware Tanzu
 
Cloud-Native Patterns and the Benefits of MySQL as a Platform Managed Service
Cloud-Native Patterns and the Benefits of MySQL as a Platform Managed ServiceCloud-Native Patterns and the Benefits of MySQL as a Platform Managed Service
Cloud-Native Patterns and the Benefits of MySQL as a Platform Managed Service
VMware Tanzu
 
VMware Developer-Ready Transformation
VMware Developer-Ready TransformationVMware Developer-Ready Transformation
VMware Developer-Ready Transformation
VMware Tanzu
 
Unlock your VMWare Investment with Pivotal Cloud Foundry (VMworld 2014)
Unlock your VMWare Investment with Pivotal Cloud Foundry (VMworld 2014)Unlock your VMWare Investment with Pivotal Cloud Foundry (VMworld 2014)
Unlock your VMWare Investment with Pivotal Cloud Foundry (VMworld 2014)
VMware Tanzu
 
Legacy application modernization with microsoft azure
Legacy application modernization with microsoft azureLegacy application modernization with microsoft azure
Legacy application modernization with microsoft azure
OptiSol Business Solutions
 
CF Push for Beginners
CF Push for BeginnersCF Push for Beginners
CF Push for Beginners
VMware Tanzu
 
VMware Tanzu Application Service as an Integration Platform
VMware Tanzu Application Service as an Integration PlatformVMware Tanzu Application Service as an Integration Platform
VMware Tanzu Application Service as an Integration Platform
VMware Tanzu
 
Packaging and Distributing Applications for Kubernetes
Packaging and Distributing Applications for KubernetesPackaging and Distributing Applications for Kubernetes
Packaging and Distributing Applications for Kubernetes
VMware Tanzu
 
John Hancock’s Journey from Service-Oriented to Microservices Architecture on...
John Hancock’s Journey from Service-Oriented to Microservices Architecture on...John Hancock’s Journey from Service-Oriented to Microservices Architecture on...
John Hancock’s Journey from Service-Oriented to Microservices Architecture on...
VMware Tanzu
 
Concourse, Spinnaker, Cloud Foundry, Oh My! Creating Sophisticated Deployment...
Concourse, Spinnaker, Cloud Foundry, Oh My! Creating Sophisticated Deployment...Concourse, Spinnaker, Cloud Foundry, Oh My! Creating Sophisticated Deployment...
Concourse, Spinnaker, Cloud Foundry, Oh My! Creating Sophisticated Deployment...
VMware Tanzu
 
James Watters Kafka Summit NYC 2019 Keynote
James Watters Kafka Summit NYC 2019 KeynoteJames Watters Kafka Summit NYC 2019 Keynote
James Watters Kafka Summit NYC 2019 Keynote
James Watters
 
“Sh*^%# on Fire, Yo!”: A True Story Inspired by Real Events
“Sh*^%# on Fire, Yo!”: A True Story Inspired by Real Events“Sh*^%# on Fire, Yo!”: A True Story Inspired by Real Events
“Sh*^%# on Fire, Yo!”: A True Story Inspired by Real Events
VMware Tanzu
 
Why Microservice
Why Microservice Why Microservice
Why Microservice
Kelvin Yeung
 
Cross-Platform Observability for Cloud Foundry
Cross-Platform Observability for Cloud FoundryCross-Platform Observability for Cloud Foundry
Cross-Platform Observability for Cloud Foundry
VMware Tanzu
 

What's hot (20)

Enterprise Application Migration
Enterprise Application MigrationEnterprise Application Migration
Enterprise Application Migration
 
Reimagining Customer Experiences Utilizing Pivotal Cloud Foundry
Reimagining Customer Experiences Utilizing Pivotal Cloud FoundryReimagining Customer Experiences Utilizing Pivotal Cloud Foundry
Reimagining Customer Experiences Utilizing Pivotal Cloud Foundry
 
Pivotal Developer-Ready Infrastructure Slides
Pivotal Developer-Ready Infrastructure SlidesPivotal Developer-Ready Infrastructure Slides
Pivotal Developer-Ready Infrastructure Slides
 
DevOps automation for Container based App Delivery
DevOps automation for Container based App DeliveryDevOps automation for Container based App Delivery
DevOps automation for Container based App Delivery
 
Leveraging Standard Buildpacks to Migrate Not-So-Standard Apps
Leveraging Standard Buildpacks to Migrate Not-So-Standard AppsLeveraging Standard Buildpacks to Migrate Not-So-Standard Apps
Leveraging Standard Buildpacks to Migrate Not-So-Standard Apps
 
DevOps KPIs as a Service: Daimler’s Solution
DevOps KPIs as a Service: Daimler’s SolutionDevOps KPIs as a Service: Daimler’s Solution
DevOps KPIs as a Service: Daimler’s Solution
 
Deep Dive into Pivotal Cloud Foundry 2.0
Deep Dive into Pivotal Cloud Foundry 2.0Deep Dive into Pivotal Cloud Foundry 2.0
Deep Dive into Pivotal Cloud Foundry 2.0
 
Cloud-Native Patterns and the Benefits of MySQL as a Platform Managed Service
Cloud-Native Patterns and the Benefits of MySQL as a Platform Managed ServiceCloud-Native Patterns and the Benefits of MySQL as a Platform Managed Service
Cloud-Native Patterns and the Benefits of MySQL as a Platform Managed Service
 
VMware Developer-Ready Transformation
VMware Developer-Ready TransformationVMware Developer-Ready Transformation
VMware Developer-Ready Transformation
 
Unlock your VMWare Investment with Pivotal Cloud Foundry (VMworld 2014)
Unlock your VMWare Investment with Pivotal Cloud Foundry (VMworld 2014)Unlock your VMWare Investment with Pivotal Cloud Foundry (VMworld 2014)
Unlock your VMWare Investment with Pivotal Cloud Foundry (VMworld 2014)
 
Legacy application modernization with microsoft azure
Legacy application modernization with microsoft azureLegacy application modernization with microsoft azure
Legacy application modernization with microsoft azure
 
CF Push for Beginners
CF Push for BeginnersCF Push for Beginners
CF Push for Beginners
 
VMware Tanzu Application Service as an Integration Platform
VMware Tanzu Application Service as an Integration PlatformVMware Tanzu Application Service as an Integration Platform
VMware Tanzu Application Service as an Integration Platform
 
Packaging and Distributing Applications for Kubernetes
Packaging and Distributing Applications for KubernetesPackaging and Distributing Applications for Kubernetes
Packaging and Distributing Applications for Kubernetes
 
John Hancock’s Journey from Service-Oriented to Microservices Architecture on...
John Hancock’s Journey from Service-Oriented to Microservices Architecture on...John Hancock’s Journey from Service-Oriented to Microservices Architecture on...
John Hancock’s Journey from Service-Oriented to Microservices Architecture on...
 
Concourse, Spinnaker, Cloud Foundry, Oh My! Creating Sophisticated Deployment...
Concourse, Spinnaker, Cloud Foundry, Oh My! Creating Sophisticated Deployment...Concourse, Spinnaker, Cloud Foundry, Oh My! Creating Sophisticated Deployment...
Concourse, Spinnaker, Cloud Foundry, Oh My! Creating Sophisticated Deployment...
 
James Watters Kafka Summit NYC 2019 Keynote
James Watters Kafka Summit NYC 2019 KeynoteJames Watters Kafka Summit NYC 2019 Keynote
James Watters Kafka Summit NYC 2019 Keynote
 
“Sh*^%# on Fire, Yo!”: A True Story Inspired by Real Events
“Sh*^%# on Fire, Yo!”: A True Story Inspired by Real Events“Sh*^%# on Fire, Yo!”: A True Story Inspired by Real Events
“Sh*^%# on Fire, Yo!”: A True Story Inspired by Real Events
 
Why Microservice
Why Microservice Why Microservice
Why Microservice
 
Cross-Platform Observability for Cloud Foundry
Cross-Platform Observability for Cloud FoundryCross-Platform Observability for Cloud Foundry
Cross-Platform Observability for Cloud Foundry
 

Similar to Travelers 360 degree health assessment of microservices on the pivotal platform

Platform Health Assessment at Department of Homeland Security Citizenship and...
Platform Health Assessment at Department of Homeland Security Citizenship and...Platform Health Assessment at Department of Homeland Security Citizenship and...
Platform Health Assessment at Department of Homeland Security Citizenship and...
VMware Tanzu
 
Enterprise Agile at Lockheed Martin - 4th February 2014
Enterprise Agile at Lockheed Martin - 4th February 2014Enterprise Agile at Lockheed Martin - 4th February 2014
Enterprise Agile at Lockheed Martin - 4th February 2014
Association for Project Management
 
The Ultimate Guide to Performance Testing in Low-Code, No-Code Environments.pdf
The Ultimate Guide to Performance Testing in Low-Code, No-Code Environments.pdfThe Ultimate Guide to Performance Testing in Low-Code, No-Code Environments.pdf
The Ultimate Guide to Performance Testing in Low-Code, No-Code Environments.pdf
kalichargn70th171
 
The Ultimate Guide to Performance Testing in Low-Code, No-Code Environments (...
The Ultimate Guide to Performance Testing in Low-Code, No-Code Environments (...The Ultimate Guide to Performance Testing in Low-Code, No-Code Environments (...
The Ultimate Guide to Performance Testing in Low-Code, No-Code Environments (...
kalichargn70th171
 
Sdlc phases
Sdlc phasesSdlc phases
Sdlc phases
Janu Jahnavi
 
Sdlc phases
Sdlc phasesSdlc phases
Sdlc phases
Janu Jahnavi
 
Venkat Gunda - ITIL SO & ISTQB
Venkat Gunda - ITIL SO & ISTQBVenkat Gunda - ITIL SO & ISTQB
Venkat Gunda - ITIL SO & ISTQB
Venkata Gunda
 
IBM MobileFirst DevOps IEG DC Event
IBM MobileFirst DevOps IEG DC EventIBM MobileFirst DevOps IEG DC Event
IBM MobileFirst DevOps IEG DC Event
Roger Snook
 
Ibmmobilefirstdevopsdc 140311164526-phpapp02
Ibmmobilefirstdevopsdc 140311164526-phpapp02Ibmmobilefirstdevopsdc 140311164526-phpapp02
Ibmmobilefirstdevopsdc 140311164526-phpapp02
Shetal Patel
 
Top 8 Trends in Performance Engineering
Top 8 Trends in Performance EngineeringTop 8 Trends in Performance Engineering
Top 8 Trends in Performance Engineering
Convetit
 
Tufts Health: Creating a World Class Future User Experience Platform
Tufts Health: Creating a World Class Future User Experience PlatformTufts Health: Creating a World Class Future User Experience Platform
Tufts Health: Creating a World Class Future User Experience Platform
Prolifics
 
How Long Does App Development Take
How Long Does App Development TakeHow Long Does App Development Take
How Long Does App Development Take
Baek Yongsun
 
IT Consultant
IT ConsultantIT Consultant
IT Consultant
M Wahab
 
Haritha Resume
Haritha ResumeHaritha Resume
Haritha Resume
satya haritha
 
AyyappaKumar_AutomationTesting
AyyappaKumar_AutomationTestingAyyappaKumar_AutomationTesting
AyyappaKumar_AutomationTesting
Ayyappa Kumar
 
Complementing Agile SDLC with Agile Architecture
Complementing Agile SDLC with Agile ArchitectureComplementing Agile SDLC with Agile Architecture
Complementing Agile SDLC with Agile Architecture
Enterprise Architecture Professional Journal
 
Are Function Points Still Relevant?
Are Function Points Still Relevant?Are Function Points Still Relevant?
Are Function Points Still Relevant?
Premios Group
 
Are Function Points Still Relevant?
Are Function Points Still Relevant?Are Function Points Still Relevant?
Are Function Points Still Relevant?
DCG Software Value
 
Ravi_Nelluri_QA
Ravi_Nelluri_QARavi_Nelluri_QA
Ravi_Nelluri_QA
nelluriravi
 
Neev Load Testing Services
Neev Load Testing ServicesNeev Load Testing Services
Neev Load Testing Services
Neev Technologies
 

Similar to Travelers 360 degree health assessment of microservices on the pivotal platform (20)

Platform Health Assessment at Department of Homeland Security Citizenship and...
Platform Health Assessment at Department of Homeland Security Citizenship and...Platform Health Assessment at Department of Homeland Security Citizenship and...
Platform Health Assessment at Department of Homeland Security Citizenship and...
 
Enterprise Agile at Lockheed Martin - 4th February 2014
Enterprise Agile at Lockheed Martin - 4th February 2014Enterprise Agile at Lockheed Martin - 4th February 2014
Enterprise Agile at Lockheed Martin - 4th February 2014
 
The Ultimate Guide to Performance Testing in Low-Code, No-Code Environments.pdf
The Ultimate Guide to Performance Testing in Low-Code, No-Code Environments.pdfThe Ultimate Guide to Performance Testing in Low-Code, No-Code Environments.pdf
The Ultimate Guide to Performance Testing in Low-Code, No-Code Environments.pdf
 
The Ultimate Guide to Performance Testing in Low-Code, No-Code Environments (...
The Ultimate Guide to Performance Testing in Low-Code, No-Code Environments (...The Ultimate Guide to Performance Testing in Low-Code, No-Code Environments (...
The Ultimate Guide to Performance Testing in Low-Code, No-Code Environments (...
 
Sdlc phases
Sdlc phasesSdlc phases
Sdlc phases
 
Sdlc phases
Sdlc phasesSdlc phases
Sdlc phases
 
Venkat Gunda - ITIL SO & ISTQB
Venkat Gunda - ITIL SO & ISTQBVenkat Gunda - ITIL SO & ISTQB
Venkat Gunda - ITIL SO & ISTQB
 
IBM MobileFirst DevOps IEG DC Event
IBM MobileFirst DevOps IEG DC EventIBM MobileFirst DevOps IEG DC Event
IBM MobileFirst DevOps IEG DC Event
 
Ibmmobilefirstdevopsdc 140311164526-phpapp02
Ibmmobilefirstdevopsdc 140311164526-phpapp02Ibmmobilefirstdevopsdc 140311164526-phpapp02
Ibmmobilefirstdevopsdc 140311164526-phpapp02
 
Top 8 Trends in Performance Engineering
Top 8 Trends in Performance EngineeringTop 8 Trends in Performance Engineering
Top 8 Trends in Performance Engineering
 
Tufts Health: Creating a World Class Future User Experience Platform
Tufts Health: Creating a World Class Future User Experience PlatformTufts Health: Creating a World Class Future User Experience Platform
Tufts Health: Creating a World Class Future User Experience Platform
 
How Long Does App Development Take
How Long Does App Development TakeHow Long Does App Development Take
How Long Does App Development Take
 
IT Consultant
IT ConsultantIT Consultant
IT Consultant
 
Haritha Resume
Haritha ResumeHaritha Resume
Haritha Resume
 
AyyappaKumar_AutomationTesting
AyyappaKumar_AutomationTestingAyyappaKumar_AutomationTesting
AyyappaKumar_AutomationTesting
 
Complementing Agile SDLC with Agile Architecture
Complementing Agile SDLC with Agile ArchitectureComplementing Agile SDLC with Agile Architecture
Complementing Agile SDLC with Agile Architecture
 
Are Function Points Still Relevant?
Are Function Points Still Relevant?Are Function Points Still Relevant?
Are Function Points Still Relevant?
 
Are Function Points Still Relevant?
Are Function Points Still Relevant?Are Function Points Still Relevant?
Are Function Points Still Relevant?
 
Ravi_Nelluri_QA
Ravi_Nelluri_QARavi_Nelluri_QA
Ravi_Nelluri_QA
 
Neev Load Testing Services
Neev Load Testing ServicesNeev Load Testing Services
Neev Load Testing Services
 

More from Rohit Kelapure

Migrate Heroku & OpenShift Applications to IBM BlueMix
Migrate Heroku & OpenShift Applications to IBM BlueMixMigrate Heroku & OpenShift Applications to IBM BlueMix
Migrate Heroku & OpenShift Applications to IBM BlueMix
Rohit Kelapure
 
Liberty Buildpack: Designed for Extension - Integrating your services in Blue...
Liberty Buildpack: Designed for Extension - Integrating your services in Blue...Liberty Buildpack: Designed for Extension - Integrating your services in Blue...
Liberty Buildpack: Designed for Extension - Integrating your services in Blue...
Rohit Kelapure
 
A Deep Dive into the Liberty Buildpack on IBM BlueMix
A Deep Dive into the Liberty Buildpack on IBM BlueMix A Deep Dive into the Liberty Buildpack on IBM BlueMix
A Deep Dive into the Liberty Buildpack on IBM BlueMix
Rohit Kelapure
 
Liberty dynacache ffw_iea_ste
Liberty dynacache ffw_iea_steLiberty dynacache ffw_iea_ste
Liberty dynacache ffw_iea_ste
Rohit Kelapure
 
1812 icap-v1.3 0430
1812 icap-v1.3 04301812 icap-v1.3 0430
1812 icap-v1.3 0430
Rohit Kelapure
 
Dynacache in WebSphere Portal Server
Dynacache in WebSphere Portal ServerDynacache in WebSphere Portal Server
Dynacache in WebSphere Portal Server
Rohit Kelapure
 
Classloader leak detection in websphere application server
Classloader leak detection in websphere application serverClassloader leak detection in websphere application server
Classloader leak detection in websphere application server
Rohit Kelapure
 
2012 04-09-v2-tdp-1167-cdi-bestpractices-final
2012 04-09-v2-tdp-1167-cdi-bestpractices-final2012 04-09-v2-tdp-1167-cdi-bestpractices-final
2012 04-09-v2-tdp-1167-cdi-bestpractices-final
Rohit Kelapure
 
2012 04-06-v2-tdp-1163-java e-evsspringshootout-final
2012 04-06-v2-tdp-1163-java e-evsspringshootout-final2012 04-06-v2-tdp-1163-java e-evsspringshootout-final
2012 04-06-v2-tdp-1163-java e-evsspringshootout-final
Rohit Kelapure
 
2012 04-09-v2-tdp-1167-cdi-bestpractices-final
2012 04-09-v2-tdp-1167-cdi-bestpractices-final2012 04-09-v2-tdp-1167-cdi-bestpractices-final
2012 04-09-v2-tdp-1167-cdi-bestpractices-final
Rohit Kelapure
 
Web sphere application server performance tuning workshop
Web sphere application server performance tuning workshopWeb sphere application server performance tuning workshop
Web sphere application server performance tuning workshop
Rohit Kelapure
 
Performance tuningtoolkitintroduction
Performance tuningtoolkitintroductionPerformance tuningtoolkitintroduction
Performance tuningtoolkitintroduction
Rohit Kelapure
 
IBM Health Center Details
IBM Health Center DetailsIBM Health Center Details
IBM Health Center Details
Rohit Kelapure
 
Java EE vs Spring Framework
Java  EE vs Spring Framework Java  EE vs Spring Framework
Java EE vs Spring Framework
Rohit Kelapure
 
Debugging java deployments_2
Debugging java deployments_2Debugging java deployments_2
Debugging java deployments_2
Rohit Kelapure
 
Caching technology comparison
Caching technology comparisonCaching technology comparison
Caching technology comparison
Rohit Kelapure
 
SIBus Tuning for production WebSphere Application Server
SIBus Tuning for production WebSphere Application Server SIBus Tuning for production WebSphere Application Server
SIBus Tuning for production WebSphere Application Server
Rohit Kelapure
 
First Failure Data Capture for your enterprise application with WebSphere App...
First Failure Data Capture for your enterprise application with WebSphere App...First Failure Data Capture for your enterprise application with WebSphere App...
First Failure Data Capture for your enterprise application with WebSphere App...
Rohit Kelapure
 
Caching technology comparison
Caching technology comparisonCaching technology comparison
Caching technology comparison
Rohit Kelapure
 
Caching technology comparison
Caching technology comparisonCaching technology comparison
Caching technology comparison
Rohit Kelapure
 

More from Rohit Kelapure (20)

Migrate Heroku & OpenShift Applications to IBM BlueMix
Migrate Heroku & OpenShift Applications to IBM BlueMixMigrate Heroku & OpenShift Applications to IBM BlueMix
Migrate Heroku & OpenShift Applications to IBM BlueMix
 
Liberty Buildpack: Designed for Extension - Integrating your services in Blue...
Liberty Buildpack: Designed for Extension - Integrating your services in Blue...Liberty Buildpack: Designed for Extension - Integrating your services in Blue...
Liberty Buildpack: Designed for Extension - Integrating your services in Blue...
 
A Deep Dive into the Liberty Buildpack on IBM BlueMix
A Deep Dive into the Liberty Buildpack on IBM BlueMix A Deep Dive into the Liberty Buildpack on IBM BlueMix
A Deep Dive into the Liberty Buildpack on IBM BlueMix
 
Liberty dynacache ffw_iea_ste
Liberty dynacache ffw_iea_steLiberty dynacache ffw_iea_ste
Liberty dynacache ffw_iea_ste
 
1812 icap-v1.3 0430
1812 icap-v1.3 04301812 icap-v1.3 0430
1812 icap-v1.3 0430
 
Dynacache in WebSphere Portal Server
Dynacache in WebSphere Portal ServerDynacache in WebSphere Portal Server
Dynacache in WebSphere Portal Server
 
Classloader leak detection in websphere application server
Classloader leak detection in websphere application serverClassloader leak detection in websphere application server
Classloader leak detection in websphere application server
 
2012 04-09-v2-tdp-1167-cdi-bestpractices-final
2012 04-09-v2-tdp-1167-cdi-bestpractices-final2012 04-09-v2-tdp-1167-cdi-bestpractices-final
2012 04-09-v2-tdp-1167-cdi-bestpractices-final
 
2012 04-06-v2-tdp-1163-java e-evsspringshootout-final
2012 04-06-v2-tdp-1163-java e-evsspringshootout-final2012 04-06-v2-tdp-1163-java e-evsspringshootout-final
2012 04-06-v2-tdp-1163-java e-evsspringshootout-final
 
2012 04-09-v2-tdp-1167-cdi-bestpractices-final
2012 04-09-v2-tdp-1167-cdi-bestpractices-final2012 04-09-v2-tdp-1167-cdi-bestpractices-final
2012 04-09-v2-tdp-1167-cdi-bestpractices-final
 
Web sphere application server performance tuning workshop
Web sphere application server performance tuning workshopWeb sphere application server performance tuning workshop
Web sphere application server performance tuning workshop
 
Performance tuningtoolkitintroduction
Performance tuningtoolkitintroductionPerformance tuningtoolkitintroduction
Performance tuningtoolkitintroduction
 
IBM Health Center Details
IBM Health Center DetailsIBM Health Center Details
IBM Health Center Details
 
Java EE vs Spring Framework
Java  EE vs Spring Framework Java  EE vs Spring Framework
Java EE vs Spring Framework
 
Debugging java deployments_2
Debugging java deployments_2Debugging java deployments_2
Debugging java deployments_2
 
Caching technology comparison
Caching technology comparisonCaching technology comparison
Caching technology comparison
 
SIBus Tuning for production WebSphere Application Server
SIBus Tuning for production WebSphere Application Server SIBus Tuning for production WebSphere Application Server
SIBus Tuning for production WebSphere Application Server
 
First Failure Data Capture for your enterprise application with WebSphere App...
First Failure Data Capture for your enterprise application with WebSphere App...First Failure Data Capture for your enterprise application with WebSphere App...
First Failure Data Capture for your enterprise application with WebSphere App...
 
Caching technology comparison
Caching technology comparisonCaching technology comparison
Caching technology comparison
 
Caching technology comparison
Caching technology comparisonCaching technology comparison
Caching technology comparison
 

Recently uploaded

By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024
Pierluigi Pugliese
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems S.M.S.A.
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance
 
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
James Anderson
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
James Anderson
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
Kumud Singh
 
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
Neo4j
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
mikeeftimakis1
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Malak Abu Hammad
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
danishmna97
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
Ana-Maria Mihalceanu
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
Matthew Sinclair
 
Large Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial ApplicationsLarge Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial Applications
Rohit Gautam
 
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
Neo4j
 
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Nexer Digital
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
Aftab Hussain
 
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
名前 です男
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
SOFTTECHHUB
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
KAMESHS29
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
Matthew Sinclair
 

Recently uploaded (20)

By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024
 
Uni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdfUni Systems Copilot event_05062024_C.Vlachos.pdf
Uni Systems Copilot event_05062024_C.Vlachos.pdf
 
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdfFIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
FIDO Alliance Osaka Seminar: The WebAuthn API and Discoverable Credentials.pdf
 
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
Alt. GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using ...
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
 
Mind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AIMind map of terminologies used in context of Generative AI
Mind map of terminologies used in context of Generative AI
 
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024GraphSummit Singapore | The Art of the  Possible with Graph - Q2 2024
GraphSummit Singapore | The Art of the Possible with Graph - Q2 2024
 
Introduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - CybersecurityIntroduction to CHERI technology - Cybersecurity
Introduction to CHERI technology - Cybersecurity
 
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdfUnlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
Unlock the Future of Search with MongoDB Atlas_ Vector Search Unleashed.pdf
 
How to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptxHow to Get CNIC Information System with Paksim Ga.pptx
How to Get CNIC Information System with Paksim Ga.pptx
 
Monitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR EventsMonitoring Java Application Security with JDK Tools and JFR Events
Monitoring Java Application Security with JDK Tools and JFR Events
 
20240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 202420240609 QFM020 Irresponsible AI Reading List May 2024
20240609 QFM020 Irresponsible AI Reading List May 2024
 
Large Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial ApplicationsLarge Language Model (LLM) and it’s Geospatial Applications
Large Language Model (LLM) and it’s Geospatial Applications
 
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
GraphSummit Singapore | Neo4j Product Vision & Roadmap - Q2 2024
 
Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?Elizabeth Buie - Older adults: Are we really designing for our future selves?
Elizabeth Buie - Older adults: Are we really designing for our future selves?
 
Removing Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software FuzzingRemoving Uninteresting Bytes in Software Fuzzing
Removing Uninteresting Bytes in Software Fuzzing
 
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
みなさんこんにちはこれ何文字まで入るの?40文字以下不可とか本当に意味わからないけどこれ限界文字数書いてないからマジでやばい文字数いけるんじゃないの?えこ...
 
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
Why You Should Replace Windows 11 with Nitrux Linux 3.5.0 for enhanced perfor...
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
 
20240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 202420240607 QFM018 Elixir Reading List May 2024
20240607 QFM018 Elixir Reading List May 2024
 

Travelers 360 degree health assessment of microservices on the pivotal platform

  • 1. Travelers 360-Degree Health Assessment of Microservices on the Pivotal Platform October 7-10, 2019 Austin Convention Center 1
  • 2. Unless otherwise indicated, these slides are © 2013-2019 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ 2 Introduction Nehal Gandhi Lead Architect Travelers Personal Insurance Rohit Kelapure Principal Solutions Architect Pivotal App Modernization
  • 3. Unless otherwise indicated, these slides are © 2013-2019 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Agenda Overview of Travelers A 360 Degree Assessment Of Microservices & Platform Health Assessment Dimensions Application Health Check Results SRE Practices 3
  • 4. © 2019 The Travelers Indemnity Company. All rights reserved. Travelers Insurance Overview 4 • The largest writer of commercial property insurance in the United States. • The largest writer of workers compensation insurance in the United States. • Top three writer of personal insurance through independent agents in the United States, including number one in homeowners. • Total assets of approximately $105 billion, shareholder equity of approximately $23 billion and a total revenue of $30 billion. • A component of the Dow Jones Industrial average. • More than 30,000 employees. • Representatives in every U.S. state, Canada, the Republic of Ireland, the United Kingdom and at Lloyds.
  • 5. © 2019 The Travelers Indemnity Company. All rights reserved. Key Objectives and approach 5 Architecture Assessment – Assess alignment of the architecture with the Pivotal Platform Cloud – Native model – Assure the application architecture and roadmap is sustainable – Consider the validity of the application findings and recommendations  Production Stability and Business Capability Delivery – Gain confidence that the application will support the upcoming spike and cadence of feature releases – Prioritize key steps which could improve the stability, performance, and scalability of the applications • MaaS (Model As A Service) • Understand Current State • Define Objective and Key Results • Perform Architecture Retrospective • Assess Microservice Design and Pivotal Platform alignment • Identify Risks and Mitigation Strategies • Review Source Code • Assess Architecture Health • Align Engineering Metrics with SLO • Review Path to Production • 2 Weeks Onsite with Travelers Teams • Rohit Kelapure • Will Voorhees • Oleg Iavorskyi • PI Solution Architecture • Application Team Leads • Cloud Engineering Objectives Applications in Scope Approach Duration Pivotal Consultants Travelers Team
  • 6. Unless otherwise indicated, these slides are © 2013-2019 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ PEOPLE How is your Development Team doing? Do they have the right mix of skills? Are they following the right methodologies? What are their process pains? Is the velocity trending correctly? APPLICATIONS Are your apps Service Level Objectives met in Production? What are the top performance constraints? What are the high priority implementation concerns? Is the architecture the right fit? PLATFORM Are the app teams able to leverage the capabilities of the platform as advised? What are the pain points with platform services? Is the Platform misconfigured ? A 360 Degree Assessment Of Your Applications
  • 7. Unless otherwise indicated, these slides are © 2013-2019 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Balanced Team The platform team consists of a product manager and at least two platform engineers with a combination of infrastructure and software engineering skills. Does the team has all the tools and workstation infrastructure it needs for performing at a high velocity? Architecture Is the architecture tightly coupled? Are Microservices too fine grained? Is the architecture adding technical debt? Is the architecture tending in the right direction? Can it be extended easily? Assessment Dimensions Platform as a Product The platform’s capabilities change in response to the needs of its users. It is treated as a product that is inclusive of not only Pivotal Platform but all the services and integrations that make it a viable environment for applications to run. Process and Path to Production Developers are able to take full advantage of the platform via modern and optimized tools and processes. Does Devops and CI/CD follow the right set of processes? How is code promoted across environments? Change Management How does feature development work? What changes need to be made to the architecture and code for sustainability and evolution along the right dimensions? Top 3 things to bring the code and design in alignment with design principles. Monitoring and Metrics Establishing desired service behavior, measuring how the service is actually behaving, and correcting discrepancies. Examples: response latency, error or unanswered query rate, peak utilization of resources. Failure Mode Analysis Understand the impact of failure of critical external dependencies on the core service. Play out scenarios where there is partial or complete loss of business functionality and plan for appropriate countermeasures. Technical Debt Dependency Management and Library updates within the project. Is there a substantial bloat of libraries and third party dependencies in the project? Where is the technical debt accumulated in the components? Emergency Response Are run books in place to capture the right set of logs when a failure occurs? Does the development team follow a prescribed set of steps to triage and debug a problem in production? Are circuit breakers and other fallbacks in place to revert to a degraded functionality during failure? Performance Optimization Are the applications starting slowly? Applications not meeting their expected SLAs. Analysis of performance issues ranging from high memory allocation to increased latency and high CPU. Performance test plan evaluation.
  • 8.
  • 9. Unless otherwise indicated, these slides are © 2013-2019 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Typical Outcomes Health Check ● Define Objectives and Key Results ● Assess Microservice design and Pivotal Platform Alignment ● Identify Architectural Risks and Concerns ● Assess Architecture Health and Engineering Practice Health ● Align Engineering Metrics with Service Level Indicators and Objectives ● Review Path To Production & Identify Gaps ● Develop Future Application Architecture Roadmap ● Remediate Application Code and Dependencies, Library anti-patterns ● Performance Baseline, Execution Plan, Tooling & Profiling ● Assist in setting up a performance environment and load harness with tests ● Opportunistic enhancements like JVM Level tuning ● Day 2 app support best practices recommendations ● Chaos Testing ● SRE Practices
  • 10. © 2019 The Travelers Indemnity Company. All rights reserved. Discovery and Framing 10
  • 11. © 2019 The Travelers Indemnity Company. All rights reserved. Discovery and Framing 11
  • 12. © 2019 The Travelers Indemnity Company. All rights reserved. Application Health Check Results (Part 1) 12
  • 13. © 2019 The Travelers Indemnity Company. All rights reserved. Application Health Check Results (Part 2) 13
  • 14. © 2019 The Travelers Indemnity Company. All rights reserved. Achievements 14 1. Comprehensive health check across 10 dimensions of an application in 2 weeks 2. Enabled the team to perform performance profiling of code for startup, CPU and latency 3. Resolved Performance Mystery from the November outage (High CPU utilization driving auto scaling). 4. Tuned threadpool settings, Garbage Collector for optimal throughput 5. Repeatable Saturation and endurance testing of application 6. Demonstrated > app can scale under sustained load keeping response times under SLO 7. Reduced classpath bloat and improved startup times with spring boot startup bench 8. Architecture/Code review resulted in significant findings that will setup the team for success 9. Cross collaboration across ICs and Dev teams to create ICU and dedicated RabbitMQ plans 10. Pairing on removing exceptions and errors reduced startup time 11. Outlined critical must fix items from platform and app perspective for application 12. Mob programming on performance analysis experiments led to a shared and deep understanding of the multi-threaded code and performance profiling patterns 13. Increased understanding of platform capabilities including Pivotal Platform Metrics and autoscaling policies 14. Pruned pom.xml to reduce classpath bloat 15. Analyzed Spring Cloud Stream upgrade and implementation for Cloudstream POC
  • 15. Unless otherwise indicated, these slides are © 2013-2019 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Providing a Level of Service to Users ● What are SLIs and SLOs? ● Service Level Indicator (SLI) is a metric ○ Represents a specific user workflow ○ Common examples: request latency, error rate, throughput ● Service Level Objective (SLO) is a threshold ○ Threshold below which user needs are not being met for that workflow ■ This leads to unhappy users ○ For each SLI, we might establish a SLO
  • 16. Unless otherwise indicated, these slides are © 2013-2019 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Platform Metrics Health & KPIs User Metrics Product Inception Feature Design Release Production Usage Release Viability Design Measure Previous releases define a baseline with which to establish appropriate success/failure thresholds Design feature success indicators Initial KPIs based on risks Explore user interactions • Combine Health and User metrics to define success criteria for a release, and use that success criteria to determine if the release is moving your product in the desired direction. • Some metrics can be measured instantaneously at release time, while others may need a longer period of active use to validate user behavior has been effectively changed by a release. • When you deploy a release onto the platform, you get Application events like starting, stopping, and crashing, Container resource utilization like CPU and memory, Application health monitoring based on a listening port or an HTTP response code
  • 17. Unless otherwise indicated, these slides are © 2013-2019 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Application Metrics Dashboard
  • 18. Unless otherwise indicated, these slides are © 2013-2019 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Balancing Reliability and Features SLI ≤ SLOz Release New Features Focus on Reliability Yes No
  • 19. Unless otherwise indicated, these slides are © 2013-2019 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Site Reliability Engineering - Why are we doing this? ● Reliability is a product feature ● Users expect product to have features and they expect those features to work (nearly) all the time ● Inherent tension between having a reliable system and creating & deploying new features. ● New features = less reliability (Google says 70% of their outages caused by deploying changes) ● Users continually expect new features (and security patches)
  • 20. Unless otherwise indicated, these slides are © 2013-2019 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Controlled Experiments – Chaos / Load A scientific procedure to test a hypothesis 1. Understand steady-state behavior first. (Look at four golden signals!) 2. Form a hypothesis about what happens to the steady-state behavior when exposed to an event. Pro-tip: identify a control group as well! 3. Introduce Chaos/Load in the experimental group 4. Test the hypothesis: compare the control group to the experimental group
  • 21. Unless otherwise indicated, these slides are © 2013-2019 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Simulating Failure - Use Caution Minimize Blast Radius: Try not to blow up everything ● Avoid undue harm ● Time-box your activities ● Scope to skirt total IaaS domain failure Embrace Risk: ● Explore component interactions ● Increase complexity as maturity deepens ● Maximize your potential https://cloud.rohitkelapure.com/2019/05/load-testing-tools.html https://cloud.rohitkelapure.com/2019/07/tools-to-create-chaos.html

Editor's Notes

  1. During our two weeks engagement with Pivotal, we started with Discovery and Framing phase, in this phase we 1. Created Story Backlogs prioritized by the goals & activities (that is shown on top right corner) 2. Performed Architecture Retrospective and assessed the application architecture holistically 3. Performed Fishbone Analysis to identify failure modes between microservices, queues and failure points for different applications. (that is shown on bottom right corner) 4. Performed Platform Health Check Activities which includes Reviewing of the current Rabbit MQ implementation of application and best practices, Reviewing of the Autoscaling Policies and Reviewing of Environment specific differences 5. Performed Application Source Code Review and Evaluated the upgrade impact of SpringBoot 2.0 and Java 11 and Dependencies 6. Defined Performance Plan and Isolation Segment Setup Inconsistence on response time for the apps Determine Root cause of performance drift Understand different CPU utilization across PCF instances 7. Talked about how we can leverge Pivotal Platform Metrics Dashboard for application monitoring
  2. During our two weeks engagement with Pivotal, we started with Discovery and Framing phase, in this phase we 1. Created Story Backlogs prioritized by the goals & activities (that is shown on top right corner) 2. Performed Architecture Retrospective and assessed the application architecture holistically 3. Performed Fishbone Analysis to identify failure modes between microservices, queues and failure points for different applications. (that is shown on bottom right corner) 4. Performed Platform Health Check Activities which includes Reviewing of the current Rabbit MQ implementation of application and best practices, Reviewing of the Autoscaling Policies and Reviewing of Environment specific differences 5. Performed Application Source Code Review and Evaluated the upgrade impact of SpringBoot 2.0 and Java 11 and Dependencies 6. Defined Performance Plan and Isolation Segment Setup Inconsistence on response time for the apps Determine Root cause of performance drift Understand different CPU utilization across PCF instances 7. Talked about how we can leverge Pivotal Platform Metrics Dashboard for application monitoring
  3. A 360 degree health assessment of our application reveals many interesting observations about our applications and platform, identify several key risks and received applicable recommendations from Pivotal Solution Architects. Instead of going over each of the Application Health Check dimension, I will try to focus on few dimensions in the interest of the time. First I would like to talk about Failure Mode Analysis dimension. In this dimension, we performed a failure mode testing where we were able to reproduce the issue we were facing in production due to thread pool exhaustion caused by resource contention leading to HIGH CPU. The risk identified for this dimension is that we would have to perform chaos testing with high load to reach break point, app cannot tolerate loss of RMQ and run in degrade mode for extended period of time. Latency autoscaling in PCF does not work for this application. The recommendation from Pivotal was to ● Tune size of the ForkJoin Threadpool = 10 ● Forkjoin Queue max depth = 10 ● HTTP Threadpool size = 100 ● Configure autoscaling to be CPU based [80, 160] with min, max instances set to [1,10] ● CallerRunsPolicy for ForkJoin pool Next dimension, I would like to talk about Technical Debt & Code Hygiene dimension. In this dimension, we discovered that application has a bloated classpath. Microservices are as big ~ 250MB and embed 5 app servers (netty, jetty, jersey, spark server & tomcat) The risk was that if time and resources are not spent in reducing the number and scope of dependencies then the apps will take longer to start and eventually auto-scaling will not work. Need to speed up inner loop of development. The recommendation was to ● Eliminate Shared Service Library ● Eliminate and prune external dependencies ● Migrate to Spring Boot 2.x and Java 8u11 ● Apps should be run and profiled in local sandbox with all service dependencies ● Set a threshold on size of app jars in CI pipeline to stop third party library proliferation Monitoring and Metrics Establishing desired service behavior, measuring how the service is actually behaving, and correcting discrepancies. Assessment of Monitoring & Metrics reveals that we were using too many tools to monitor our applications and it was causing confusion in identifying the root cause of the issue. Recommendations was to reduce the number of monitoring tools and use PCF metrics along with Dynatrace or similar Application Performance Monitoring tool for root cause analysis. Failure Mode Analysis Understand the impact of failure of critical external dependencies on the core service. Play out scenarios where there is partial or complete loss of business functionality and plan for appropriate countermeasures. Assessment of Failure Mode Analysis reveals that we should perform chaos testing with high load to identify the failure impact such as application can’t tolerate loss of Rabbit MQ …. Technical Debt Dependency Management and Library updates within the project. Is there a substantial bloat of libraries and third party dependencies in the project? Where is the technical debt accumulated in the components? Assessment of Technical Debt reveals that application has been bloated due to inclusion of the various dependencies jars which are not being lev… Emergency Response Are run books in place to capture the right set of logs when a failure occurs? Does the development team follow a prescribed set of steps to triage and debug a problem in production? Are circuit breakers and other fallbacks in place to revert to a degraded functionality during failure? Assessment of Technical Debt reveals that we would need to have an automated when of collecting the CPU thread and heat dumps when CPU is experiencing high utilization. Performance Optimization Are the applications starting slowly? Applications not meeting their expected SLAs. Analysis of performance issues ranging from high memory allocation to increased latency and high CPU. Performance test plan evaluation. Assessment of Performance Optimization reveals that application was CPU constrained due to unmanaged threads. Proper Optimization of the size of the thread pools are necessary to drive the performance along with use of correct garbage collector. Local profiling of the application is very important to understand the thread utilization which can be achieved by using Visual VM and Jmeter tools.
  4. Next dimension, I would like to focus is about Architecture dimension. This dimension reveals that our Microservices are at the right level of granularity; however there is tight coupling and unnecessary big data dependencies present in code. The risk that is identified that there is considerable sharing of service libraries between microservices leading to tight coupling. Shared service library is a monolith that is dragged into each service. Big data dependencies are leading to monoliths. Standalone mode execution jar should run locally, on Spark and Cloud Foundry The recommendation was to ● Eliminate the core service library sharing between microservices ● Decouple model execution in app from Hadoop and Spark to decompose dark mode functionality ● Reduce exceptions and errors at startup. Reduce startup < 30s ● Use BOSH DNS to remove SCS overhead Architecture Is the architecture tightly coupled? Are Microservices too fine grained? Is the architecture adding technical debt? Is the architecture tending in the right direction? Can it be extended easily? Assessment of Architecture, uncovers our implementation of Micro Services were at the right level, however there was tight coupling between them due to sharing of the core framework library which made our application big due to incorporation of unnecessary dependency components …. Change Management How does feature development work? What changes need to be made to the architecture and code for sustainability and evolution along the right dimensions? Top 3 things to bring the code and design in alignment with design principles Assessment of Change Management, Platform as a Product The platform’s capabilities change in response to the needs of its users. It is treated as a product that is inclusive of not only Pivotal Platform but all the services and integrations that make it a viable environment for applications to run. Assessment of Platform as Product, reveals that Balanced Team The platform team consists of a product manager and at least two platform engineers with a combination of infrastructure and software engineering skills. Does the team has all the tools and workstation infrastructure it needs for performing at a high velocity? Process and Path to Production Developers are able to take full advantage of the platform via modern and optimized tools and processes. Does Devops and CI/CD follow the right set of processes? How is code promoted across environments?
  5. We made a great progress in achieving the objectives that we set at the beginning of two weeks engagements. I would like highlights some of the achievements that we accomplished from 360 Degree Health Assessment: (2) Our team has started doing local profiling of the application from startup, CPU and latency perspective before deploying to cloud for performance testing using Visual VM and Jmeter tool (3 and 4) We resolved the performance mystery from the Production outage by implementing manage thread strategy and right sizing our Threadpool settings (5) Got consistent result of our performance testing by running in isolation segment setup (6) Demonstrated > app can scale under sustained load keeping response times under SLO (7) Reduced the overall application size and improved the startup time by 50% by reducing the classpath bloating, removing unnecessary exceptions and errors, pruning pom.xml.
  6. Understanding what users want of your service helps to inform SLIs Be careful not to select too many so as not to be able to focus on what users really care about
  7. The cost of increasing reliability is two-fold: Cost of extra hardware, software, licenses (for redundancy) Opportunity cost of not working on new features
  8. Benefits