SOA, Microservices and Service Orientation:

Similar documents
Microservices + DevOps + Oracle Cloud = A Bright Future. Sai Janakiram Penumuru Chief Technologist & Oracle ACE Director

Microservices: A Flexible Architecture for the Digital Age

Akana, All Rights Reserved Contact Us Privacy Policy. Microservices: What, Why and How

Combine Microservices Framework for Flexible, Scalable, High Availability Big Data Analytics

PRINCIPLES OF SERVICE ORIENTATION

Composite Cloud Applications and Portable Topologies

Containers and Microservices Create New Performance Challenges

FROM SHORE TO SHIP: USING MESOSPHERE ENTERPRISE DC/OS TO DELIVER REAL TIME MICROSERVICES TO A GLOBAL FLEET OF SHIPS

Migrating to Cloud - Native Architectures Using Microservices: An Experience Report

Mit Werkzeugen den DevOps Konflikt auflösen

SOA Concepts. Service Oriented Architecture Johns-Hopkins University

SOA, Service-Orientation & Cloud Computing: The Connection Points

Mark Bailey Senior System Consultant Security, Government, & Infrastructure 2008 Intergraph Corporation

Applicazioni Cloud native

MICROSERVICES. Prabavathy Arumugam Software AG. All rights reserved. For internal use only

SOA Best Practices & Framework Services in Order to Invoice Enterprise Application Integrations

Top six performance challenges in managing microservices in a hybrid cloud

Red Hat Open Shift Container Platform

EMERGENCE OF MICROSERVICE ARCHITECTURE. Let's start something.

Comparing Servicebased nealford.com

Mapping Service-Orientation to TOGAF 9 Part IV: Applying Service-Orientation to TOGAF s Service Contracts

Dell IT Proven: Cloud Native Applications at Your Service

PERSPECTIVE. Microservices A New Application Paradigm. Abstract

SERVICE ORIENTED ARCHITECTURE (SOA)

Service-Oriented Architecture: Making the most of SOA What, Why and How

Microservices-based Business Process Model Automation. Agnes Koschmider

1. Comparing Service Characteristics. (by Mark Richards) 2. Analysis and Modeling with Web Services and Microservices(by Thomas Erl)

THETARAY ANOMALY DETECTION

MICROSERVICES TENETS: AGILE APPROACH TO SERVICE DEVELOPMENT AND DEPLOYMENT (A.K.A. SOA VS. MICROSERVICES)

DevOps: Driving Organizational Change and Agility with PaaS

In Pursuit of Agility -

Copyright 2014, Oracle and/or its affiliates. All rights reserved. 2

ApiOmat. Case Study. Challenge

Solution Architecture Training: Enterprise Integration Patterns and Solutions for Architects

Wanted: Agile Solution for Evolving Marketing Demands

Oracle Siebel CRM On Demand Integration Pack for JD Edwards EnterpriseOne (Opportunity to Cash)

Modernize Application Development to Succeed as a Digital Business

Service Oriented Architecture

Customer Challenges SOLUTION BENEFITS

CONTINUOUS INTEGRATION & CONTINUOUS DELIVERY

DevOps architecture overview

OPENSHIFT CONTAINER PLATFORM

Integration in a Cloud native world

DevOps KANOKWATT SHIANGJEN COMPUTER SCIENCE SCHOOL OF INFORMATION AND COMMUNICATION TECHNOLOGY UNIVERSITY OF PHAYAO

IBM Cloud White Paper. How to get the benefits of cloud behind your firewall: IBM Cloud Private

Development Operations in the Cloud: A Use Case and Best Practices

RESOLVING APPLICATION DEVELOPMENT ISSUES USING SOA Y. KIRAN KUMAR 1, G.SUJATHA 2, G. JAGADEESH KUMAR 3

Accenture Software for Health and Public Service. Accenture Public Service Platform. Taking SOA from the Whiteboard to the Data Center and Beyond

The Fast (Developer) and the Furious (Ops Team)

JOURNEY TO AS A SERVICE

Jenkins. The coded business. open source

DEVELOPING APPLICATIONS USING MICROSERVICES AND MICROSOFT AZURE SERVICE FABRIC 1

The Oracle DevOps Portfolio

Keynote Presentation: Driving the Value of SOA in an Enterprise Architecture

Developer Cloud Service. Transform Your Development Experience

Bluemix Overview. Last Updated: October 10th, 2017

MTAT Enterprise System Integration. Lecture 6 Service-Oriented Architecture Basic Concepts

People Platform. Claus Jepsen, Chief Architect

Product Intelligence Report

بﻟﺎطﻣ ﯽﻠﮐ لﺻﻓ رﺳ Se rvice O r ien t A rch it ec t SOA Workshop: A. Mahjoorian, Session

EVOLUTION OF A SOFTWARE AS A SERVICE ARCHITECTURE EDWARD STASHLUK CTO

Informatica Cloud Application Integration

DRAFT ENTERPRISE TECHNICAL REFERENCE FRAMEWORK ETRF WHITE PAPER

ORACLE CLOUD MANAGEMENT PACK FOR MIDDLEWARE

Multi-Containers Orchestration with Live Migration and High-Availability for Microservices

Integration Reloaded Integration Solutions Based on Reactive Principles. Red Expert Alliance

Service Oriented Architecture. Reference MIDDLEWARE & ENTERPRISE INTEGRATION TECHNOLOGIES By

ACHIEVING A SERVERLESS DEVELOPMENT EXPERIENCE

TECHED USER CONFERENCE MAY 3-4, 2016

SOA Best Practices & Framework Services in Order to Invoice Enterprise Application Integrations

GUIDE The Enterprise Buyer s Guide to Public Cloud Computing

Exam C Foundations of IBM DevOps V1

Transition to SOA. Oracle SOA Suite. Martin Jäkle Solution Architect TSBU Fusion Middleware Oracle Deutschland

APIs for the I. The Role of APIs and Web Services in the Era of Digital Business Transformation

Chapter 15. Supporting Practices Service Profiles 15.2 Vocabularies 15.3 Organizational Roles. SOA Principles of Service Design

Deliver a Private Cloud Middleware Platform or Public Cloud Platform as a Service

SOA Success Methodology

Hybrid Cloud Adoption: Transforming to Hybrid Cloud with DevOps, Microservices, Containers and APIs

SOA Workshop - SOMA. Service Oriented Methodology & Architecture SOMA

Innovate with Oracle Public Cloud Platform & Infrastructure Services

Aepona Agile Service Enablement Creating services for business transformation

Service Oriented Realization of The HTNG Reference Architecture

OpenShift Dedicated: An Inmarsat Story

Service Oriented Architecture

Building a. Digital Marketplace of Commercially Ready Services

Cloud Computing Lectures SOA


WEB SERVICES AND XML,M.INDUMATHY AP/IT YEAR & SEM:IV & VII UNIT-II

Central Role of Messaging Middleware in Cloud and Digital Transformation Initiatives

Deploying Microservices and Containers with Azure Container Service and DC/OS

WHITE PAPER. An Insight into Microservices Testing Strategies. Abstract. Arvind Sundar, Technical Test Lead

DevOps E m p o w e r Q u a l i t y A s s u r a n c e b e n e f i t s f o r y o u r p r o j e c t s

DevOps E m p o w e r Q u a l i t y A s s u r a n c e b e n e f i t s f o r y o u r p r o j e c t s

Transforming Telecom BSS/OSS with MicroServices for Greater Agility

Fly high with Microservices Architecture Splitting the Monolith

Reaching Customers Across Multiple Channels

An Approach for Assessing SOA Maturity in the Enterprise

API 360: The Complete API Strategy Model for the Enterprise

IBM WebSphere Service Registry and Repository, Version 6.0

On demand operating environment solutions To support your IT objectives Transforming your business to on demand.

Transcription:

SOA, Microservices and Service Orientation: The Samurai Way OGhTech Experience 17 Sandra Flores @sandyfloresmx 武 士道

Introduction SOA has been in action for a long time, even though many people are not completely convinced about this architectural style, over the years it has proven to be mature and reliable, but is it the best way to build Service Oriented Solutions? Microservices, in the other hand, has attracted the attention of many of us in recent years, it seems that more and more people want to join this movement. However, there is still much confusion out there. Some people say Microservices are just well-designed SOA Services. What do you think about it? Let s dig deeper into the topic and try to find out some answers that are still in the air. SOA & Microservices

About Me Mexican Software Engineer. Oracle ACE Associate. Blogger and Tech Community Member. Working as an independent SOA and Software Architect. Sandra Flores SOA Architect Trainer.

4 The Samurai Way Bushidō Code Bushidō ( 武 士道?, the way of the warrior ) is a Japanese term for a way of life following the code of principles which the Samurai (Bushi) were required to master in order to become a consummate diplomat. Under the bushidō ideal, if a Samurai failed to uphold his honor he could only regain it by performing seppuku (ritual suicide).

Agenda 5 Service Oriented Architecture Brief definition What SOA is for? Microservices Brief definition Martin Fowler and soapatterns.org point of view Service Orientation Principles Samurai style Do you know the 8 principles of SO? Oracle and Microservices What Oracle offers to us? A clue It s raining Microservices Comparing SOA and Microservices Which one will you choose? A real business case analyzed from both approaches

6 Service Oriented Architecture

Service Oriented Architecture 7 Definition Architectural Model to build distributed Service Oriented Solutions Service Types SOAP Services REST Services Components Services SOA uses Services as the basic building blocks by which solution logic is represented Service Composition There is a service initiator which orchestrates the invocation to the other participants SOA SOA supports Service Orientation in the realization of the strategic goals associated with Service- Oriented computing.

Service Oriented Architecture 8 SOA is more than just an Integration Platform

Service Oriented Architecture 9 What is SOA for? SOA was mainly aimed to move away from monolithic applications to Service Oriented Solutions, where the agile and effective work is the promise, by dividing the monolith into more independent reusable Services. While progressive exposure of business capabilities to more audiences is the trend of organizations expansion, SOA can help us to create a more centralized and governed enterprise solution to provide a growing exposure of business.

10 Microservices

Microservices 11 Brief definition Buzz words A way to build fine-grained, more flexible, replaceable and independently deployable services. Mainly aimed to move away from monolithic application (or service) deployments to automated, efficient and smaller deployment units in Service Oriented Solutions.

Microservices: Main purpose 12 https://martinfowler.com/articles/microservices.html

Microservices Architecture: Martin Fowler 13 Componentization via Services Organized around Business Capabilities Products not Projects Smart endpoints and dumb pipes Decentralized Governance Decentralized Data Management Infrastructure Automation Design for failure Evolutionary Design https://martinfowler.com/articles/microservices.html

Microservices: soapatterns.org 14 01 02 Micro Task Abstraction (Erl) Grouping non-agnostic logic with specialized processing and deployment requirements together with non-agnostic logic that does not have such requirements can compromise the former's ability to consistently fulfill its requirements. Microservice Deployment (Merson) Services and other components of a software solution are packaged together in a monolithic deployment bundle. Deploying a new version of a service that is part of the solution can require redeploying the entire solution. Also, there is less flexibility to configure service-specific scalability, availability, persistence, monitoring, and security logic. Solution Individual units of non-agnostic logic with specialized processing and deployment requirements are separated using the microservice model and abstracted into a microservice layer in which there is the architectural freedom to tailor environments in support of specialized service processing and deployment requirements. Solution Each service is treated as an independent product and is deployed is an isolated package that contributes to service autonomy. 03 Containerization (Stoffers) Services deployed on bare metal or virtual servers can impose a significant footprint. Virtualization improves portability but introduces a layer of intermediate processing that can further increase the footprint. Monolithic solution deployments can lead to widespread reduced performance and availability when any one service or solution component suffers an outage or a runtime exception. Solution Services are deployed independently, or together with composed services, as autonomous units that are packaged into independently manageable and autonomous container images, each of which includes the services underlying system dependencies. Tooling is provided to manage the building, deploying and operating of the containers.

Microservices & SOA & Service Orientation 15 Service Orientation SOA SOA Microservices Microservices

Microservice: Characteristics 16 Polyglot Autonomous Loosely Coupled Automated Small Simple Task Resilient

New is always better! Right? igital Transformation

Microservices: Disrupting the disruption 18

Microservices: The iceberg effect 19 People try to copy Netflix, but they can only copy what they see. They copy the results, not the process. Adrian Cockcroft Former Netflix Chief Cloud Architect

20 Service Orientation Principles

Service Orientation Design Principles 21 Service Reusability Design principles are our guideline for identifying and classifying services during the analysis and design stages in a Service Oriented Solution. Service Loose Coupling Service Statelessness Standardized Service Contract Service Autonomy Service Composability Service Abstraction Service Discoverability

SO Principles: SOA more related 22 Service Reusability Service Loose Coupling Service Statelessness Standardized Service Contract Service Autonomy Service Composability Service Abstraction Service Discoverability

SO Principles: Microservices more related 23 Service Reusability Service Loose Coupling Service Statelessness Standardized Service Contract Service Autonomy Service Composability Service Abstraction Service Discoverability

24 ORACLE Oracle and Microservices

Oracle Application Container Cloud Service 25 Polyglot Application Runtime Platform A pre-configured environment for Java, Node.js, and PHP applications. Java SE advanced features such as Java Flight Recorder, Java Mission Control, advanced memory management, and ongoing and timely security updates. Open platform that supports all Java frameworks and containers such as Spring, Play, Tomcat, and Jersey. Support for Java Virtual Machine (JVM) based languages such as JRuby. You can run any language that uses the Java Virtual Machine on this service. Web-based user interface and REST API (Health Monitoring, Application Life Cycle, Application Deployment, Application Instance Life Cycle, Logs and Recordings. http://docs.oracle.com/en/cloud/paas/app-container-cloud/csjse/index.html

Oracle Developer Cloud Service 26 GIT Integration GIT source code control system repositories and integration with the popular GitHub service. Collaboration A team wiki and a set of collaboration tools to support the documentation needs of developer projects. IDE IDE support with a choice of Java IDEs popular with enterprise developers including JDeveloper, Eclipse, and NetBeans. Build Support for dependency management with the Java Maven build automation tool. Continous Integration Build integration using the Hudson continuous integration system. DevOps Collaboration tools and issue tracking such as increasingly required by modern application development and DevOps practices. https://www.oracle.com/webfolder/s/delivery_production/docs/fy16h1/doc18/idc-technology-spotlight.pdf

27 SOA Orchestration Microservices Choreography Business Case

Medication Delivery Process 28 Products Search 2 Deliver Products 5 1 6 Incoming Call 90 Pharmacies + 10 inventory stock warehouses distributed across the country to supply orders. 35 in Mexico City + 2 warehouses. Each of one has it s own inventory stock system made with.net. The complete order is delivered to the customer location. Payments are accepted if it has n been payed yet. Confirm Delivery Callcenter operators using a Siebel CRM based system receive 24x7 customer calls asking for several medication all over the country. Submit Order Collect Products 3 4 The delivery person using the mobile device confirms the delivery and the mobile app spread it to all the pharmacies and warehouses involved in the order. ACK The application must spread the order submission to all the pharmacies and warehouses involved to complete the order. A supply delivery person receives order details in a mobile device to collect all the products from one or more places.

Medication Delivery Process Systems 29 Siebel CRM Legacy Supports only SOAP Services Delivery App Mobile application Supports REST and SOAP Services Pharmacy Pharmacy point of sale and stock management system.net made Warehouse Stock warehouse management system.net Made

Medication Delivery Process: Services 30 Products Search Service It locates the nearest pharmacy to the customer The inventory search goes through the pharmacies or warehouses from the nearest to the farthest until the products are completed. A list with products and locations details is returned. Submit Order Service Receives the order and pharmacies/warehouses to spread it on each one of them. It sends a notification to a logistics mobile app which chooses a delivery person to pick up the products at pharmacies and warehouses and then deliver the complete order to the customer. Order Tracking Service For each step the delivery person takes on his way to pick up and deliver the order to the customer, an update in order status must be sent from mobile app to each pharmacy, warehouse, and to Siebel CRM. Spatial Service Returns a list of pharmacies ordered by the proximity of a given location (customer location). Pharmacy Order Service Receives the products details and creates a new sales order in specific pharmacies. Pharmacy Order Update Service Receives the order status updated in specific pharmacies. Pharmacy Inventory Service Returns a list of inventory of the requested products in specific pharmacies. Warehouse Order Service Receives the products details and creates a new sales order in specific warehouses. Warehouse Order Update Service Receives the order status updated in specific warehouses. Warehouse Inventory Service Returns a list of inventory of the requested products in an specific warehouse. Delivery Notification Service Sends a notification to a logistics mobile app indicating order details. Siebel Order Update Service Receives the order status updated in Siebel.

31 Medication Delivery Process: SOA Perspective

Medication Delivery Process SOA Services 32 Search Products Service Submit Order Service Order Tracking Service Orchestrated Task Services Spatial Service Pharmacy Service Warehouse Service Delivery Service Siebel Order Service Entity Services Utility Services

33 Medication Delivery Process: Microservices Perspective

Medication Delivery Process Systems 34 THIS IS NOT A MONOLITHIC APPLICATION Siebel CRM Legacy Supports only SOAP Services Delivery App Mobile application Supports REST and SOAP Services Pharmacy Pharmacy point of sale and stock management system.net made Warehouse Stock warehouse management system.net Made

Medication Delivery Process SOA & Microservices 35 Search Products Service Submit Order Service Order Tracking Service Orchestrated Task Services Spatial Service Pharmacy Service Warehouse Service Delivery Service Siebel Order Service Entity Services Utility Services

36 Microservices are not for everything, nor is SOA.

Thank You! 37 Want to find me? @sandyfloresmx /sandrafloresmx desarrolloconsoa.blogspot.mx Any Questions?