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.

Functions: Implement Once, Execute Anywhere!

SpringOne 2020
Oleg Zhurakousky: Software Engineer, VMware

  • Be the first to comment

Functions: Implement Once, Execute Anywhere!

  1. 1. Confidential │ ©2019 VMware, Inc. Spring Cloud Functions write once run anywhere! SpringOne 2020 Oleg Zhurakousky Spring Engineering
  2. 2. Confidential │ ©2019 VMware, Inc. 2 ● Scope ● Deep(ish) dive into Spring Cloud Function ● Run anywhere part Spring Cloud Function - agenda
  3. 3. Confidential │ ©2019 VMware, Inc. 3 java.util.function.Supplier<?> java.util.function.Function<?,?> java.util.function.Consumer<?> POJO function Spring Cloud Function - scope
  4. 4. Confidential │ ©2019 VMware, Inc. 4 ● Promote implementation of business logic via java Functions ● Uniformed and portable programming model ○ Transparent Type Conversion ○ Function Composition ○ POJO functions (if it looks/smells like a function it must be a function) ○ Reactive support ○ Deployment of packaged functions ○ Arity - functions with multiple inputs/outputs ● Integration with serverless platforms ○ Amazon AWS ○ Google Cloud Functions ○ Microsoft Azure Spring Cloud Function
  5. 5. Confidential │ ©2019 VMware, Inc. 5 <Demo>
  6. 6. Confidential │ ©2019 VMware, Inc. 6 Why Spring Cloud Function
  7. 7. Confidential │ ©2019 VMware, Inc. 7
  8. 8. Confidential │ ©2019 VMware, Inc. 8 FUNCTION Why Functions? uppercase
  9. 9. Confidential │ ©2019 VMware, Inc. 9 FUNCTION Why Functions? uppercase
  10. 10. Confidential │ ©2019 VMware, Inc. 10 HTTP Why Functions? post/get/... uppercase
  11. 11. Confidential │ ©2019 VMware, Inc. 11 RSocket Why Functions? requestResponse() uppercase
  12. 12. Confidential │ ©2019 VMware, Inc. 12 RSocket Why Functions? requestResponse() fireAndForget() requestStream() uppercase
  13. 13. Confidential │ ©2019 VMware, Inc. 13 Serverless platforms Why Functions? AWS/Azure/Google uppercase
  14. 14. Confidential │ ©2019 VMware, Inc. 14 RabbitMQKafka Messaging Why Functions? uppercase
  15. 15. Confidential │ ©2019 VMware, Inc. 15 Why Functions? uppercase
  16. 16. Confidential │ ©2019 VMware, Inc. 16 <Demo>
  17. 17. Confidential │ ©2019 VMware, Inc. 17 ● Functions are simple, expressive, extensible and portable ● Most if not all requirements could be expressed with functions. ● Testing your functional application becomes very simple - you only need to test the function itself ● And list of benefits goes on. . . Summary!
  18. 18. Confidential │ ©2019 VMware, Inc. 18

×