SlideShare uma empresa Scribd logo
1 de 30
Baixar para ler offline
MICROSERVICES
EVOLVING YOUR ARCHITECTURE TO
HECTOR TAPIA

DIRECTOR OF PRESALES

WEST & SOUTH REGION
SOFTWARE AS A COMPETITIVE ADVANTAGE
Lots of people talk about these companies and use them as examples of how innovation
disrupts the marketplace
What does these innovative companies have in common?
• Speed of innovation
• Always-available services
• Web Scale
• Device-centric user experiences
• Recover from failures quickly
CLOUD-NATIVE APPLICATION ARCHITECTURES
ARE KEY TO ENABLE THE BUSINESS MODEL
THAT ALLOWED THESE COMPANIES TO OBTAIN
THEIR DISRUPTIVE CHARACTER.
WHY CLOUD-NATIVE APPLICATION ARCHITECTURES?
Speed Safety Scale
CLOUD-NATIVE APPLICATIONS ARE ARCHITECTED DIFFERENTLY
Two common examples of Cloud-Native Applications are:
TWELVE-FACTOR APPLICATIONS & MICROSERVICES
• Every integration point will eventually fail one time or another
• Be prepared to handle all kinds of failures
• All functionality is published and consumed via Web Services
• Designed for Scale Out
• Break down the task, process requests asynchronously
• Use messaging to decouple functionality
• Eventual consistency model
• Build stateless services that can be scaled out and load balancedStateless Model
Asynchronous Processing
Horizontal Scalability
Handling Failures
Services
Two common examples of Cloud-Native Applications are:
Twelve-factor Applications & Microservices
5
Microservices
Is a way of designing software
applications as suites of
independently deployable
services
Wall-E Copyright Disney/Pixar
WHY DO WE NEED MICROSERVICES?
Service Oriented Architecture
Software architecture design pattern
based on distinct pieces of software
providing application functionality as
services to other applications
Even services can be designed monolithic and we can still call them Service
Oriented
• Slow development
• Irrelevant works
• Big fat services
• Endless restarts
• Reusability issues
• Missing refactoring
MICROSERVICES VS. SOA
“Microservices is a specific flavor of SOA. Due to unique features, it deserves a name.”
Martin Fowler
“If every service has to be updated at the same time, it’s not loosely coupled”
Adrian Cockcroft
“Focus on building services that make development and deployment easier, not just tiny
services”
Chris Richardson
MUST BUILD SOFTWARE FOR INNOVATION AND DIFFERENTIATION
75% By 2020, 75% of Application Purchases
supporting digital business will be
“Build”, not “Buy”.



Forecast Analysis: Enterprise Application Software,
Worldwide, 2Q15 Update
NOT EVERYBODY IS READY, NOT EVERYTHING IS CLOUD-NATIVE
CLOUD-NATIVE ORIGINATED IN CUSTOMER FACING TECH COMPANIES
Traditional Enterprises
• Spend 2-4% of revenue on R&D
• Employ “normal” people
• Enterprise-scale
• Thousands of apps
• Technology seen as an
investment
Customer-Facing
Technology companies
• Spend 20%+ of revenue on
R&D
• Employ highly paid developers
• Internet-scale
• Technology is their business
HOW TO EVOLVE YOUR
APPLICATIONS TO
MICROSERVICES
• Minimize service dependencies
• Evolution mechanism in service contracts
• Split features around business capabilities
• Keep logic not on layers, on everywhere
TRADITIONAL WEB APPLICATION ARCHITECTURE
Customer Profile
Service
Catalog Service
Order Service
Payment Service
User Interface
J2EE Application Server
DB
MVC
Load
Balancer
WAR
Load
Balancer

HTTP/S &
TCP Router
PERFORM A FUNCTIONAL DECOMPOSITION OF THE APPLICATION
Customer Profile
Service
Catalog Service
Order Service
Payment Service
User Interface
MVC
DB
WAR
WAR
WAR
WAR
WAR
Cloud Platform

(AWS, CloudFoundry, etc.)
TWO LEVELS OF ARCHITECTURE
System-level
Services
Inter-service glue: interfaces and communication mechanisms
Slow changing
Service-level
Internal architecture of each service
Each service could use a different technology stack (polyglot)
Pick the best tool for the job
Rapidly evolving
Chris Richardson
PARTITIONING STRATEGIES
• Partition by Noun
• e.g. Product, Info, Service
• Partition by Verb
• e.g. Checkout, Order
• Single Responsibility Principle
• Inverse Conway’s Law – teams own service groups
• Unix style: Do one focussed thing well
• Size doesn’t matter
Load
Balancer

HTTP/S &
TCP Router
PICK THE BEST TECHNOLOGY FOR EACH SERVICE
Order
Management UI
Browse Products
UI
Account
Management UI
Checkout UI
Customer Profile
Service
Catalog Service
Order Service
Payment Service
DB
DB
ESB / ETL
Cloud Platform

(AWS, CloudFoundry, etc.)
Infrastructure
Host Operating System
Hypervisor
Bin & Libs
Guest OS
Application
Bin & Libs
Guest OS
Application
Bin & Libs
Guest OS
Application
Virtualization: Includes
the application, the
necessary binaries and
libraries and the entire
guest operating system
- All of it can be tens of
GB’s in size
Infrastructure
Hypervisor
Containers: Include the
application and all of its
dependencies, but share
the kernel with other
containers, running as an
isolated process in the user
space on the host OS with
Built-In Policy.
Linux Kernel
InstanceManager
Application
Application
Application
Application
Application
A MICROSERVICES ARCHITECTURE DOESN’T DICTATE THE USE OF CONTAINERS
BUT MOST ORGANIZATIONS THAT MOVE TO MICROSERVICES ARCHITECTURES WILL FIND CONTAINERS TO BE A PERFECT MATCH
• Runtime options and portability
• Finer-grained execution environments
• Better isolation allows for component cohabitation
• Faster initialization and execution
APPLICATION DEVELOPMENT LIFECYCLE
PAST AND PRESENT
Methodology
Process
Patterns
Platform
Waterfall
Gated
Monolithic
Windows
Agile
Scrum
N-Tier Layered
Windows/Linux
Lean Engineering
CI / CD
Microservices
Cloud
NEW REQUIREMENTS FOR DEVELOPERS AND OPERATIONS
Development:

Microservices
Packaging:
Containers
Deployment:
Cloud Infrastructure
• Fast, tested, fail safe, small changes continuously deployed to production
• Measure, share visibility and provide feedback of users to business,
continuously
• Small experiments, test assumptions, fail fast and learn!
SOFTWARE AG TECHNOLOGY
FOR MICROSERVICES
UNIVERSAL MESSAGING
MICROSERVICES ARCHITECTURES RELY ON MESSAGING FOR INTER-SERVICE COMMUNICATION
Universal Messaging has key characteristics that
add value in a Microservices architecture
• Multiple wire protocols including JMS, MQTT
and Web Sockets
• Multiple transport protocols
• Unicast, Multicast,IPS
• Runs on Docker Containers
• Supported as a Service in Pivotal Cloud-
Foundry
• Messaging APIs
TERRACOTA BIGMEMORY GO
MICROSERVICES IN-MEMORY DATA MANAGEMENT
Microservices architectures promote one single
database per service
• BigMemory Go being open-source is
perfect self-service provisioning among the
developer community
• Runs on Docker Containers
• Will run on Pivotal Cloud-Foundry
• When going into production, CIOs will want
“Enterprise Capabilities”, turn to
BigMemory Max
• In-Memory databases are perfect for the
kind of applications targeted with
Microservices which are “Customer Facing”
API GATEWAY
INTEGRATE, SECURE AND MONETIZE MICROSERVICES
• Assure continuous
integration and testing
in DevOps
• Speed up the
development cycle
• Deliver higher-quality
software faster to meet
customer satisfaction
goals
• Secure external access
to backend services
APAMA
STREAMING ANALYTICS
For most applications, the way to make Microservices work and to manage distributed data successfully is
to adopt an event-driven architecture
In an event-driven architecture, a service publishes events when something notable happens, such as
when it updates a business object. Other services subscribe to those events. In response to an event a
service typically updates its own state. It might also publish more events, which then get consumed by
other services.
• Apama not only provides
the Event-Source needed
but full capabilities to
develop Event-Driven
Streaming Analytics
Microservices
• Runs on Docker, on IoT
devices, everywhere!
WEBMETHODS DEVOPS EDITION
CONTINUOUS DELIVERY OF MICROSERVICES CHOREOGRAPHY AND WEB SERVICES ORCHESTRATION
Software AG webMethods
Unified Service Delivery Platform that allows you to:
Connect your existing systems using Event Enabled integration
Build new Event applications using reusable services
Automate processes
Govern your services during design-time and run-time
it provides way more functionality than an ESB
INTEGRATION
DATA
(EVENTS)
ESB
IF IF
BUSINESS
LOGIC
TASKS
(PROCESSES)
DECISIONS
(RULES)
DIGITAL BUSINESS PLATFORM DESIGNED FOR MICROSERVICES
Release
Plan
Release
Plan
Release
Plan
Release
Plan
Release
Plan
Release
Plan
Developer
Deploy Feature to
Production
Deploy
Standardized
Services
Developer
Developer
Developer
Developer
Developer
Deploy Feature to
Production
Deploy Feature to
Production
Deploy Feature to
Production
DEMONSTRATION
CLOUD-NATIVE APPLICATION BASED ON SOFTWARE AG DIGITAL BUSINESS PLATFORM
Microservices Architecture Guide

Mais conteúdo relacionado

Mais procurados

Pivotal Digital Transformation Forum: Requirements to Deliver Innovation to M...
Pivotal Digital Transformation Forum: Requirements to Deliver Innovation to M...Pivotal Digital Transformation Forum: Requirements to Deliver Innovation to M...
Pivotal Digital Transformation Forum: Requirements to Deliver Innovation to M...VMware Tanzu
 
Bluemix IoT Cloud Foundry Meetup slides
Bluemix IoT Cloud Foundry Meetup slidesBluemix IoT Cloud Foundry Meetup slides
Bluemix IoT Cloud Foundry Meetup slidesValerie Lampkin
 
Using Service Discovery and Service Proxy
Using Service Discovery and Service ProxyUsing Service Discovery and Service Proxy
Using Service Discovery and Service ProxyIBM
 
IBM Bluemix Dedicated – GitHub Enterprise
IBM Bluemix Dedicated – GitHub EnterpriseIBM Bluemix Dedicated – GitHub Enterprise
IBM Bluemix Dedicated – GitHub EnterpriseIBM DevOps
 
Continuous Delivery on IBM Bluemix: Manage Cloud Native Services with Cloud N...
Continuous Delivery on IBM Bluemix: Manage Cloud Native Services with Cloud N...Continuous Delivery on IBM Bluemix: Manage Cloud Native Services with Cloud N...
Continuous Delivery on IBM Bluemix: Manage Cloud Native Services with Cloud N...Michael Elder
 
Microservices in the Enterprise: A Research Study and Reference Architecture
Microservices in the Enterprise: A Research Study and Reference ArchitectureMicroservices in the Enterprise: A Research Study and Reference Architecture
Microservices in the Enterprise: A Research Study and Reference ArchitectureJesus Rodriguez
 
Microservices: Decomposing Applications for Deployability and Scalability (ja...
Microservices: Decomposing Applications for Deployability and Scalability (ja...Microservices: Decomposing Applications for Deployability and Scalability (ja...
Microservices: Decomposing Applications for Deployability and Scalability (ja...Chris Richardson
 
DevOps within the Hybrid Cloud Deploying to the VMware Platform on the IBM Cloud
DevOps within the Hybrid Cloud Deploying to the VMware Platform on the IBM CloudDevOps within the Hybrid Cloud Deploying to the VMware Platform on the IBM Cloud
DevOps within the Hybrid Cloud Deploying to the VMware Platform on the IBM CloudMichael Elder
 
How do you deliver your applications to the cloud?
How do you deliver your applications to the cloud?How do you deliver your applications to the cloud?
How do you deliver your applications to the cloud?Michael Elder
 
apidays LIVE Jakarta - Overcoming the 3 largest obstacles to digital transfor...
apidays LIVE Jakarta - Overcoming the 3 largest obstacles to digital transfor...apidays LIVE Jakarta - Overcoming the 3 largest obstacles to digital transfor...
apidays LIVE Jakarta - Overcoming the 3 largest obstacles to digital transfor...apidays
 
vCloud Automation Center and Pivotal Cloud Foundry – Better PaaS Solution (VM...
vCloud Automation Center and Pivotal Cloud Foundry – Better PaaS Solution (VM...vCloud Automation Center and Pivotal Cloud Foundry – Better PaaS Solution (VM...
vCloud Automation Center and Pivotal Cloud Foundry – Better PaaS Solution (VM...VMware Tanzu
 
Automating Applications with Habitat - Sydney Cloud Native Meetup
Automating Applications with Habitat - Sydney Cloud Native MeetupAutomating Applications with Habitat - Sydney Cloud Native Meetup
Automating Applications with Habitat - Sydney Cloud Native MeetupMatt Ray
 
AppSphere 15 - Containers and Microservices Create New Performance Challenges
AppSphere 15 - Containers and Microservices Create New Performance ChallengesAppSphere 15 - Containers and Microservices Create New Performance Challenges
AppSphere 15 - Containers and Microservices Create New Performance ChallengesAppDynamics
 
Cloud Foundry - #IBMOTS 2016
Cloud Foundry - #IBMOTS 2016Cloud Foundry - #IBMOTS 2016
Cloud Foundry - #IBMOTS 2016Sam Ramji
 
Tap into a Private Cloud as a Service to Accelerate Hybrid Success
Tap into a Private Cloud as a Service to Accelerate Hybrid SuccessTap into a Private Cloud as a Service to Accelerate Hybrid Success
Tap into a Private Cloud as a Service to Accelerate Hybrid SuccessDenny Muktar
 
Platform as a Service - Cloud Foundry and IBM Bluemix
Platform as a Service - Cloud Foundry and IBM BluemixPlatform as a Service - Cloud Foundry and IBM Bluemix
Platform as a Service - Cloud Foundry and IBM BluemixDavid Currie
 
Bluemix the digital innovation platform
Bluemix   the digital innovation platformBluemix   the digital innovation platform
Bluemix the digital innovation platformJose Pena
 
Hybrid Cloud with IBM Bluemix, Docker and Open Stack
Hybrid Cloud with IBM Bluemix, Docker and Open StackHybrid Cloud with IBM Bluemix, Docker and Open Stack
Hybrid Cloud with IBM Bluemix, Docker and Open Stackgjuljo
 
Orchestrating Cloud-Native and Traditional Application Architectures
Orchestrating Cloud-Native and Traditional Application ArchitecturesOrchestrating Cloud-Native and Traditional Application Architectures
Orchestrating Cloud-Native and Traditional Application ArchitecturesApprenda
 
IBM Relay 2015: Expect More From Private Cloud
IBM Relay 2015: Expect More From Private CloudIBM Relay 2015: Expect More From Private Cloud
IBM Relay 2015: Expect More From Private CloudIBM
 

Mais procurados (20)

Pivotal Digital Transformation Forum: Requirements to Deliver Innovation to M...
Pivotal Digital Transformation Forum: Requirements to Deliver Innovation to M...Pivotal Digital Transformation Forum: Requirements to Deliver Innovation to M...
Pivotal Digital Transformation Forum: Requirements to Deliver Innovation to M...
 
Bluemix IoT Cloud Foundry Meetup slides
Bluemix IoT Cloud Foundry Meetup slidesBluemix IoT Cloud Foundry Meetup slides
Bluemix IoT Cloud Foundry Meetup slides
 
Using Service Discovery and Service Proxy
Using Service Discovery and Service ProxyUsing Service Discovery and Service Proxy
Using Service Discovery and Service Proxy
 
IBM Bluemix Dedicated – GitHub Enterprise
IBM Bluemix Dedicated – GitHub EnterpriseIBM Bluemix Dedicated – GitHub Enterprise
IBM Bluemix Dedicated – GitHub Enterprise
 
Continuous Delivery on IBM Bluemix: Manage Cloud Native Services with Cloud N...
Continuous Delivery on IBM Bluemix: Manage Cloud Native Services with Cloud N...Continuous Delivery on IBM Bluemix: Manage Cloud Native Services with Cloud N...
Continuous Delivery on IBM Bluemix: Manage Cloud Native Services with Cloud N...
 
Microservices in the Enterprise: A Research Study and Reference Architecture
Microservices in the Enterprise: A Research Study and Reference ArchitectureMicroservices in the Enterprise: A Research Study and Reference Architecture
Microservices in the Enterprise: A Research Study and Reference Architecture
 
Microservices: Decomposing Applications for Deployability and Scalability (ja...
Microservices: Decomposing Applications for Deployability and Scalability (ja...Microservices: Decomposing Applications for Deployability and Scalability (ja...
Microservices: Decomposing Applications for Deployability and Scalability (ja...
 
DevOps within the Hybrid Cloud Deploying to the VMware Platform on the IBM Cloud
DevOps within the Hybrid Cloud Deploying to the VMware Platform on the IBM CloudDevOps within the Hybrid Cloud Deploying to the VMware Platform on the IBM Cloud
DevOps within the Hybrid Cloud Deploying to the VMware Platform on the IBM Cloud
 
How do you deliver your applications to the cloud?
How do you deliver your applications to the cloud?How do you deliver your applications to the cloud?
How do you deliver your applications to the cloud?
 
apidays LIVE Jakarta - Overcoming the 3 largest obstacles to digital transfor...
apidays LIVE Jakarta - Overcoming the 3 largest obstacles to digital transfor...apidays LIVE Jakarta - Overcoming the 3 largest obstacles to digital transfor...
apidays LIVE Jakarta - Overcoming the 3 largest obstacles to digital transfor...
 
vCloud Automation Center and Pivotal Cloud Foundry – Better PaaS Solution (VM...
vCloud Automation Center and Pivotal Cloud Foundry – Better PaaS Solution (VM...vCloud Automation Center and Pivotal Cloud Foundry – Better PaaS Solution (VM...
vCloud Automation Center and Pivotal Cloud Foundry – Better PaaS Solution (VM...
 
Automating Applications with Habitat - Sydney Cloud Native Meetup
Automating Applications with Habitat - Sydney Cloud Native MeetupAutomating Applications with Habitat - Sydney Cloud Native Meetup
Automating Applications with Habitat - Sydney Cloud Native Meetup
 
AppSphere 15 - Containers and Microservices Create New Performance Challenges
AppSphere 15 - Containers and Microservices Create New Performance ChallengesAppSphere 15 - Containers and Microservices Create New Performance Challenges
AppSphere 15 - Containers and Microservices Create New Performance Challenges
 
Cloud Foundry - #IBMOTS 2016
Cloud Foundry - #IBMOTS 2016Cloud Foundry - #IBMOTS 2016
Cloud Foundry - #IBMOTS 2016
 
Tap into a Private Cloud as a Service to Accelerate Hybrid Success
Tap into a Private Cloud as a Service to Accelerate Hybrid SuccessTap into a Private Cloud as a Service to Accelerate Hybrid Success
Tap into a Private Cloud as a Service to Accelerate Hybrid Success
 
Platform as a Service - Cloud Foundry and IBM Bluemix
Platform as a Service - Cloud Foundry and IBM BluemixPlatform as a Service - Cloud Foundry and IBM Bluemix
Platform as a Service - Cloud Foundry and IBM Bluemix
 
Bluemix the digital innovation platform
Bluemix   the digital innovation platformBluemix   the digital innovation platform
Bluemix the digital innovation platform
 
Hybrid Cloud with IBM Bluemix, Docker and Open Stack
Hybrid Cloud with IBM Bluemix, Docker and Open StackHybrid Cloud with IBM Bluemix, Docker and Open Stack
Hybrid Cloud with IBM Bluemix, Docker and Open Stack
 
Orchestrating Cloud-Native and Traditional Application Architectures
Orchestrating Cloud-Native and Traditional Application ArchitecturesOrchestrating Cloud-Native and Traditional Application Architectures
Orchestrating Cloud-Native and Traditional Application Architectures
 
IBM Relay 2015: Expect More From Private Cloud
IBM Relay 2015: Expect More From Private CloudIBM Relay 2015: Expect More From Private Cloud
IBM Relay 2015: Expect More From Private Cloud
 

Semelhante a Microservices Architecture Guide

Securing the Cloud Native stack
Securing the Cloud Native stackSecuring the Cloud Native stack
Securing the Cloud Native stackHector Tapia
 
Securing the Cloud Native Stack
Securing the Cloud Native StackSecuring the Cloud Native Stack
Securing the Cloud Native StackApcera
 
Disruptive Trends in Application Development
Disruptive Trends in Application DevelopmentDisruptive Trends in Application Development
Disruptive Trends in Application DevelopmentWaveMaker, Inc.
 
NUS-ISS Learning Day 2018- Designing software to make the most of cloud platf...
NUS-ISS Learning Day 2018- Designing software to make the most of cloud platf...NUS-ISS Learning Day 2018- Designing software to make the most of cloud platf...
NUS-ISS Learning Day 2018- Designing software to make the most of cloud platf...NUS-ISS
 
Developing Hybrid Cloud Applications
Developing Hybrid Cloud ApplicationsDeveloping Hybrid Cloud Applications
Developing Hybrid Cloud ApplicationsDaniel Berg
 
Microsoft cloud continuum
Microsoft cloud continuumMicrosoft cloud continuum
Microsoft cloud continuumMathews Job
 
Using cloud native development to achieve digital transformation
Using cloud native development to achieve digital transformationUsing cloud native development to achieve digital transformation
Using cloud native development to achieve digital transformationUni Systems S.M.S.A.
 
Designing Microservices
Designing MicroservicesDesigning Microservices
Designing MicroservicesDavid Chou
 
From Monoliths to Services: Grafually paying your Technical Debt
From Monoliths to Services: Grafually paying your Technical DebtFrom Monoliths to Services: Grafually paying your Technical Debt
From Monoliths to Services: Grafually paying your Technical DebtDavid Litvak Bruno
 
microservices-is-it-the-holy-grail-a-perspective.pdf
microservices-is-it-the-holy-grail-a-perspective.pdfmicroservices-is-it-the-holy-grail-a-perspective.pdf
microservices-is-it-the-holy-grail-a-perspective.pdfRichieBallyears
 
Technology insights: Decision Science Platform
Technology insights: Decision Science PlatformTechnology insights: Decision Science Platform
Technology insights: Decision Science PlatformDecision Science Community
 
IBM Lightning Talk
IBM Lightning TalkIBM Lightning Talk
IBM Lightning TalkMongoDB
 
Getting Started with Cloud Foundry on Bluemix
Getting Started with Cloud Foundry on BluemixGetting Started with Cloud Foundry on Bluemix
Getting Started with Cloud Foundry on BluemixJake Peyser
 
Getting Started with Cloud Foundry on Bluemix
Getting Started with Cloud Foundry on BluemixGetting Started with Cloud Foundry on Bluemix
Getting Started with Cloud Foundry on BluemixDev_Events
 
Cloudify your applications: microservices and beyond
Cloudify your applications: microservices and beyondCloudify your applications: microservices and beyond
Cloudify your applications: microservices and beyondUgo Landini
 
What serverless means for enterprise apps
What serverless means for enterprise appsWhat serverless means for enterprise apps
What serverless means for enterprise appsSumit Sarkar
 
IBM Think 2020 Openshift on IBM Z and LinuxONE
IBM Think 2020 Openshift on IBM Z and LinuxONEIBM Think 2020 Openshift on IBM Z and LinuxONE
IBM Think 2020 Openshift on IBM Z and LinuxONEFilipe Miranda
 
Cloud Foundry and MongoDB
Cloud Foundry and MongoDBCloud Foundry and MongoDB
Cloud Foundry and MongoDBJake Peyser
 

Semelhante a Microservices Architecture Guide (20)

Securing the Cloud Native stack
Securing the Cloud Native stackSecuring the Cloud Native stack
Securing the Cloud Native stack
 
Securing the Cloud Native Stack
Securing the Cloud Native StackSecuring the Cloud Native Stack
Securing the Cloud Native Stack
 
Disruptive Trends in Application Development
Disruptive Trends in Application DevelopmentDisruptive Trends in Application Development
Disruptive Trends in Application Development
 
NUS-ISS Learning Day 2018- Designing software to make the most of cloud platf...
NUS-ISS Learning Day 2018- Designing software to make the most of cloud platf...NUS-ISS Learning Day 2018- Designing software to make the most of cloud platf...
NUS-ISS Learning Day 2018- Designing software to make the most of cloud platf...
 
Developing Hybrid Cloud Applications
Developing Hybrid Cloud ApplicationsDeveloping Hybrid Cloud Applications
Developing Hybrid Cloud Applications
 
Microsoft cloud continuum
Microsoft cloud continuumMicrosoft cloud continuum
Microsoft cloud continuum
 
Using cloud native development to achieve digital transformation
Using cloud native development to achieve digital transformationUsing cloud native development to achieve digital transformation
Using cloud native development to achieve digital transformation
 
Designing Microservices
Designing MicroservicesDesigning Microservices
Designing Microservices
 
From Monoliths to Services: Grafually paying your Technical Debt
From Monoliths to Services: Grafually paying your Technical DebtFrom Monoliths to Services: Grafually paying your Technical Debt
From Monoliths to Services: Grafually paying your Technical Debt
 
Cloud Native Application Development
Cloud Native Application DevelopmentCloud Native Application Development
Cloud Native Application Development
 
microservices-is-it-the-holy-grail-a-perspective.pdf
microservices-is-it-the-holy-grail-a-perspective.pdfmicroservices-is-it-the-holy-grail-a-perspective.pdf
microservices-is-it-the-holy-grail-a-perspective.pdf
 
Technology insights: Decision Science Platform
Technology insights: Decision Science PlatformTechnology insights: Decision Science Platform
Technology insights: Decision Science Platform
 
IBM Lightning Talk
IBM Lightning TalkIBM Lightning Talk
IBM Lightning Talk
 
Getting Started with Cloud Foundry on Bluemix
Getting Started with Cloud Foundry on BluemixGetting Started with Cloud Foundry on Bluemix
Getting Started with Cloud Foundry on Bluemix
 
Getting Started with Cloud Foundry on Bluemix
Getting Started with Cloud Foundry on BluemixGetting Started with Cloud Foundry on Bluemix
Getting Started with Cloud Foundry on Bluemix
 
Getting Started with Cloud Foundry on Bluemix
Getting Started with Cloud Foundry on BluemixGetting Started with Cloud Foundry on Bluemix
Getting Started with Cloud Foundry on Bluemix
 
Cloudify your applications: microservices and beyond
Cloudify your applications: microservices and beyondCloudify your applications: microservices and beyond
Cloudify your applications: microservices and beyond
 
What serverless means for enterprise apps
What serverless means for enterprise appsWhat serverless means for enterprise apps
What serverless means for enterprise apps
 
IBM Think 2020 Openshift on IBM Z and LinuxONE
IBM Think 2020 Openshift on IBM Z and LinuxONEIBM Think 2020 Openshift on IBM Z and LinuxONE
IBM Think 2020 Openshift on IBM Z and LinuxONE
 
Cloud Foundry and MongoDB
Cloud Foundry and MongoDBCloud Foundry and MongoDB
Cloud Foundry and MongoDB
 

Último

Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationRadu Cotescu
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUK Journal
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessPixlogix Infotech
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfsudhanshuwaghmare1
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 

Último (20)

Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Scaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organizationScaling API-first – The story of a global engineering organization
Scaling API-first – The story of a global engineering organization
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdfUnderstanding Discord NSFW Servers A Guide for Responsible Users.pdf
Understanding Discord NSFW Servers A Guide for Responsible Users.pdf
 
Advantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your BusinessAdvantages of Hiring UIUX Design Service Providers for Your Business
Advantages of Hiring UIUX Design Service Providers for Your Business
 
Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 

Microservices Architecture Guide

  • 1. MICROSERVICES EVOLVING YOUR ARCHITECTURE TO HECTOR TAPIA
 DIRECTOR OF PRESALES
 WEST & SOUTH REGION
  • 2. SOFTWARE AS A COMPETITIVE ADVANTAGE Lots of people talk about these companies and use them as examples of how innovation disrupts the marketplace What does these innovative companies have in common? • Speed of innovation • Always-available services • Web Scale • Device-centric user experiences • Recover from failures quickly CLOUD-NATIVE APPLICATION ARCHITECTURES ARE KEY TO ENABLE THE BUSINESS MODEL THAT ALLOWED THESE COMPANIES TO OBTAIN THEIR DISRUPTIVE CHARACTER.
  • 3. WHY CLOUD-NATIVE APPLICATION ARCHITECTURES? Speed Safety Scale
  • 4. CLOUD-NATIVE APPLICATIONS ARE ARCHITECTED DIFFERENTLY Two common examples of Cloud-Native Applications are: TWELVE-FACTOR APPLICATIONS & MICROSERVICES • Every integration point will eventually fail one time or another • Be prepared to handle all kinds of failures • All functionality is published and consumed via Web Services • Designed for Scale Out • Break down the task, process requests asynchronously • Use messaging to decouple functionality • Eventual consistency model • Build stateless services that can be scaled out and load balancedStateless Model Asynchronous Processing Horizontal Scalability Handling Failures Services Two common examples of Cloud-Native Applications are: Twelve-factor Applications & Microservices
  • 5. 5 Microservices Is a way of designing software applications as suites of independently deployable services Wall-E Copyright Disney/Pixar
  • 6. WHY DO WE NEED MICROSERVICES? Service Oriented Architecture Software architecture design pattern based on distinct pieces of software providing application functionality as services to other applications
  • 7. Even services can be designed monolithic and we can still call them Service Oriented • Slow development • Irrelevant works • Big fat services • Endless restarts • Reusability issues • Missing refactoring
  • 8. MICROSERVICES VS. SOA “Microservices is a specific flavor of SOA. Due to unique features, it deserves a name.” Martin Fowler “If every service has to be updated at the same time, it’s not loosely coupled” Adrian Cockcroft “Focus on building services that make development and deployment easier, not just tiny services” Chris Richardson
  • 9. MUST BUILD SOFTWARE FOR INNOVATION AND DIFFERENTIATION 75% By 2020, 75% of Application Purchases supporting digital business will be “Build”, not “Buy”.
 
 Forecast Analysis: Enterprise Application Software, Worldwide, 2Q15 Update
  • 10. NOT EVERYBODY IS READY, NOT EVERYTHING IS CLOUD-NATIVE CLOUD-NATIVE ORIGINATED IN CUSTOMER FACING TECH COMPANIES Traditional Enterprises • Spend 2-4% of revenue on R&D • Employ “normal” people • Enterprise-scale • Thousands of apps • Technology seen as an investment Customer-Facing Technology companies • Spend 20%+ of revenue on R&D • Employ highly paid developers • Internet-scale • Technology is their business
  • 11. HOW TO EVOLVE YOUR APPLICATIONS TO MICROSERVICES
  • 12. • Minimize service dependencies • Evolution mechanism in service contracts • Split features around business capabilities • Keep logic not on layers, on everywhere
  • 13. TRADITIONAL WEB APPLICATION ARCHITECTURE Customer Profile Service Catalog Service Order Service Payment Service User Interface J2EE Application Server DB MVC Load Balancer WAR
  • 14. Load Balancer
 HTTP/S & TCP Router PERFORM A FUNCTIONAL DECOMPOSITION OF THE APPLICATION Customer Profile Service Catalog Service Order Service Payment Service User Interface MVC DB WAR WAR WAR WAR WAR Cloud Platform
 (AWS, CloudFoundry, etc.)
  • 15. TWO LEVELS OF ARCHITECTURE System-level Services Inter-service glue: interfaces and communication mechanisms Slow changing Service-level Internal architecture of each service Each service could use a different technology stack (polyglot) Pick the best tool for the job Rapidly evolving Chris Richardson
  • 16. PARTITIONING STRATEGIES • Partition by Noun • e.g. Product, Info, Service • Partition by Verb • e.g. Checkout, Order • Single Responsibility Principle • Inverse Conway’s Law – teams own service groups • Unix style: Do one focussed thing well • Size doesn’t matter
  • 17. Load Balancer
 HTTP/S & TCP Router PICK THE BEST TECHNOLOGY FOR EACH SERVICE Order Management UI Browse Products UI Account Management UI Checkout UI Customer Profile Service Catalog Service Order Service Payment Service DB DB ESB / ETL Cloud Platform
 (AWS, CloudFoundry, etc.)
  • 18. Infrastructure Host Operating System Hypervisor Bin & Libs Guest OS Application Bin & Libs Guest OS Application Bin & Libs Guest OS Application Virtualization: Includes the application, the necessary binaries and libraries and the entire guest operating system - All of it can be tens of GB’s in size Infrastructure Hypervisor Containers: Include the application and all of its dependencies, but share the kernel with other containers, running as an isolated process in the user space on the host OS with Built-In Policy. Linux Kernel InstanceManager Application Application Application Application Application A MICROSERVICES ARCHITECTURE DOESN’T DICTATE THE USE OF CONTAINERS BUT MOST ORGANIZATIONS THAT MOVE TO MICROSERVICES ARCHITECTURES WILL FIND CONTAINERS TO BE A PERFECT MATCH • Runtime options and portability • Finer-grained execution environments • Better isolation allows for component cohabitation • Faster initialization and execution
  • 19. APPLICATION DEVELOPMENT LIFECYCLE PAST AND PRESENT Methodology Process Patterns Platform Waterfall Gated Monolithic Windows Agile Scrum N-Tier Layered Windows/Linux Lean Engineering CI / CD Microservices Cloud
  • 20. NEW REQUIREMENTS FOR DEVELOPERS AND OPERATIONS Development:
 Microservices Packaging: Containers Deployment: Cloud Infrastructure • Fast, tested, fail safe, small changes continuously deployed to production • Measure, share visibility and provide feedback of users to business, continuously • Small experiments, test assumptions, fail fast and learn!
  • 21. SOFTWARE AG TECHNOLOGY FOR MICROSERVICES
  • 22. UNIVERSAL MESSAGING MICROSERVICES ARCHITECTURES RELY ON MESSAGING FOR INTER-SERVICE COMMUNICATION Universal Messaging has key characteristics that add value in a Microservices architecture • Multiple wire protocols including JMS, MQTT and Web Sockets • Multiple transport protocols • Unicast, Multicast,IPS • Runs on Docker Containers • Supported as a Service in Pivotal Cloud- Foundry • Messaging APIs
  • 23. TERRACOTA BIGMEMORY GO MICROSERVICES IN-MEMORY DATA MANAGEMENT Microservices architectures promote one single database per service • BigMemory Go being open-source is perfect self-service provisioning among the developer community • Runs on Docker Containers • Will run on Pivotal Cloud-Foundry • When going into production, CIOs will want “Enterprise Capabilities”, turn to BigMemory Max • In-Memory databases are perfect for the kind of applications targeted with Microservices which are “Customer Facing”
  • 24. API GATEWAY INTEGRATE, SECURE AND MONETIZE MICROSERVICES • Assure continuous integration and testing in DevOps • Speed up the development cycle • Deliver higher-quality software faster to meet customer satisfaction goals • Secure external access to backend services
  • 25. APAMA STREAMING ANALYTICS For most applications, the way to make Microservices work and to manage distributed data successfully is to adopt an event-driven architecture In an event-driven architecture, a service publishes events when something notable happens, such as when it updates a business object. Other services subscribe to those events. In response to an event a service typically updates its own state. It might also publish more events, which then get consumed by other services. • Apama not only provides the Event-Source needed but full capabilities to develop Event-Driven Streaming Analytics Microservices • Runs on Docker, on IoT devices, everywhere!
  • 26. WEBMETHODS DEVOPS EDITION CONTINUOUS DELIVERY OF MICROSERVICES CHOREOGRAPHY AND WEB SERVICES ORCHESTRATION
  • 27. Software AG webMethods Unified Service Delivery Platform that allows you to: Connect your existing systems using Event Enabled integration Build new Event applications using reusable services Automate processes Govern your services during design-time and run-time it provides way more functionality than an ESB
  • 28. INTEGRATION DATA (EVENTS) ESB IF IF BUSINESS LOGIC TASKS (PROCESSES) DECISIONS (RULES) DIGITAL BUSINESS PLATFORM DESIGNED FOR MICROSERVICES Release Plan Release Plan Release Plan Release Plan Release Plan Release Plan Developer Deploy Feature to Production Deploy Standardized Services Developer Developer Developer Developer Developer Deploy Feature to Production Deploy Feature to Production Deploy Feature to Production
  • 29. DEMONSTRATION CLOUD-NATIVE APPLICATION BASED ON SOFTWARE AG DIGITAL BUSINESS PLATFORM