modernizing your enterprise application architecture with microservices and api management

26
October 4, 2016 | Jakarta, ASEAN

Upload: andreas-kuncoro

Post on 14-Apr-2017

148 views

Category:

Technology


3 download

TRANSCRIPT

Page 1: Modernizing Your Enterprise Application Architecture with Microservices and API Management

October 4, 2016 | Jakarta, ASEAN

Page 2: Modernizing Your Enterprise Application Architecture with Microservices and API Management

MODERNIZING YOUR ENTERPRISE APPLICATION

ARCHITECTURE WITH MICROSERVICES AND API

MANAGEMENT

Eryan Ariobowo

Solutions Architect, Indonesia, Red Hat

Page 3: Modernizing Your Enterprise Application Architecture with Microservices and API Management
Page 4: Modernizing Your Enterprise Application Architecture with Microservices and API Management

Red Hat Forum APAC 20164

TRADITIONAL ENTERPRISE APPLICATION

ARCHITECTURE: MONOLITHIC

Business Logic

CDI REST TX

Database

JPA

UI

HTMLDB

Load

BalancerEAR

WARWAR

WAR

WARWAR

JAR

Page 5: Modernizing Your Enterprise Application Architecture with Microservices and API Management

Red Hat Forum APAC 20165

MONOLITHIC ARCHITECTURE

BENEFITS

• Easily understood

• Simple to develop

• Simplified debugging and testing

• Easy deployment

Page 6: Modernizing Your Enterprise Application Architecture with Microservices and API Management

Red Hat Forum APAC 20166

• One failed module kills all

• Difficult to scale

• Change is not easy

• Difficult to understand

• Single technology stack (pro and con)

• Agility impacted – unable to roll out

code fast

MONOLITHIC ARCHITECTURE

CHALLENGES

Page 7: Modernizing Your Enterprise Application Architecture with Microservices and API Management

Red Hat Forum APAC 20167

SOLUTION: MICROSERVICE

ARCHITECTURE“... is an approach to developing a single application as a

suite of small services, each running in its own

process and communicating with lightweight

mechanisms, often an HTTP resource API. These

services are built around business capabilities and

independently deployable by fully automated deployment machinery. There is a bare minimum of

centralized management of these services, which

may be written in different programming

languages and use different data storage

technologies.”

Martin Fowler

http://martinfowler.com/articles/microservices.html

Page 8: Modernizing Your Enterprise Application Architecture with Microservices and API Management

Red Hat Forum APAC 20168

MICROSERVICE PRINCIPLES

• Developed independently

• Does one thing well

• Deployment Independence

• API Focused

• Decentralized Data Management

• Easy to scale

• Polyglot

Page 9: Modernizing Your Enterprise Application Architecture with Microservices and API Management

Red Hat Forum APAC 20169

TRANSITIONING TO A MICROSERVICES

ARCHITECTURE

Don't even consider microservices unless you have a system that's too complex to manage as

a monolith - Martin Fowler

Page 10: Modernizing Your Enterprise Application Architecture with Microservices and API Management

Red Hat Forum APAC 201610

MICROSERVICES + LINUX CONTAINERS

CONTAINER

Micro

Service

• Rapidly build, deploy, and run the services

• Technology agnostic

• Process Isolation out of the box

• Driving the entire industry towards

standards like the Open Container Initiative

(OCI)

Page 11: Modernizing Your Enterprise Application Architecture with Microservices and API Management

Red Hat Forum APAC 201611

KUBERNETES FOR ORCHESTRATION

RHEL ATOMIC HOST RHEL ATOMIC HOST RHEL ATOMIC HOST

Micro

Service

Micro

Service

Micro

Service

Micro

Service

Micro

Service

Micro

Service

Micro

Service

Micro

Service

Micro

Service

KUBERNETES

• Scale (manual or auto)

• Self healing

• Load balancing

• Self Discovery built-in

Page 12: Modernizing Your Enterprise Application Architecture with Microservices and API Management

Red Hat Forum APAC 201612

JBOSS MICROSERVICES ON

OPENSHIFT

● JBoss Enterprise

Application Platform

● JBoss Web Server /

Tomcat

● JBoss Fuse

● JBoss A-MQ

● JBoss Data Virtualization*

● JBoss Business Process

Management Suite

● JBoss Business Rules

Management System

Application

Container Services

Integration

Services

Business

Process Services

* Coming Soon

Page 13: Modernizing Your Enterprise Application Architecture with Microservices and API Management

Red Hat Forum APAC 201613

CLUSTERING ENTERPRISE JAVA

MICROSERVICES WITH JBOSS EAP

Page 14: Modernizing Your Enterprise Application Architecture with Microservices and API Management

Red Hat Forum APAC 201614

JBOSS FUSE INTEGRATION SERVICES: YOUR

MICROSERVICES SOLUTION FOR INTEGRATION

Page 15: Modernizing Your Enterprise Application Architecture with Microservices and API Management

Red Hat Forum APAC 201615

JBOSS BUSINESS RULES DECISION SERVER: YOUR

MICROSERVICES SOLUTION FOR BUSINESS RULES

Page 16: Modernizing Your Enterprise Application Architecture with Microservices and API Management

Red Hat Forum APAC 201616

JBOSS PROCESS SERVER: YOUR MICROSERVICES

SOLUTION FOR BUSINESS PROCESSES

Process

ServiceInstance 1

Process

ServiceInstance 2

Process

ServiceInstance 3

Page 17: Modernizing Your Enterprise Application Architecture with Microservices and API Management

Red Hat Forum APAC 201617

MICROSERVICES IN ACTION

• Communicate using APIs

• Microservice groups

• Internal and External APIs

• API aggregation layer

Challenges

• Access control and security

• Rate limits

• Reports, Analytics

• API Documentation

Page 18: Modernizing Your Enterprise Application Architecture with Microservices and API Management

Red Hat Forum APAC 201618

MICROSERVICES + API MANAGEMENT

RH

EL A

TO

MIC

HO

ST

RH

EL A

TO

MIC

HO

ST

RH

EL A

TO

MIC

HO

ST

Mic

ro

Se

rvi

ce

Mic

ro

Se

rvi

ce

Mic

ro

Se

rvi

ce

Mic

ro

Se

rvi

ce

Mic

ro

Se

rvi

ce

Mic

ro

Se

rvi

ce

Mic

ro

Se

rvi

ce

Mic

ro

Se

rvi

ce

Mic

ro

Se

rvi

ce

KU

BE

RN

ET

ES

API Management Platform

API

Consumers

Page 19: Modernizing Your Enterprise Application Architecture with Microservices and API Management

Red Hat Forum APAC 201619

ACCESS CONTROL AND SECURITY

• Standard API keys

• Application ID and key pair

• OAuth v1.0 and 2.0

Page 20: Modernizing Your Enterprise Application Architecture with Microservices and API Management

Red Hat Forum APAC 201620

API CONTRACTS AND RATE LIMITS

• Different microservice consumer

segments

• Flexible per-time-period limits

Page 21: Modernizing Your Enterprise Application Architecture with Microservices and API Management

Red Hat Forum APAC 201621

ANALYTICS AND REPORTING

• Traffic patterns

• Top microservice consumers

• Alerts, reporting

Page 22: Modernizing Your Enterprise Application Architecture with Microservices and API Management

Red Hat Forum APAC 201622

DEVELOPER PORTAL & DOCUMENTATION

Automatic and interactive

Interface documentation

• Interactive API documentation

• Swagger-based

• Self-service developer portal

Page 23: Modernizing Your Enterprise Application Architecture with Microservices and API Management

Red Hat Forum APAC 201623

MONETIZATION OF MICROSERVICES

• Build business model

• Flexible pricing rules

• Automatic invoicing

Page 24: Modernizing Your Enterprise Application Architecture with Microservices and API Management

Red Hat Forum APAC 201624

3SCALE HYBRID-CLOUD MODEL

Page 25: Modernizing Your Enterprise Application Architecture with Microservices and API Management

Red Hat Forum APAC 201625

RED HAT CONSULTINGEstablish collaborative IT innovation by adopting container platforms to increase operational efficiency, reliability, and

scalability. Red Hat Consulting helps you:

RED HAT CONSULTING: MODERNIZE APPLICATION DELIVERY FOR CONTAINER PLATFORMS

DISCOVERY SESSION WORKSHOPS IMPLEMENTATION

Establish a unified culture and

strategy

Construct environments and

CD pipelines

Design microservices and

containerized applications

Establish and adapt security,

compliance, scaling and

monitoring standards

Improve operational efficiency,

scalability and flexibility

Page 26: Modernizing Your Enterprise Application Architecture with Microservices and API Management

plus.google.com/+RedHat

linkedin.com/company/red-hat

youtube.com/user/RedHatVideos

facebook.com/redhatinc

twitter.com/RedHatNews

THANK YOU