$30 off During Our Annual Pro Sale. View Details »

Serverless with Java @AUSOUG_Connect2018 Wellington

ivargrimstad
November 23, 2018

Serverless with Java @AUSOUG_Connect2018 Wellington

There are a couple of definitions out there for what serverless is or isn’t, one of them being stateless compute containers that last for only one invocation. This is better known as functions as a service or FaaS.

This session presents a gentle introduction to serverless and FaaS, what it means for developers, and why it is important to understand this paradigm. It then turns to solutions available for developing serverless applications, or functions, with Java.

The session is a mix of slides and live code demos.

ivargrimstad

November 23, 2018
Tweet

More Decks by ivargrimstad

Other Decks in Programming

Transcript

  1. @ivar_grimstad
    #serverless
    Serverless with Java
    Ivar Grimstad

    Principal Consultant, Cybercom Sweden

    View Slide

  2. @ivar_grimstad
    https://github.com/ivargrimstad
    https://www.linkedin.com/in/ivargrimstad

    View Slide

  3. @ivar_grimstad
    #Serverless

    View Slide

  4. @ivar_grimstad
    #microservices
    Serverless
    Implementations + Demos
    Summary

    View Slide

  5. @ivar_grimstad
    #Serverless
    What is Serverless?

    View Slide

  6. @ivar_grimstad
    #Serverless
    A Very Bad Name!

    View Slide

  7. @ivar_grimstad
    #Serverless
    There are Still Servers!

    View Slide

  8. @ivar_grimstad
    #Serverless
    …just…

    View Slide

  9. @ivar_grimstad
    #Serverless
    Someone Else’s Server

    View Slide

  10. @ivar_grimstad
    #Serverless
    What it Really is…

    View Slide

  11. @ivar_grimstad
    #Serverless
    No Server Management

    View Slide

  12. @ivar_grimstad
    #Serverless
    Scale Automatically

    View Slide

  13. @ivar_grimstad
    #Serverless
    Pay only while your code runs

    View Slide

  14. @ivar_grimstad
    #Serverless
    Runs code in response to Events

    View Slide

  15. @ivar_grimstad
    #Serverless
    Open and Familiar

    View Slide

  16. @ivar_grimstad
    #Serverless
    Serverless is
    also known as…

    View Slide

  17. @ivar_grimstad
    #Serverless
    Functions as a Service
    Cloud Functions

    View Slide

  18. @ivar_grimstad
    #Serverless
    Infrastructure
    Platform
    Containers
    Applications
    Functions

    View Slide

  19. @ivar_grimstad
    #Serverless
    Applications
    Functions
    Someone Else’s Job

    View Slide

  20. @ivar_grimstad
    #Serverless
    What about

    Architecture?

    View Slide

  21. @ivar_grimstad
    #Serverless
    Choreography over
    Orchestration

    View Slide

  22. @ivar_grimstad
    #Serverless
    What’s in it for the

    Developers

    View Slide

  23. @ivar_grimstad
    #Serverless
    Easier
    Faster
    Cheaper
    Powerful

    View Slide

  24. @ivar_grimstad
    #Serverless
    What’s in it for the

    Business

    View Slide

  25. @ivar_grimstad
    #Serverless
    Agility
    Innovation
    Cost Reduction

    View Slide

  26. @ivar_grimstad
    #Serverless
    Java Functions?

    View Slide

  27. @ivar_grimstad
    #Serverless

    View Slide

  28. @ivar_grimstad
    #Serverless
    What about

    Frameworks?

    View Slide

  29. @ivar_grimstad
    #Serverless
    FaaS Implementations

    View Slide

  30. @ivar_grimstad
    #Serverless
    Open FaaS
    https://www.openfaas.com/
    Python, Node.js, Go, C#, …

    View Slide

  31. @ivar_grimstad
    #Serverless
    Apache OpenWhisk
    https://openwhisk.apache.org
    Node.js, Swift, Java, Go, Python, PHP, Ruby

    View Slide

  32. @ivar_grimstad
    #Serverless
    Google Cloud Functions
    https://cloud.google.com/functions
    Node.js, Python

    View Slide

  33. @ivar_grimstad
    #Serverless
    Knative
    https://cloud.google.com/knative/
    Go, C#, Java, Kotlin, Rust, Python, Dart, …

    View Slide

  34. @ivar_grimstad
    #Serverless
    AWS Lambda
    https://aws.amazon.com/lambda
    Java, Node.js, C#, Python, …

    View Slide

  35. @ivar_grimstad
    #Serverless
    Demo

    View Slide

  36. @ivar_grimstad
    #Serverless
    IBM Cloud Functions
    https://www.ibm.com/cloud/functions
    Node.js, Swift, Java, Go, Python, PHP, Ruby

    View Slide

  37. @ivar_grimstad
    #Serverless
    Demo

    View Slide

  38. @ivar_grimstad
    #Serverless
    Azure Functions
    https://docs.microsoft.com/en-us/azure/azure-functions/
    C#, F#, JavaScript, Java, …

    View Slide

  39. @ivar_grimstad
    #Serverless
    Demo

    View Slide

  40. @ivar_grimstad
    #Serverless
    Fn Project
    https://fnproject.io/
    Node.js, Java, Go, Ruby, Python

    View Slide

  41. @ivar_grimstad
    #Serverless
    Demo

    View Slide

  42. @ivar_grimstad
    #Serverless
    Summary

    View Slide

  43. @ivar_grimstad
    #Serverless
    f(x)

    View Slide

  44. @ivar_grimstad
    #Serverless
    Samples
    https://github.com/ivargrimstad/function-duke
    FaaS Implementations (covered here)
    https://www.openfaas.com
    https://openwhisk.apache.org
    https://cloud.google.com/functions
    https://aws.amazon.com/lambda
    https://www.ibm.com/cloud/functions
    https://docs.microsoft.com/en-us/azure/azure-functions
    https://fnproject.io

    View Slide

  45. @ivar_grimstad
    #Serverless
    cybercom.com

    View Slide