springboot + jrebel + cf

19
Unless otherwise indicated, these slides are © 2013-2015 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ SPRINGONE2GX WASHINGTON, DC Spring Boot + JRebel + CF By Josh Long @starbuxman By Adam Koblentz @akoblentz

Upload: spring-io

Post on 08-Feb-2017

841 views

Category:

Technology


0 download

TRANSCRIPT

Page 1: Springboot + JRebel + CF

Unless otherwise indicated, these s l ides are © 2013-2015 Pivotal Software, Inc. and l icensed under a Creat ive Commons Attr ibut ion-NonCommercial l icense: ht tp: / /creat ivecommons.org/ l icenses/by-nc/3.0/

SPRINGONE2GXWASHINGTON, DC

Spring Boot + JRebel + CFBy Josh Long

@starbuxman

By Adam Koblentz @akoblentz

Page 2: Springboot + JRebel + CF

Unless otherwise indicated, these s l ides are © 2013-2015 Pivotal Software, Inc. and l icensed under a Creat ive Commons Attr ibut ion-NonCommercial l icense: ht tp: / /creat ivecommons.org/ l icenses/by-nc/3.0/ 2

Adam Koblentz

@akoblentz [email protected]

Product Marketing Manager - JRebel, ZeroTurnaround

Used to write enterprise Java code for a financial company, now tries to improve the lives of Java developers everywhere

Page 3: Springboot + JRebel + CF

Josh Long (⻰龙之春) the Spring Developer Advocate

• http://cloudnativejava.io • @starbuxman • [email protected] • Java Champion • open-source contributor

(Spring Boot, Spring Cloud, Spring Integration, Vaadin, Activiti, etc etc)

Page 4: Springboot + JRebel + CF
Page 5: Springboot + JRebel + CF

Unless otherwise indicated, these s l ides are © 2013-2015 Pivotal Software, Inc. and l icensed under a Creat ive Commons Attr ibut ion-NonCommercial l icense: ht tp: / /creat ivecommons.org/ l icenses/by-nc/3.0/ 5

Revolutionary tools for developing quality software faster.

Page 6: Springboot + JRebel + CF

Unless otherwise indicated, these s l ides are © 2013-2015 Pivotal Software, Inc. and l icensed under a Creat ive Commons Attr ibut ion-NonCommercial l icense: ht tp: / /creat ivecommons.org/ l icenses/by-nc/3.0/ 6

• Stop Redeploying • Reload Code Changes Instantly • Over 65,000 Happy Users

Page 7: Springboot + JRebel + CF

Unless otherwise indicated, these s l ides are © 2013-2015 Pivotal Software, Inc. and l icensed under a Creat ive Commons Attr ibut ion-NonCommercial l icense: ht tp: / /creat ivecommons.org/ l icenses/by-nc/3.0/

What is JRebel

7

Reload Code Changes Instantly

Unlike built-in HotSwap, JRebel does not require debug mode, and supports class schema changes like adding methods or fields.

JRebel supports: • Java classes

• Resource files

• 100+ frameworks and their configurations

Page 8: Springboot + JRebel + CF

Unless otherwise indicated, these s l ides are © 2013-2015 Pivotal Software, Inc. and l icensed under a Creat ive Commons Attr ibut ion-NonCommercial l icense: ht tp: / /creat ivecommons.org/ l icenses/by-nc/3.0/

Why use JRebel

8

Developers on average spend one full work month per year

waiting for redeploys

With JRebel • Reload code changes instantly. Code, save, refresh.• Finish sprints on time

• Go home on time, don’t cut feature scope.• JRebel increases team velocity by up to 40% (backed by

surveys and case studies)• Change anything

• JRebel allows you to change your code and frameworks, regardless of your app’s complexity.

Page 9: Springboot + JRebel + CF

Unless otherwise indicated, these s l ides are © 2013-2015 Pivotal Software, Inc. and l icensed under a Creat ive Commons Attr ibut ion-NonCommercial l icense: ht tp: / /creat ivecommons.org/ l icenses/by-nc/3.0/ 9

Page 10: Springboot + JRebel + CF

Unless otherwise indicated, these s l ides are © 2013-2015 Pivotal Software, Inc. and l icensed under a Creat ive Commons Attr ibut ion-NonCommercial l icense: ht tp: / /creat ivecommons.org/ l icenses/by-nc/3.0/ 10

Page 11: Springboot + JRebel + CF

Unless otherwise indicated, these s l ides are © 2013-2015 Pivotal Software, Inc. and l icensed under a Creat ive Commons Attr ibut ion-NonCommercial l icense: ht tp: / /creat ivecommons.org/ l icenses/by-nc/3.0/ 11

Page 12: Springboot + JRebel + CF

Unless otherwise indicated, these s l ides are © 2013-2015 Pivotal Software, Inc. and l icensed under a Creat ive Commons Attr ibut ion-NonCommercial l icense: ht tp: / /creat ivecommons.org/ l icenses/by-nc/3.0/

Let’s write code!

12

Page 13: Springboot + JRebel + CF

Unless otherwise indicated, these s l ides are © 2013-2015 Pivotal Software, Inc. and l icensed under a Creat ive Commons Attr ibut ion-NonCommercial l icense: ht tp: / /creat ivecommons.org/ l icenses/by-nc/3.0/

Let’s write code!

13

Page 14: Springboot + JRebel + CF

Unless otherwise indicated, these s l ides are © 2013-2015 Pivotal Software, Inc. and l icensed under a Creat ive Commons Attr ibut ion-NonCommercial l icense: ht tp: / /creat ivecommons.org/ l icenses/by-nc/3.0/

How do I get JRebel

14

Install JRebel through IDE marketplace or plugin directory

Also available as a zip file

Page 15: Springboot + JRebel + CF

Unless otherwise indicated, these s l ides are © 2013-2015 Pivotal Software, Inc. and l icensed under a Creat ive Commons Attr ibut ion-NonCommercial l icense: ht tp: / /creat ivecommons.org/ l icenses/by-nc/3.0/

How does JRebel work

15

• Local, Remote, or the Cloud• Make code changes• Compile the class• Use the new code

• Workspace mapping• Static content is served from workspace• Classpath resources are reloaded into JVM• Everything’s done in-memory

Page 16: Springboot + JRebel + CF

Unless otherwise indicated, these s l ides are © 2013-2015 Pivotal Software, Inc. and l icensed under a Creat ive Commons Attr ibut ion-NonCommercial l icense: ht tp: / /creat ivecommons.org/ l icenses/by-nc/3.0/

JRebel Architecture

16

On the server• JAVA_OPTS for javaagent or agentpath with native library• Optional java option for remoting (CloudFoundry?!)

Page 17: Springboot + JRebel + CF

Unless otherwise indicated, these s l ides are © 2013-2015 Pivotal Software, Inc. and l icensed under a Creat ive Commons Attr ibut ion-NonCommercial l icense: ht tp: / /creat ivecommons.org/ l icenses/by-nc/3.0/

JRebel Architecture

17

In the application• rebel.xml file maps out classpath and static resource locations in the

workspace• Optional rebel-remote.xml contains security and other necessary bits

for remote server support

Page 18: Springboot + JRebel + CF

Unless otherwise indicated, these s l ides are © 2013-2015 Pivotal Software, Inc. and l icensed under a Creat ive Commons Attr ibut ion-NonCommercial l icense: ht tp: / /creat ivecommons.org/ l icenses/by-nc/3.0/

JRebel Architecture

18

In the IDE• JRebel plugin - generates XML files for you, plugin is required for

remoting.

Page 19: Springboot + JRebel + CF

Unless otherwise indicated, these s l ides are © 2013-2015 Pivotal Software, Inc. and l icensed under a Creat ive Commons Attr ibut ion-NonCommercial l icense: ht tp: / /creat ivecommons.org/ l icenses/by-nc/3.0/ 19

§ Stop Redeploying

§ View Code Changes Instantly

§ Over 65,000 happy users

§ $1 per day ($365/year)

§ Save 5+ weeks per year

§ Go home and see your kids!