Badass Microservices - deploy, build & scale your apps with Payara Micro

Preview:

Citation preview

@navssurtani#Devoxx #BadassFish

Badass MicroservicesNavin Surtani

PayaraC2B2 Consulting

@navssurtani#Devoxx #BadassFish

Who is Navin?• Worked on JBoss open

source projects since 2008

• Current C2B2 Consultant

• Payara Dev

@navssurtani#Devoxx #BadassFish

What is this talk about?• Brief introduction to Payara Micro

• How can I use it?

• Let’s hope a demo works!

@navssurtani#Devoxx #BadassFish

What is Payara Micro?• A full-blown Java EE

app-server

• Just a web-container

• A container for massive, monolithic applications

What is isn’t Payara Micro?

@navssurtani#Devoxx #BadassFish

So, yeah, cool, MICROSERVICES!

@navssurtani#Devoxx #BadassFish

So, yeah, cool, MICROSERVICES!

@navssurtani#Devoxx #BadassFish

Take a web container - add in some EE API’s

• And poof … Payara Micro

• Based off of GlassFish Embedded• For the web profile

• Deploy a .war through the command line

• Create a fat .jar with a main() method

Demo

@navssurtani#Devoxx #BadassFish

@navssurtani#Devoxx #BadassFish

Demo

@navssurtani#Devoxx #BadassFish

@navssurtani#Devoxx #BadassFish

@navssurtani#Devoxx #BadassFish

What did we see?• Deployed a web-app through the command line

• Build some REST-ful services• via standard EE API’s

• Tested cluster discovery and failover

@navssurtani#Devoxx #BadassFish

@navssurtani#Devoxx #BadassFish

public class EmbeddedPayara {

public static void main(String[] args) throws BootstrapException { PayaraMicro.getInstance() .addDeployment("test.war") .bootStrap(); } }

Appendix - Embed application

@navssurtani#Devoxx #BadassFish

Appendix - Supported APIs• Servlets JSTL, EL and

JSP’s• WebSockets• JSF• JAX-RS• EJB lite• JPA

• Bean Validation• CDI• Interceptors• Batch• Concurrency• JCache