SlideShare a Scribd company logo
1 of 24
Download to read offline
Better Nurses
Effective Microservice
Design & Containers
Abe BarberenaGil
Software Architect
April 2019
Better Nurses
• Founded in 1969
• Community: 100,000+ nurses
• Specialty nursing organization
committed to a healthcare
system driven by the needs of
patients and families in pursuit
of the best possible patient care.
Tech Stack Modernization
Tech Stack Modernization
• Lift & Shift
Why Microservices
• Distributed system evolution is inevitable
• Microservice movement
• Long anticipated emergence
• Lowy, 2007
Current state of microservices
• Fat Website
• Fat API
• Fat Mobile
• Fat Service
• Fat Database
• …
Fat Website/DMZ
Mobile App
Web
(MVC)
DB
Presentation
Internet
DMZ
Intranet
Data
Web App
Fat API/DMZ
Mobile App
Public + Private
Web API
DB
Presentation
Internet
DMZ
Intranet
Data
Web App
Fallacies of microservices
• ‘Overloaded’ term
• AIX administrator: Process running in memory
• Devs: Web API
• Microservices are:
• Small
• Globally accessible
• Public endpoints
• Infinitely reusable
• Own their data
• Solely synchronous
• Client agnostic
• …
Integrated Platform
• Docker and Kubernetes know containers
• Service Fabric knows Services…
Integrated Platform
• Docker and Kubernetes know containers
• Service Fabric knows Services… and containers!
True masters of service orientation
• Cloud builders
• Long doing microservices
• Beyond firewall & Behind firewall
• Beyond website
• Beyond the firewall
• Maximize reach
• Multiplicity of clients
• Raw HTTP
• Web API
True masters of service orientation
• Behind the firewall
• Sockets
• Queues
• Pipes
• Opinionated
• Efficient
• Reliable
• Elastic
Microservice granularity
• Promotes SOLID
• Explicit interface-based
programming model
• Enables
• SRP
• Open-Closed
• ISP
• Dependency Inversion
Integrated Platform
• Addresses full system SDLC
• Prescribed approach for service-oriented systems
• Development
• Deployment
• Solved common coordination problems
• Connectivity
• Security
• Deployment
• Administration
Integrated Platform
• Ensure System Architecture survival
• High visibility
• Fully instrumented
• Multiple API support
• Automated health monitoring
• Can query health metrics
Machine/Node A
Host Process
Fabric
Service
Machine/Node B
Host Process
Fabric
Service
Machine/Node C
Host Process
Fabric
Service
Machine/Node D
Host Process
Fabric
Service
Integrated Platform
Machine/Node A
Host Process
Fabric
Service
Machine/Node B
Host Process
Fabric
Service
Machine/Node C
Host Process
Fabric
Service
Machine/Node D
Host Process
Fabric
Service
Integrated Platform
Integrated Platform
• Automated
• Deployment
• Hosting
• Updating
• Upgrading
• Scaling
• Decommissioning
• Failover
• Health monitoring
• Self-balancing
• Workload balancing
• Address resolution
• Sate replication and persistence
Microservice design
Microservice:S1
Microservice:C1
Microservice:C2
Microservice:Cn
Modern Software Architecture
Mobile App
Private
Push API
Beyond
DMZ
Behind
Microservices
DB
Web App
Private
Web API
Public
Web API
Public
Push API
Microservice:S1 Microservice:C1
Microservice:C2
Microservice:Cn
Bus = Queues + Pub Sub EXE
Microservice:Sn Microservice:C1
Microservice:C2
Microservice:Cn
. . .
DB
Modern Software Architecture
Mobile App
Private
Push API
Beyond
DMZ
Behind
Microservices
DB
Web App
Private
Web API
Public
Web API
Public
Push API
Microservice:S1 Microservice:C1
Microservice:C2
Microservice:Cn
Bus = Queues + Pub Sub EXE
Microservice:Sn Microservice:C1
Microservice:C2
Microservice:Cn
. . .
DB
Questions?
Thank you

More Related Content

What's hot

Integration Solution Patterns
Integration Solution Patterns Integration Solution Patterns
Integration Solution Patterns
WSO2
 
Summer School - Demonstrating Cloud Value
Summer School - Demonstrating Cloud Value  Summer School - Demonstrating Cloud Value
Summer School - Demonstrating Cloud Value
WSO2
 

What's hot (20)

Microservices for Enterprises
Microservices for Enterprises Microservices for Enterprises
Microservices for Enterprises
 
WSO2Con EU 2016: Understanding the WSO2 API Management Platform
WSO2Con EU 2016: Understanding the WSO2 API Management PlatformWSO2Con EU 2016: Understanding the WSO2 API Management Platform
WSO2Con EU 2016: Understanding the WSO2 API Management Platform
 
Tokyo Azure Meetup #6 - Azure Monthly Update - June
Tokyo Azure Meetup #6 - Azure Monthly Update - JuneTokyo Azure Meetup #6 - Azure Monthly Update - June
Tokyo Azure Meetup #6 - Azure Monthly Update - June
 
Microservices on kubernetes
Microservices on kubernetesMicroservices on kubernetes
Microservices on kubernetes
 
API World: The service-mesh landscape
API World: The service-mesh landscapeAPI World: The service-mesh landscape
API World: The service-mesh landscape
 
Cics content delivery server v3
Cics content delivery server v3Cics content delivery server v3
Cics content delivery server v3
 
[WSO2Con EU 2017] Creating Composite Services Using Ballerina
[WSO2Con EU 2017] Creating Composite Services Using Ballerina[WSO2Con EU 2017] Creating Composite Services Using Ballerina
[WSO2Con EU 2017] Creating Composite Services Using Ballerina
 
Integration Solution Patterns
Integration Solution Patterns Integration Solution Patterns
Integration Solution Patterns
 
Summer School - Demonstrating Cloud Value
Summer School - Demonstrating Cloud Value  Summer School - Demonstrating Cloud Value
Summer School - Demonstrating Cloud Value
 
Multi-cluster service mesh with GlooMesh
Multi-cluster service mesh with GlooMeshMulti-cluster service mesh with GlooMesh
Multi-cluster service mesh with GlooMesh
 
[WSO2Con EU 2017] Microservices for Enterprises
[WSO2Con EU 2017] Microservices for Enterprises[WSO2Con EU 2017] Microservices for Enterprises
[WSO2Con EU 2017] Microservices for Enterprises
 
The Truth About the Service Mesh Data Plane
The Truth About the Service Mesh Data PlaneThe Truth About the Service Mesh Data Plane
The Truth About the Service Mesh Data Plane
 
Microservices architecture
Microservices architectureMicroservices architecture
Microservices architecture
 
Understanding Microservice Architecture WSO2Con Asia 2016
Understanding Microservice Architecture WSO2Con Asia 2016 Understanding Microservice Architecture WSO2Con Asia 2016
Understanding Microservice Architecture WSO2Con Asia 2016
 
[WSO2Con EU 2017] Ballerina Connectors for Seamless Integration
[WSO2Con EU 2017] Ballerina Connectors for Seamless Integration[WSO2Con EU 2017] Ballerina Connectors for Seamless Integration
[WSO2Con EU 2017] Ballerina Connectors for Seamless Integration
 
Introduction to WSO2 Integration Platform
Introduction to WSO2 Integration PlatformIntroduction to WSO2 Integration Platform
Introduction to WSO2 Integration Platform
 
Tokyo Azure Meetup #4 - Build 2016 Overview
Tokyo Azure Meetup #4 -  Build 2016 OverviewTokyo Azure Meetup #4 -  Build 2016 Overview
Tokyo Azure Meetup #4 - Build 2016 Overview
 
Micro service session 1
Micro service   session 1Micro service   session 1
Micro service session 1
 
How to use python to build a scalable Web Application
How to use python to build a scalable Web ApplicationHow to use python to build a scalable Web Application
How to use python to build a scalable Web Application
 
CIS14: PingAccess 101
CIS14: PingAccess 101CIS14: PingAccess 101
CIS14: PingAccess 101
 

Similar to Effective Micoservice Design & Containers

API’s and Micro Services 0.5
API’s and Micro Services 0.5API’s and Micro Services 0.5
API’s and Micro Services 0.5
Richard Hudson
 
Event Bus as Backbone for Decoupled Microservice Choreography (JFall 2017)
Event Bus as Backbone for Decoupled Microservice Choreography (JFall 2017)Event Bus as Backbone for Decoupled Microservice Choreography (JFall 2017)
Event Bus as Backbone for Decoupled Microservice Choreography (JFall 2017)
Lucas Jellema
 

Similar to Effective Micoservice Design & Containers (20)

Veritas Volume Manager Classroom Training
Veritas Volume Manager Classroom TrainingVeritas Volume Manager Classroom Training
Veritas Volume Manager Classroom Training
 
Cloud-native Data
Cloud-native DataCloud-native Data
Cloud-native Data
 
Cloud-Native-Data with Cornelia Davis
Cloud-Native-Data with Cornelia DavisCloud-Native-Data with Cornelia Davis
Cloud-Native-Data with Cornelia Davis
 
Modernize Service-Oriented Architecture with APIs
Modernize Service-Oriented Architecture with APIsModernize Service-Oriented Architecture with APIs
Modernize Service-Oriented Architecture with APIs
 
Microservices and Best Practices
Microservices and Best Practices Microservices and Best Practices
Microservices and Best Practices
 
Cloud migration Through Automation
Cloud migration Through AutomationCloud migration Through Automation
Cloud migration Through Automation
 
.NET microservices with Azure Service Fabric
.NET microservices with Azure Service Fabric.NET microservices with Azure Service Fabric
.NET microservices with Azure Service Fabric
 
API’s and Micro Services 0.5
API’s and Micro Services 0.5API’s and Micro Services 0.5
API’s and Micro Services 0.5
 
Event Bus as Backbone for Decoupled Microservice Choreography (JFall 2017)
Event Bus as Backbone for Decoupled Microservice Choreography (JFall 2017)Event Bus as Backbone for Decoupled Microservice Choreography (JFall 2017)
Event Bus as Backbone for Decoupled Microservice Choreography (JFall 2017)
 
Disruptive Trends in Application Development
Disruptive Trends in Application DevelopmentDisruptive Trends in Application Development
Disruptive Trends in Application Development
 
Microservices: A developer's approach
Microservices: A developer's approachMicroservices: A developer's approach
Microservices: A developer's approach
 
Virtualization Vs. Containers
Virtualization Vs. ContainersVirtualization Vs. Containers
Virtualization Vs. Containers
 
IPaaS 2.0: Fuse Integration Services (Robert Davies & Keith Babo)
IPaaS 2.0: Fuse Integration Services (Robert Davies & Keith Babo)IPaaS 2.0: Fuse Integration Services (Robert Davies & Keith Babo)
IPaaS 2.0: Fuse Integration Services (Robert Davies & Keith Babo)
 
Cloud native Continuous Delivery
Cloud native Continuous DeliveryCloud native Continuous Delivery
Cloud native Continuous Delivery
 
Why Microservices
Why MicroservicesWhy Microservices
Why Microservices
 
Tokyo Azure Meetup #5 - Microservices and Azure Service Fabric
Tokyo Azure Meetup #5 - Microservices and Azure Service FabricTokyo Azure Meetup #5 - Microservices and Azure Service Fabric
Tokyo Azure Meetup #5 - Microservices and Azure Service Fabric
 
SOA to Microservices
SOA to MicroservicesSOA to Microservices
SOA to Microservices
 
Hybrid Integration with BizTalk Server - ACSUG
Hybrid Integration with BizTalk Server - ACSUGHybrid Integration with BizTalk Server - ACSUG
Hybrid Integration with BizTalk Server - ACSUG
 
Event Bus as Backbone for Decoupled Microservice Choreography (Oracle Code, A...
Event Bus as Backbone for Decoupled Microservice Choreography (Oracle Code, A...Event Bus as Backbone for Decoupled Microservice Choreography (Oracle Code, A...
Event Bus as Backbone for Decoupled Microservice Choreography (Oracle Code, A...
 
OpenStack Management at Hyperscale
OpenStack Management at HyperscaleOpenStack Management at Hyperscale
OpenStack Management at Hyperscale
 

More from Nebulaworks

More from Nebulaworks (19)

Dynamic Policy Enforcement for Microservice Environments
Dynamic Policy Enforcement for Microservice EnvironmentsDynamic Policy Enforcement for Microservice Environments
Dynamic Policy Enforcement for Microservice Environments
 
Overcoming scalability issues in your prometheus ecosystem
Overcoming scalability issues in your prometheus ecosystemOvercoming scalability issues in your prometheus ecosystem
Overcoming scalability issues in your prometheus ecosystem
 
Why we chose Argo Workflow to scale DevOps at InVision
Why we chose Argo Workflow to scale DevOps at InVisionWhy we chose Argo Workflow to scale DevOps at InVision
Why we chose Argo Workflow to scale DevOps at InVision
 
Methods to stay focused & productive amidst COVID-19!
Methods to stay focused & productive amidst COVID-19!Methods to stay focused & productive amidst COVID-19!
Methods to stay focused & productive amidst COVID-19!
 
Embracing service-level-objectives of your microservices in your Cl/CD
Embracing service-level-objectives of your microservices in your Cl/CDEmbracing service-level-objectives of your microservices in your Cl/CD
Embracing service-level-objectives of your microservices in your Cl/CD
 
Embacing service-level-objectives of your microservices in your Cl/CD
Embacing service-level-objectives of your microservices in your Cl/CDEmbacing service-level-objectives of your microservices in your Cl/CD
Embacing service-level-objectives of your microservices in your Cl/CD
 
Deploying to Day N Operations of Kubernetes and Containerized Apps
Deploying to Day N Operations of Kubernetes and Containerized AppsDeploying to Day N Operations of Kubernetes and Containerized Apps
Deploying to Day N Operations of Kubernetes and Containerized Apps
 
Trunk based development for Beginners
Trunk based development for BeginnersTrunk based development for Beginners
Trunk based development for Beginners
 
Distributed tracing with service meshes and tracing spans across polyglot Mic...
Distributed tracing with service meshes and tracing spans across polyglot Mic...Distributed tracing with service meshes and tracing spans across polyglot Mic...
Distributed tracing with service meshes and tracing spans across polyglot Mic...
 
Managing Terraform Module Versioning and Dependencies
Managing Terraform Module Versioning and Dependencies Managing Terraform Module Versioning and Dependencies
Managing Terraform Module Versioning and Dependencies
 
Kubernetes for Beginners
Kubernetes for BeginnersKubernetes for Beginners
Kubernetes for Beginners
 
End to End immutable infrastructure testing
End to End immutable infrastructure testingEnd to End immutable infrastructure testing
End to End immutable infrastructure testing
 
Building Modern Teams and Software
Building Modern Teams and SoftwareBuilding Modern Teams and Software
Building Modern Teams and Software
 
Kuberntes Ingress with Kong
Kuberntes Ingress with KongKuberntes Ingress with Kong
Kuberntes Ingress with Kong
 
A Hands-on Introduction on Terraform Best Concepts and Best Practices
A Hands-on Introduction on Terraform Best Concepts and Best Practices A Hands-on Introduction on Terraform Best Concepts and Best Practices
A Hands-on Introduction on Terraform Best Concepts and Best Practices
 
The App Developer's Kubernetes Toolbox
The App Developer's Kubernetes ToolboxThe App Developer's Kubernetes Toolbox
The App Developer's Kubernetes Toolbox
 
Building a Container Platform with docker swarm
Building a Container Platform with docker swarmBuilding a Container Platform with docker swarm
Building a Container Platform with docker swarm
 
Fast Tracking Dev Teams to Container Adoption
Fast Tracking Dev Teams to Container AdoptionFast Tracking Dev Teams to Container Adoption
Fast Tracking Dev Teams to Container Adoption
 
Nebulaworks | Optimize Your DevOps Game
Nebulaworks | Optimize Your DevOps GameNebulaworks | Optimize Your DevOps Game
Nebulaworks | Optimize Your DevOps Game
 

Recently uploaded

Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 

Recently uploaded (20)

Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf[BuildWithAI] Introduction to Gemini.pdf
[BuildWithAI] Introduction to Gemini.pdf
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
JohnPollard-hybrid-app-RailsConf2024.pptx
JohnPollard-hybrid-app-RailsConf2024.pptxJohnPollard-hybrid-app-RailsConf2024.pptx
JohnPollard-hybrid-app-RailsConf2024.pptx
 
ICT role in 21st century education and its challenges
ICT role in 21st century education and its challengesICT role in 21st century education and its challenges
ICT role in 21st century education and its challenges
 
AI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by AnitarajAI in Action: Real World Use Cases by Anitaraj
AI in Action: Real World Use Cases by Anitaraj
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Platformless Horizons for Digital Adaptability
Platformless Horizons for Digital AdaptabilityPlatformless Horizons for Digital Adaptability
Platformless Horizons for Digital Adaptability
 
Vector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptxVector Search -An Introduction in Oracle Database 23ai.pptx
Vector Search -An Introduction in Oracle Database 23ai.pptx
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Corporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptxCorporate and higher education May webinar.pptx
Corporate and higher education May webinar.pptx
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..Understanding the FAA Part 107 License ..
Understanding the FAA Part 107 License ..
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 

Effective Micoservice Design & Containers