Upgrade to Pro — share decks privately, control downloads, hide ads and more …

IoT powered by MicroProfile

IoT powered by MicroProfile

We are going to show you what happens when the management lets enterprise Java developers and architects decide how we can control the IoT devices in our new office. While it's easy to figure out why Microprofile is cool, it's harder to see how to get in into your project.

By the end of this talk, you will be introduced into the patterns and software in the enterprise world of Java explaining how to build a build a secure, stable, modular, and integrated system on an example of a completely over-engineered IoT solution to control the lights and plant's well-being in the new office.

Fear not if your system is more complex than controlling light bulbs and plants! This talk will show you how easily you can design a good production-ready Java full-stack system based on the Enterprise stack with Microprofile combined with good continuous deployment infrastructure patterns.

There be code, demos, and (buzzword) dragons.

52482b46b478633a2b766bbf36916fd3?s=128

Mads Opheim

May 23, 2019
Tweet

Transcript

  1. IoT powered by MicroProfile Mads Opheim Rustam Mehmandarov @madsopheim @rmehmandarov

    #DevSum19
  2. Hej! 2

  3. Why? 3 The Motivation

  4. New office, new lights Just Add Coffee. And Enterprise Developers.

    4
  5. 5 The Architecture

  6. MicroProfile In Practice. 6

  7. Community - individuals, organizations, vendors 7

  8. Current MicroProfile implementations 8

  9. 9 MicroProfile is lightweight! https://dzone.com/articles/microprofile-5-things-you-need-to-know

  10. 10 MicroProfile

  11. 11 MicroProfile in the Lightning Control Service

  12. 12 The Architecture

  13. 13 CDI

  14. 14 JAX-RS and JSON-P

  15. 15 MicroProfile in the Gateway Service

  16. 16 The Architecture

  17. 17 Config

  18. 18 Health Check: Response – Happy Days

  19. 19 Health Check: Response – Not So Happy Days

  20. 20 Health check: HowTo

  21. 21 Metrics

  22. 22 Application-specific metrics

  23. 23 Fault tolerance - retry and circuit breaker

  24. 24 Fault tolerance - timeout

  25. 25 Fault tolerance - fallback

  26. 26 REST Client

  27. 27 REST Client There be dragons. <rant />

  28. 28 Maturity...

  29. 29 MicroProfile in the Time and Weather Services

  30. 30 The Architecture

  31. 31 OpenAPI

  32. 32 OpenAPI

  33. 33 Things We’ve Learned

  34. New, cool things keep on coming! 34

  35. 35 Lombok - YAGNI?

  36. 36 Inject Logger - YAGNI?

  37. 37 A Better Logger

  38. App servers differ... 38

  39. 39

  40. 40 Other Cool Techy Stuff

  41. 41 Local Maven Repo

  42. 42 Faking an API

  43. 43

  44. Future Work 44

  45. 45 MicroProfile

  46. 46 Open Tracing

  47. 47 JWT Auth

  48. 48 MicroProfile: Roadmap

  49. 49

  50. 50

  51. 51

  52. Everything’s on GitHub! 52 https://github.com/mehmandarov/microprofile-iot

  53. Still interested? https://microprofile.io 53

  54. And…. Last but not least – don’t forget to evaluate

    this session in the DevSum app! #DevSum19
  55. Thanks! @MadsOpheim @RMehmandarov mop@computas.com rm@computas.com #DevSum19