SlideShare une entreprise Scribd logo
1  sur  30
Télécharger pour lire hors ligne
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
Evolving your Architecture to MicroServices

Contenu connexe

Tendances

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
 

Tendances (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
 

Similaire à Evolving your Architecture to MicroServices

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
 

Similaire à Evolving your Architecture to MicroServices (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
 

Dernier

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
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerThousandEyes
 
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
 
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
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Miguel Araújo
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationSafe Software
 
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
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
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 FresherRemote DBA Services
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
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
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Drew Madelung
 
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
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 
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
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
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
 
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
 

Dernier (20)

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
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
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
 
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
 
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
Mastering MySQL Database Architecture: Deep Dive into MySQL Shell and MySQL R...
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
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
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
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
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
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
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
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...
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 
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
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
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
 
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...
 

Evolving your Architecture to MicroServices

  • 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