Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Java Buildpack Developer Enhancements

547 views

Published on

SpringOne Platform 2016
Speaker: Ben Hale; Cloud Foundry Java Lead, Pivotal.


Over the years, the Java Experience team has worked hard to ensure that Cloud Foundry was the best place to run Java applications in the cloud. As that support has matured we’ve turned our attention to the developer experience. In this session, you’ll hear from the lead developer of the buildpack about the new support for JMX access, debugging, and profiling. Rounding out this session will be a short tour of other production features added recently.

Published in: Technology
  • Be the first to comment

  • Be the first to like this

Java Buildpack Developer Enhancements

  1. 1. Unless otherwise indicated, these slides are © 2013-2016 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Java Buildpack Developer Enhancements Ben Hale @nebhale
  2. 2. Unless otherwise indicated, these slides are © 2013-2016 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Cloud Foundry – The Best Place to Run Java • Over the last couple of years, the team has pushed very hard to be the best place to run Java applications • These efforts have focused on production workloads • 8 JVM application types • 5 Application Performance Monitor providers • Hardware Security Modules 2
  3. 3. Unless otherwise indicated, these slides are © 2013-2016 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Production is Not Development • The focus on production is because the experience of developing inside a container isn’t great • However, there are times when you just need to see what’s going on inside the container • The core ideas isolation and immutable infrastructure are at odds with container access 3
  4. 4. Unless otherwise indicated, these slides are © 2013-2016 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ JMX, Debugging, and Profiling • Cloud Foundry provides first-class support for JMX, Debugging, and the YourKit Profiler • Based on the new(-ish) Cloud Foundry SSH container access • Requires Pivotal Cloud Foundry 1.6+, Java Buildpack 3.4+ 4
  5. 5. Unless otherwise indicated, these slides are © 2013-2016 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ SSH Container Access
  6. 6. Unless otherwise indicated, these slides are © 2013-2016 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ JMX • Supports JConsole or VisualVM • Configuration • Enabled/Disabled • Port 6
  7. 7. Unless otherwise indicated, these slides are © 2013-2016 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ JMX 7 $ cf set-env java-main-application JBP_CONFIG_JMX ’{enabled: true}' ... $ cf restage java-main-application ... $ cf ssh -N -T -L 5000:localhost:5000 java-main- application
  8. 8. Unless otherwise indicated, these slides are © 2013-2016 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ JMX
  9. 9. Unless otherwise indicated, these slides are © 2013-2016 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Debug • Supports all IDE debuggers • Configuration • Enabled/Disabled • Port • Suspend on Start 9
  10. 10. Unless otherwise indicated, these slides are © 2013-2016 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Debug 10 $ cf set-env java-main-application JBP_CONFIG_DEBUG ’{enabled: true}' ... $ cf restage java-main-application ... $ cf ssh -N -T -L 8000:localhost:8000 java-main- application
  11. 11. Unless otherwise indicated, these slides are © 2013-2016 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Debug
  12. 12. Unless otherwise indicated, these slides are © 2013-2016 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ YourKit Profiler • Supports many versions of the YourKit Profiler • If you have prefer something else, let me know • Configuration • Session Name • Enabled/Disabled • Port • Version 12
  13. 13. Unless otherwise indicated, these slides are © 2013-2016 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ YourKit Profiler 13 $ cf set-env java-main-application JBP_CONFIG_YOUR_KIT_PROFILER ’{enabled: true}' ... $ cf restage java-main-application ... $ cf ssh -N -T -L 10001:localhost:10001 java-main-application
  14. 14. Unless otherwise indicated, these slides are © 2013-2016 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ YourKit Profiler
  15. 15. Unless otherwise indicated, these slides are © 2013-2016 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Developer Enhancements • Based on Cloud Foundry SSH access • Currently comprised of JMX, Debug, and the YourKit Profiler • We’re not done yet • Let us know what tools you’d like to use in Cloud Foundry 15
  16. 16. Unless otherwise indicated, these slides are © 2013-2016 Pivotal Software, Inc. and licensed under a Creative Commons Attribution-NonCommercial license: http://creativecommons.org/licenses/by-nc/3.0/ Learn More. Stay Connected. https://github.com/nebhale/java-buildpack @springcentral spring.io/blog @pivotal pivotal.io/blog @pivotalcf http://engineering.pivotal.io

×