Top Banner
Building Cloud Native Applications with WildFly Swarm and RHOAR A Practical Guide OpenShift Commons Briefing James Falkner Technical Marketing Manager Red Hat Middleware
16

OpenShift Commons Briefing A Practical Guide Building ... · Building Cloud Native Applications with WildFly Swarm and RHOAR ... cloud-native application runtimes and a guided ...

Jul 26, 2018

Download

Documents

phunghanh
Welcome message from author
This document is posted to help you gain knowledge. Please leave a comment to let me know what you think about it! Share it to your friends and learn new things together.
Transcript
Page 1: OpenShift Commons Briefing A Practical Guide Building ... · Building Cloud Native Applications with WildFly Swarm and RHOAR ... cloud-native application runtimes and a guided ...

Building Cloud Native Applications with WildFly Swarm and RHOAR

A Practical GuideOpenShift Commons Briefing

James FalknerTechnical Marketing Manager

Red Hat Middleware

Page 2: OpenShift Commons Briefing A Practical Guide Building ... · Building Cloud Native Applications with WildFly Swarm and RHOAR ... cloud-native application runtimes and a guided ...

RELATED OPENSHIFT COMMONS BRIEFINGScommons.openshift.org/events.html

• #97 RHOAR Explained

• September 27, 2017 - John Clingan

• #96 Building Cloud Native Apps with Spring Boot and RHOAR

• September 21, 2017 - Thomas Qvarnstrom

• # 101 Monoliths to Microservices: A Journey

• October 18, 2017 - James Falkner

Page 3: OpenShift Commons Briefing A Practical Guide Building ... · Building Cloud Native Applications with WildFly Swarm and RHOAR ... cloud-native application runtimes and a guided ...

Modern, cloud-native application runtimes and a guided developer experience for organizations that are moving beyond 3-tier architectures and embracing cloud-native application development.

Page 4: OpenShift Commons Briefing A Practical Guide Building ... · Building Cloud Native Applications with WildFly Swarm and RHOAR ... cloud-native application runtimes and a guided ...

SUPPORTED MICROSERVICES RUNTIMES

Reactive

Eclipse Vert.x

MicroProfile

WildFly Swarm

Server-side JS

Node.js

Java EE

JBoss EAP

TESTED AND VERIFIED MICROSERVICES FRAMEWORKS

Spring Boot Netflix RibbonNetflix Hystrix

Java EE Web

Embedded Tomcat

Modern, Cloud-Native Application Runtimes and A Guided Developer Experience

LAUNCH

Page 5: OpenShift Commons Briefing A Practical Guide Building ... · Building Cloud Native Applications with WildFly Swarm and RHOAR ... cloud-native application runtimes and a guided ...

RHOAR Release Channels

maven.repository.redhat.com (MRRC)

Red Hat Container Catalog (RHCC)

Customer Support Portal (repo downloads)

RH supported artifacts (tomcat, hibernate, …)

Page 6: OpenShift Commons Briefing A Practical Guide Building ... · Building Cloud Native Applications with WildFly Swarm and RHOAR ... cloud-native application runtimes and a guided ...

developers.redhat.com/launch

● Accelerate the learning / evaluation experience

● Collection of cloud native examples

● Leverage the platform

● Runs entirely in OpenShift○ On Desktop or OpenShift Online

● Spring Boot, Vert.x, WildFly Swarm, Node.js

Cloud Native Samples in the Cloud

Page 7: OpenShift Commons Briefing A Practical Guide Building ... · Building Cloud Native Applications with WildFly Swarm and RHOAR ... cloud-native application runtimes and a guided ...

WILDFLY SWARM

Page 8: OpenShift Commons Briefing A Practical Guide Building ... · Building Cloud Native Applications with WildFly Swarm and RHOAR ... cloud-native application runtimes and a guided ...

My Svc

Java EE microservices● Leverage Java EE expertise● Open standard● Microservices focus● Optimized for OpenShift● Super lightweight● MicroProfile Implementation

My Svc

JAX-RS

$ java -jar my_microservice.jar

Page 9: OpenShift Commons Briefing A Practical Guide Building ... · Building Cloud Native Applications with WildFly Swarm and RHOAR ... cloud-native application runtimes and a guided ...

● A tangible unit providing a specific piece of functionality● Embodied in a maven artifact● To support the compositional aspect in WF Swarm● Provides the “runtime” capabilities● Means to add API dependencies (e.g. JAX-RS)● Means to configure the system

○ With reasonable defaults● Means to discover other components (topology)● Means to alter deployments (e.g. keycloak)● Can be auto-detected or explicitly declared

WildFly Swarm “pieces” - Fractions

Page 10: OpenShift Commons Briefing A Practical Guide Building ... · Building Cloud Native Applications with WildFly Swarm and RHOAR ... cloud-native application runtimes and a guided ...

Tooling● Maven & Gradle plugins● JBoss Forge add-on

○ IDE Extension for Eclipse/JBDS/IntelliJ IDEA/NetBeans to generate code/scaffolding

● SwarmTool○ Standalone jar that is used to wrap an existing JAR or WAR file in a -swarm.jar without requiring

any other tooling● Project Generator

○ Akin to start.spring.io○ wildfly-swarm.io/generator

forge$ project-new --named demo --stack JAVA_EE_7forge$ wildfly-swarm-setupforge$ wildfly-swarm-new-test --target-package org.example.rest --named HelloWorldEndpointTest

Page 11: OpenShift Commons Briefing A Practical Guide Building ... · Building Cloud Native Applications with WildFly Swarm and RHOAR ... cloud-native application runtimes and a guided ...

Tooling - Project Generator (wildfly-swarm.io/generator)

Page 12: OpenShift Commons Briefing A Practical Guide Building ... · Building Cloud Native Applications with WildFly Swarm and RHOAR ... cloud-native application runtimes and a guided ...

● Health Checks

● Externalized Config

● Client-side discovery / load balancing

● Circuit Breaking / Bulkheading

● Logging / Monitoring / Tracing / Metrics

● Secure deployments with Keycloak

● MicroProfile

● API Documentation

Cloud Native Support

Page 13: OpenShift Commons Briefing A Practical Guide Building ... · Building Cloud Native Applications with WildFly Swarm and RHOAR ... cloud-native application runtimes and a guided ...

● Defines open source Java microservices specifications● Industry Collaboration - Red Hat, IBM, Payara, Tomitribe, London Java Community,

SouJava, Oracle, Hazelcast, Fujitsu, SmartBear...● WildFly Swarm is Red Hat’s implementation● Minimum footprint for Enterprise Java cloud-native services (v1.3) :

JSON-P 1.0 Health Check 1.0

CDI 1.2 JAX-RS 2.0

JWT Propagation 1.0

Fault Tolerance 1.0 Metrics 1.0

Config 1.1 OpenTracing 1.0

OpenAPI 1.0

RestClient 1.0

New in 1.3:

Page 14: OpenShift Commons Briefing A Practical Guide Building ... · Building Cloud Native Applications with WildFly Swarm and RHOAR ... cloud-native application runtimes and a guided ...

WILDFLY SWARMDEMO

github.com/jamesfalkner/rhoar-examples

Page 15: OpenShift Commons Briefing A Practical Guide Building ... · Building Cloud Native Applications with WildFly Swarm and RHOAR ... cloud-native application runtimes and a guided ...

● It’s AWESOME● Built on WildFly● Keeps Java EE developers in the game● Path to Microservices / Microprofile

Page 16: OpenShift Commons Briefing A Practical Guide Building ... · Building Cloud Native Applications with WildFly Swarm and RHOAR ... cloud-native application runtimes and a guided ...

THANKS!More Info:

https://developers.redhat.com/rhoar