SlideShare ist ein Scribd-Unternehmen logo
1 von 29
Peaceful Distributed Microservice Architecture
Hello!
Vanjikumaran Sivajothy
Committer and PMC - Apache Synapse
Senior Lead Solution Engineer - WSO2
Vanjikumaran
Monolithic
3
4
Overview of Monolithic Applications
5
Monolithic Application (continued)
1 Regardless of logical
modular, application is
packaged as a single
monolith.
2 Packaging depends on the
language … .war, .jar or
directory structure
3 Simple to test and deploy
4 If simple, what is the issue?
Simple and easy only at the
beginning
Many Pain Points!!!!
● Increasingly difficult to make code changes
● Disrupts agile development
● Overtime, no single developer will understand the entire code. Changes will be
error prone
● CI/CD would become painful
● Scaling would be difficult
● An issue in one component could potentially bring down the entire application
● Stuck with a single language
Problems with Monolithic applications.
6
Microservices
7
8
Overview of Microservices
9
Microservices Architecture pattern
1 An application written as
small interconnected
services, each implementing
distinct functionality
2 Self contained, maintains its
own datastores
3 Each service may expose a
REST API and most services
use other services
4 Services may also use other
Inter-process-
communication methods to
interact, such as queue etc.
Advantages with MSA
10
Faster
development
Focused
development
Easy Deployment
Cloud Native
Scalable
Less Downtime
Many Pain Points!!!!
● What the size limit of microservice?
● Inherent complexity of distribution of systems Handling transactions (partial
failures)
● Multiple databases
● Need for advanced technology (service mesh, service discovery, circuit breaker,
containers, orchestration etc)
Drawback of Microservices Architecture
11
MTTR vs MTTD
12
MTTR - Mean time to Recover?
13
How a Amature vs Pro Diagnose issues?
14
https://picture-funny.blogspot.com/2006/09/mechanical-genius.html
master diagnostic technician Kurt Juergens, of Foxborough
Optimize MTTD - Mean Time to Detect
Observability vs Surveillance
15
Observability
16
Monitoring
Log
aggregation
Alerting People
Tracing
Visualization
Monitoring
17
Monitoring
18
Monitoring
19
Tracing
20
Log aggregation
21
Visualization
22
Visualization
23
Alerting
24
Surveillance
25
26
Surveillance
● Targeted Surveillance
● Predefined Rules
Image by StockSnap from Pixabay
27
Surveillance
Image by StockSnap from Pixabay
Conclusion
28
Question Time!

Weitere ähnliche Inhalte

Ähnlich wie Peaceful Distributed Microservice Architecture

Pywaw summit 2015 - Monolithic app to micro services transition is easy...
Pywaw summit 2015 - Monolithic app to micro services transition is easy...Pywaw summit 2015 - Monolithic app to micro services transition is easy...
Pywaw summit 2015 - Monolithic app to micro services transition is easy...Tomasz Choduń
 
CI/CD for Microservices Best Practices
CI/CD for Microservices Best PracticesCI/CD for Microservices Best Practices
CI/CD for Microservices Best PracticesDevOps.com
 
Grade 8: Introduction To Java
Grade 8: Introduction To JavaGrade 8: Introduction To Java
Grade 8: Introduction To Javanandanrocker
 
Building Microservices with Reactive Architecture - Himani Arora
Building Microservices with Reactive Architecture - Himani AroraBuilding Microservices with Reactive Architecture - Himani Arora
Building Microservices with Reactive Architecture - Himani AroraKnoldus Inc.
 
CICD Pipelines for Microservices: Lessons from the Trenches
CICD Pipelines for Microservices: Lessons from the TrenchesCICD Pipelines for Microservices: Lessons from the Trenches
CICD Pipelines for Microservices: Lessons from the TrenchesCodefresh
 
Top 10 programming languages
Top 10 programming languagesTop 10 programming languages
Top 10 programming languagesAman Kumar
 
Best Practices for Microservice CI/CD: Lessons from Expedia and Codefresh
Best Practices for Microservice CI/CD: Lessons from Expedia and CodefreshBest Practices for Microservice CI/CD: Lessons from Expedia and Codefresh
Best Practices for Microservice CI/CD: Lessons from Expedia and CodefreshCodefresh
 
Microservice Workshop Hands On
Microservice Workshop Hands On Microservice Workshop Hands On
Microservice Workshop Hands On Ram G Suri
 
Microservice pitfalls
Microservice pitfalls Microservice pitfalls
Microservice pitfalls Mite Mitreski
 
CICD Pipelines for Microservices Best Practices
CICD Pipelines for Microservices Best Practices CICD Pipelines for Microservices Best Practices
CICD Pipelines for Microservices Best Practices Codefresh
 
Deploying Microservices as Containers
Deploying Microservices as ContainersDeploying Microservices as Containers
Deploying Microservices as ContainersVeer Muchandi
 
Modules and Modularization.pptx
Modules and Modularization.pptxModules and Modularization.pptx
Modules and Modularization.pptxPriyankaBhatia66
 
DerbyDev_ModMonolith_290323.pptx
DerbyDev_ModMonolith_290323.pptxDerbyDev_ModMonolith_290323.pptx
DerbyDev_ModMonolith_290323.pptxAaronWhite801549
 
10 clues showing that you are doing OSGi in the wrong manner - Jerome Moliere
10 clues showing that you are doing OSGi in the wrong manner - Jerome Moliere10 clues showing that you are doing OSGi in the wrong manner - Jerome Moliere
10 clues showing that you are doing OSGi in the wrong manner - Jerome Molieremfrancis
 
Mobile app-and-microservices-with-ibm-cloud
Mobile app-and-microservices-with-ibm-cloudMobile app-and-microservices-with-ibm-cloud
Mobile app-and-microservices-with-ibm-cloudSrinivasan Nanduri
 
Refactoring the monolith
Refactoring the monolithRefactoring the monolith
Refactoring the monolithSteven Hicks
 

Ähnlich wie Peaceful Distributed Microservice Architecture (20)

Pywaw summit 2015 - Monolithic app to micro services transition is easy...
Pywaw summit 2015 - Monolithic app to micro services transition is easy...Pywaw summit 2015 - Monolithic app to micro services transition is easy...
Pywaw summit 2015 - Monolithic app to micro services transition is easy...
 
CI/CD for Microservices Best Practices
CI/CD for Microservices Best PracticesCI/CD for Microservices Best Practices
CI/CD for Microservices Best Practices
 
Grade 8: Introduction To Java
Grade 8: Introduction To JavaGrade 8: Introduction To Java
Grade 8: Introduction To Java
 
Breaking the monolith
Breaking the monolithBreaking the monolith
Breaking the monolith
 
Building Microservices with Reactive Architecture - Himani Arora
Building Microservices with Reactive Architecture - Himani AroraBuilding Microservices with Reactive Architecture - Himani Arora
Building Microservices with Reactive Architecture - Himani Arora
 
CICD Pipelines for Microservices: Lessons from the Trenches
CICD Pipelines for Microservices: Lessons from the TrenchesCICD Pipelines for Microservices: Lessons from the Trenches
CICD Pipelines for Microservices: Lessons from the Trenches
 
Top 10 programming languages
Top 10 programming languagesTop 10 programming languages
Top 10 programming languages
 
Best Practices for Microservice CI/CD: Lessons from Expedia and Codefresh
Best Practices for Microservice CI/CD: Lessons from Expedia and CodefreshBest Practices for Microservice CI/CD: Lessons from Expedia and Codefresh
Best Practices for Microservice CI/CD: Lessons from Expedia and Codefresh
 
Microservice Workshop Hands On
Microservice Workshop Hands On Microservice Workshop Hands On
Microservice Workshop Hands On
 
Microservice pitfalls
Microservice pitfalls Microservice pitfalls
Microservice pitfalls
 
CICD Pipelines for Microservices Best Practices
CICD Pipelines for Microservices Best Practices CICD Pipelines for Microservices Best Practices
CICD Pipelines for Microservices Best Practices
 
Microservice architecture
Microservice architectureMicroservice architecture
Microservice architecture
 
Deploying Microservices as Containers
Deploying Microservices as ContainersDeploying Microservices as Containers
Deploying Microservices as Containers
 
Modules and Modularization.pptx
Modules and Modularization.pptxModules and Modularization.pptx
Modules and Modularization.pptx
 
DerbyDev_ModMonolith_290323.pptx
DerbyDev_ModMonolith_290323.pptxDerbyDev_ModMonolith_290323.pptx
DerbyDev_ModMonolith_290323.pptx
 
10 clues showing that you are doing OSGi in the wrong manner - Jerome Moliere
10 clues showing that you are doing OSGi in the wrong manner - Jerome Moliere10 clues showing that you are doing OSGi in the wrong manner - Jerome Moliere
10 clues showing that you are doing OSGi in the wrong manner - Jerome Moliere
 
Monolith to microservices journey
Monolith to microservices journeyMonolith to microservices journey
Monolith to microservices journey
 
Microservices: an introduction
Microservices: an introductionMicroservices: an introduction
Microservices: an introduction
 
Mobile app-and-microservices-with-ibm-cloud
Mobile app-and-microservices-with-ibm-cloudMobile app-and-microservices-with-ibm-cloud
Mobile app-and-microservices-with-ibm-cloud
 
Refactoring the monolith
Refactoring the monolithRefactoring the monolith
Refactoring the monolith
 

Mehr von Vanjikumaran Sivajothy

Mehr von Vanjikumaran Sivajothy (10)

Demystifying API Management for Serverless Services
Demystifying  API Management  for Serverless ServicesDemystifying  API Management  for Serverless Services
Demystifying API Management for Serverless Services
 
Best Practice With PLSQL
Best Practice With PLSQLBest Practice With PLSQL
Best Practice With PLSQL
 
Sign Language recognition Presentation
Sign Language recognition Presentation Sign Language recognition Presentation
Sign Language recognition Presentation
 
Framework for hand gesture controlled video game
Framework for hand gesture controlled video gameFramework for hand gesture controlled video game
Framework for hand gesture controlled video game
 
Software architectures
Software architecturesSoftware architectures
Software architectures
 
Middleware Simplified
Middleware SimplifiedMiddleware Simplified
Middleware Simplified
 
OAuth2 simplified
OAuth2   simplifiedOAuth2   simplified
OAuth2 simplified
 
Android development beyond the basics
Android development   beyond the basicsAndroid development   beyond the basics
Android development beyond the basics
 
Hello androidforyarlmeetup
Hello androidforyarlmeetupHello androidforyarlmeetup
Hello androidforyarlmeetup
 
Foss con2011
Foss con2011Foss con2011
Foss con2011
 

Kürzlich hochgeladen

Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsArshad QA
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...OnePlan Solutions
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxbodapatigopi8531
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsAlberto González Trastoy
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AIABDERRAOUF MEHENNI
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfkalichargn70th171
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsAndolasoft Inc
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...ICS
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Modelsaagamshah0812
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...panagenda
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfkalichargn70th171
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVshikhaohhpro
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comFatema Valibhai
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Steffen Staab
 
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female serviceCALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female serviceanilsa9823
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxComplianceQuest1
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️anilsa9823
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providermohitmore19
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdfWave PLM
 

Kürzlich hochgeladen (20)

Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
Tech Tuesday-Harness the Power of Effective Resource Planning with OnePlan’s ...
 
Hand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptxHand gesture recognition PROJECT PPT.pptx
Hand gesture recognition PROJECT PPT.pptx
 
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time ApplicationsUnveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
Unveiling the Tech Salsa of LAMs with Janus in Real-Time Applications
 
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AISyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
SyndBuddy AI 2k Review 2024: Revolutionizing Content Syndication with AI
 
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdfLearn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
Learn the Fundamentals of XCUITest Framework_ A Beginner's Guide.pdf
 
How To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.jsHow To Use Server-Side Rendering with Nuxt.js
How To Use Server-Side Rendering with Nuxt.js
 
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
The Real-World Challenges of Medical Device Cybersecurity- Mitigating Vulnera...
 
Unlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language ModelsUnlocking the Future of AI Agents with Large Language Models
Unlocking the Future of AI Agents with Large Language Models
 
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdfThe Ultimate Test Automation Guide_ Best Practices and Tips.pdf
The Ultimate Test Automation Guide_ Best Practices and Tips.pdf
 
Optimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTVOptimizing AI for immediate response in Smart CCTV
Optimizing AI for immediate response in Smart CCTV
 
HR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.comHR Software Buyers Guide in 2024 - HRSoftware.com
HR Software Buyers Guide in 2024 - HRSoftware.com
 
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
Shapes for Sharing between Graph Data Spaces - and Epistemic Querying of RDF-...
 
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female serviceCALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
CALL ON ➥8923113531 🔝Call Girls Badshah Nagar Lucknow best Female service
 
A Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docxA Secure and Reliable Document Management System is Essential.docx
A Secure and Reliable Document Management System is Essential.docx
 
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online  ☂️
CALL ON ➥8923113531 🔝Call Girls Kakori Lucknow best sexual service Online ☂️
 
TECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service providerTECUNIQUE: Success Stories: IT Service provider
TECUNIQUE: Success Stories: IT Service provider
 
5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf5 Signs You Need a Fashion PLM Software.pdf
5 Signs You Need a Fashion PLM Software.pdf
 
Microsoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdfMicrosoft AI Transformation Partner Playbook.pdf
Microsoft AI Transformation Partner Playbook.pdf
 

Peaceful Distributed Microservice Architecture

Hinweis der Redaktion

  1. I am Vanji from California and I work as a Solution engineer with WSO2 an open source integration company. And During my free time, I volunteer with the Apache Synapse project as a project committee member and a Committer. In this talk I will be mainly cover about Microservices Architecture and how to optimize the mean time to detect or well known as MTTD
  2. As a Very first Steps let's Quickly review what is API?
  3. For example I have illasurated a POS application functionality to show a very simple monolithic application behaviour Functionalities are packaged together as one single packaged and exposed and interconnected to external system.
  4. Regardless of logical modular, application is packaged as a single monolith. Packaging depends on the language … .war, .jar or directory structure Simple to test and deploy If simple, what is the issue? Simple and easy only at the beginning
  5. Many Pain Points!!!! Increasingly difficult to make code changes Disrupts agile development Overtime, no single developer will understand the entire code. Changes will be error prone CI/CD would become painful Scaling would be difficult An issue in one component could potentially bring down the entire application Stuck with a single language Since code size grow overtime it would become increasingly difficult for a single developer to understand the entire code. Hence, it would be difficult for a change to be made which disrupts continuous integration (CI) and continuous deployment (CD) say weekly. How would a CPU intensive component could make use of a special hardware compared to a memory intensive component. You will have to make compromises.
  6. In this illustration i have transformed the previously discussed monolithic POS application into Microservices architecture. AS you can see now each and every functionality break in into different deployable independent modules and communication between each and every modules are Now governed by standard protocols for example here it is RESTful APIS
  7. So to summarize An application written as small interconnected services, each implementing distinct functionality Self contained, maintains its own datastores Each service may expose a REST API and most services use other services Services may also use other Inter-process-communication methods to interact, such as queue etc Further, A microservice could implement a web UI and not expose a REST API A microservice doesn’t necessarily expose an API, but often it does A microservice could communicate via other means like a queue for IPC A Web UI service may invoke other services that has REST APIs or other means like asynchronous message based communication to render the page Separate databases ensure loose coupling but may impose duplicate data
  8. Faster and focused development Easy deployment and thus easy CI/CD - less dependency Demand based scalability and flexibility Reduced downtime due to modularity Applications become cloud native
  9. Microservice is a confusing term as there are people advocating writing small <300 Line of Code services. But microservice idea is to sufficiently decompose a monolith to take its advantages By distributing, IPC mechanisms need to be brought-in Need to update multiple database for consistency In a cloud native container based microservices hard coding an endpoint is not an option. Thus service discovery is needed
  10. mean time to recovery vs Mean time to Detect Idea of these concepts are widely used in the tech industry regardless of monolithic or Microservice architecture. First of all we should understand the significance of the difference between MTTR and MTTD / However, MTTD deals with how quickly it is possible identify the issue and minimize occurrence of any incidents.
  11. MTTR deals with after an incident or issue happened how to quickly recover back from the incident. By then as you see in the picture damage has already occurred.
  12. With organizations are moving from a monolithic architecture to a distributed Microservices Architecture along with cloud-native adoption these environment includes thousands of components interacting in complex, rapidly changing deployments over multiple tiers. Therefore, there will be a large number of events, matrices and data are produced in each and every node. Today’s dynamic cloud-native environments use multiple different technologies and aggregated tools. Currently, in the industry there are two techniques utilized for monitoring: one is known as observability and the other is surveillance. If there is no proper system of monitoring or observing the ecosystem, organizations will never be able to quickly detect or resolve the damaging problems. Hence, going forward we will understand the toolings, monitoring tools, KPIs, alerting mechanisms and observability techniques to significantly reduce the MTTD.
  13. Observability is the critical pillar for reducing MTTDs, By definition - observability is: collecting diagnostics data across all the stacks to identify and debug production problems and also to provide critical signals about usage to enable a highly adaptive and scalable system. Observability is primarily driven by 6 different dimensions to understand the environment. Monitoring Log aggregation Tracing Visualization Alerting People
  14. A Fundamental aspect of monitoring is to collect, process, aggregate, and display real-time quantitative data about an ecosystem and measure metrics at three levels: network, machine, and application. Such monitoring will produce error counts and types, processing times, memory usage and server lifetimes.
  15. For example, monitoring performance of the given JVM based application can simply be monitoring using JConsole and collecting matrices of CPU usage, memory usage, number of threads running, etc.
  16. However, with larger enterprises with distributed applications, it is not feasible to just target monitoring a single JVM or machine. Instead, Application Performance Monitoring (APM) tools should be in place to facilitate the monitoring of multiple functional dimensions. For example, DynaTrace, AppDynamics, New Relic, Datadog and Apache Skywalking are full-fledged monitoring and analytics capability providers that allow APM.
  17. Traditionally monolithic applications employed logging frameworks to provide insight on what has happened if something failed in the system. To understand or recognize the failure, looking at the log statements with correct timestamp and context is more than enough and most of the information will be revealed if the logs are correctly defined during development. However, with distributed Micro Service Architecture having logs is not enough to understand and see the big picture. Tracing can be easily understood with the analogy of a medical angiogram. An angiogram is a technique used to find the blocks in the heart by injecting an x-ray sensitive dye which makes block detection possible through dynamic x-ray snapshots while the dye moves through blood vessels. Detecting the bottlenecks in this manner will be utilized to take any necessary action to fix the issue, rather than searching everywhere or replacing the entire heart. Likewise, Tracing is heavily utilized in distributed software ecosystem to profile and monitor the communication or transaction between multiple systems including networks and applications. Further tracing also helps to understand the flow between services with an overview of application-level transparency. Zipkin, Jaeger, Instana, DataDog, Apache Skywalking, and Appdash are few examples that enable distributed tracing tools that support the OpenTracing Specification.
  18. There are endless different varieties of logs like application logs, security logs, audit logs, access logs and more. In a single application, the complexity of all these logs is manageable. However, in a distributed architecture, there are many applications or services working together to complete a single business functionality. For example, ordering a pizza involves checking the store availability, making the payment, placing the order, fulfilling the order, enabling tracking, shipping schedule placement, and many other activities. In the event of an error in such a complex transaction, tracing may pinpoint the location to search for the root cause. However, if the application-centric logs are distributed across the different components; it will be a nightmare to find the exact issue and time taken to find the relevant logs could make the situation more critical. Therefore, having a centralized location to collect and index all the logs that belong to the enterprise is critical to make detecting the exact location of the issue more efficient. Currently, there are multiple Tools and software in the market to achieve log aggregation Mainly Splunk, Sumo Logic, Elastic and GrayLog who play important roles in the log aggregation market.
  19. There are tools that collect the data or logs or matrices in a centralized location. However, if the collected data and logs do not provide any meaningful information they will be not useful. Most of the APM tools and log aggregators provide data visualizations to depict a holistic view based on the criteria provided. For example, locating the host with the most number of error messages can be identified easily with visualization. Another epic example is correlating two different errors that happened on separate hosts or applications and these can be created using time series aggregation charts.
  20. Another epic example is correlating two different errors that happened on separate hosts or applications and these can be created using time series aggregation charts The Visualization of the data is not only restricted to Errors and Exceptions but also it can be used to understand the behavioral monitoring of the application users. For example, if a user over-uses an API, data visualization could help to detect abusive behavior.
  21. Searching for log and data can be helpful to speed up the debugging process and resolving issues. But in reality, manually monitoring the visualizations to detect incidents is not practical. Hence, creating automated alerts are critical. Common scenarios that require alerts include the sudden failure of one or more APIs, a sudden increase in the response time of one or more APIs and the change in the pattern of API resource access. These alerts can result in an email, a phone call, instant message or PagerDuty. The important aspect of the alert is when the predefined condition is met or violated, necessary stakeholders need to be informed with the right amount of information rather than too much data.
  22. Collecting data in a random manner with different views of the same random data does not really reveal anything at all. Real-world surveillance is used to monitor activities by police or security and later may be used as evidence of crimes or other facts.
  23. Likewise, surveillance is used to force the targeted observation of the system to make sure that functionalities and performance are not violating the intended behavior. Real-world surveillance is used to monitor activities by police or security and later may be used as evidence of crimes or other facts. Likewise, surveillance is used to force the targeted observation of the system to make sure that functionalities and performance are not violating the intended behavior.
  24. As an example, let’s take applications that are handling real-time traffic or processing a high payload and tends to be memory intensive. Probability of application consuming too much memory is high and if the application is not properly designed and developed to handle this, the application may use up too much memory and crash. Detecting these leaks or abnormal memory usage is critical to uninterrupted service.
  25. Optimizing the infrastructure for minimizing mean time to detect the Incidents with Microservice architecture ensure that an organization has established appropriate systematic techniques to employ Observability and surveillance technologies effectively to find out the incidents right away to keep the system stable.