JHipster 4: Angular and Spring Boot – live blogging from spring days

JHipster 4: Bringing Together Angular and Spring Boot
Speaker: Yakov Fain
See list of all blog posts from conference

Random facts/quotes from pre JHipster demo

  • Can often judge a framework by how much/little need to do to get started.
  • Write in typescript and gets turned into JavaScript.
  • Pulled files from nodejs.org – which is like Maven Central for JavaScript.
  • ng serve – bundles up js files
  • showed npm scripts to build/deploy

JHipster

  • code generator
  • Based on Yeomen – another code generator

advanced spring boot with consul – live blogging from spring days

Advanced Spring Boot with Consul
Speaker: Michael Gendelman @MikeGendelman
See list of all blog posts from conference

“when someone writes something clever and leaves, that’s a problem”

“every time someone logs onto a box at a Fortune 500 company, it is a big deal”

Consul

  • for service discovery and configuration management
  • Consul agent – does health check and forwards queries. Runs on machine of all apps
  • Consul server – elects a leader. Want 3-5 per data center. Must have at least 3 so can elect leader
  • Has UI – can see properties/services/etc. Can update config in UI in addition to through yml files [talked about risk of having the real properties be out of sync of the yaml. Good that devops has evolved to the point this is a common worry]
  • Same executable for server and agent

Monitoring
“health of the service is more important than the health of a single instance”
Don’t need a page/alert if enough are still up

Code>

  • Use spring-cloud-starter-consul-all Maven dependency – made by an independent company
  • Have dev mode so can run in isolation but test all the features
  • annotation to enable discovery
  • Have bootstrap.yml file to set up config – instead of application.yml

thinks there is plugins/script to link version control to properties. good if need different properties in different environments

I learned enough about Spring Boot yesterday to be able to follow Mike’s example. Seeing the live demo of Consol was nice.

spring boot and actuators – live blogging from spring days

Spring Boot and Actuators
Speaker: John Humphreys
See list of all blog posts from conference

Spring Boot

  • makes it easy to create standalone apps
  • opinionated view of which third party libraries to use
  • 9 lines of code to get coding
  • can embed Tomcat or Undertwo in your app
  • No Spring config needed as defaults
  • Makes uberwar
  • Add 1 lines to run war as init.d service
  • many integrations
  • only need two maven dterations

9 lines of code
the 9 lines of code to get started are an annotation and a one ine main method
SpringApplcation run (MyApp.class,args);
The other lines are imports/class name/braces/etc

Annotation
@SpringBootApplicatoin replaces need for many other common spring annotations

  • @Configuraton – define beans in Java
  • EnableAutoConfiguration – configure beans
  • @ComponentScan – search for and wire up classes

Add an endpoint to actually do something. map URLs and functionality

Spring Boot Inititialzr – enter dependencies you want online and it gives you a working spring boot web service without needing dependencies

Maven

  • spring-boot-starter-pom parent pom so can get started.
  • spring-boot-starter-web dependency for deploying to Tomcat
  • spring-boot-starter-actuator – for monitoring the application
  • spring-boot-starter-hateos- for adding monitoring as REST endpoint and in browser
  • spring-boot-maven-plugin – creates uber war. has option to embed init.d support by setting &ltexecutable>true</executable>
  • spring-boot-admin-server-ui – minotrs and lets interact with app – just flag with @EnableAdminServer, can expose with JMX

application.properties – lets override defaults

actuator

  • for monitoring
  • provides a lot of URLs by default and can add more of your own
  • Each cluster has own actuator
  • Masks passwords by default
  • Very customizable
  • Can show live thread dumps
  • Text based – use UI dependency to see graphically

Overall – cool to see it built live – pieces are easy to understand. I didn’tknow what n actuator was so learned that too. I’ve only een the very basics of Spring Boot so this was a great first talk for me to hear. An embedded Tomcat is interesting. Easy because one thing. Tomcat has frequent patches though so definitely would want continuous deployment!