SlideShare a Scribd company logo
The following is intended to outline our general product direction. It
is intended for information purposes only, and may not be
incorporated into any contract. It is not a commitment to deliver any
material, code, or functionality, and should not be relied upon in
making purchasing decisions. All rights reserved. Timing of any
features or functionality described for Oracle’s products remains at
the sole discretion of Oracle
Democratizing Serverless
Open-Source is for everyone!
Matthew Gilliard
@MaximumGilliard
Team
Fn is an
Open-Source Serverless
Compute Platform
What even is an
Open-Source Serverless
Compute Platform
Functions-as-a-Service
Why Serverless?
Answers for developers:
● Easier: Just code, not infrastructure
● Powerful: Transparent and limitless* scaling
● Faster: Code, Test, Deploy, Iterate
● Cheaper: Try stuff out for microdollars
* limits may apply
Why Serverless?
Answers for managers:
● Cost Reduction: Pay according to demand. Reduce op-ex.
● Agility: Dev teams get faster with less fewer dependencies
● Reliability: is a platform responsibility
● Innovation: easy and cheap to try things out
● Higher density: That hardware was *expensive*
● Security: User has fewer responsibilities
● Economy of Scale: We centralise a lot of things
● Marketplace: users actually want it!
Why Serverless?
Answers for FaaS operators (i.e. ):
-flavoured FaaS
● Deploy to any cloud, or on-premise, or...
● Containers are primitives
● Independent yet vendor backed (by us)
● Strong enterprise focus
Containers vs Functions
Function is a container with a
set of known traits:
● Short running
● Ephemeral / event-driven
● Stateless
How does one
use Fn?
Democratizing Serverless: the New Open Source, Cloud Agnostic Functions Platform - Matthew Gilliard - Codemotion Amsterdam 2018
Anatomy of an Fn Function
● Some code wrapped into a container image
● Gets input via STDIN and environment
● Produces output to STDOUT
● Logs to STDERR
Input format
Currently looks like this:
Input format
JUST ANNOUNCED HOT NEWS EVERYONE:
Fn CLI
● fn init --runtime go
● fn run
● fn deploy --app myapp
● fn call myapp myfunc
or: curl -v ${FN_API_URL}/r/myapp/myfunc
fn deploy
1. Builds container (multi-stage) + bumps version
2. Pushes container to registry
3. Creates/updates function route (servers lazy load images)
MyFunc:0.0.2
MyFunc:0.0.2 MyFunc:0.0.2
Your code
Fn Service
myfunc →
/r/myapp/myfunc:0.0.2
1 2 3
Function Development Kits (FDKs)
● Used to help with parsing input and writing output
● Familiar syntax for Lambda developers
● Simply write a `handler` function that adheres to the FDK’s
interface and it will parse STDIN and provide the input data to
your function and deal with writing the proper output format.
● Makes it a lot easier to write hot functions
Small images are better. Read
up on “multistage builds” if you
don’t already know about that.
Support for languages
So long as you have:
● a func.yaml
● a Dockerfile
you’re good to go.
Request Flow
Democratizing Serverless: the New Open Source, Cloud Agnostic Functions Platform - Matthew Gilliard - Codemotion Amsterdam 2018
Kubernetes
● Fn is does not *require* K8S, but lots of optimization work
optimiz for it
● Helm chart available at https://github.com/fnproject/fn-helm
● Investigating deeper Kubernetes integrations including CRD’s
to model functions
Why not K8S ALL THE THINGS!?
1. Speed
a. Pod launch time is too slow/unpredictable for synchronous
requests
b. STDIO is not easily accessible from container in a k8s pod
2. Scale
a. Runs out of addressable network space quickly
b. Functions easily scale to the hundreds of thousands / millions
What’s next for Fn?
1. Hosted Fn-as-a-Service
2. More contributors (could it be you?)
3. More collaboration and standardization
Thank you!
1. Star the project: github.com/fnproject/fn
2. Join the conversation: slack.fnproject.io
3. Learn more: fnproject.io
I’ve been Matthew Gilliard
Get Involved!

More Related Content

What's hot (20)

PDF
Intoduction to lagom framework
Knoldus Inc.
 
PPTX
Distribute your code with NUget and build vNext
Gian Maria Ricci
 
PDF
Brad wood - 5 CommandBox Modules You Should Be Using [Into The Box 2020]
Ortus Solutions, Corp
 
PDF
Devops and the New Culture
Christophe Marchal
 
PPTX
Introduction to Application insights
Gian Maria Ricci
 
PDF
'Effective node.js development' by Viktor Turskyi at OdessaJS'2020
OdessaJS Conf
 
PDF
Splunk conf2014 - Using Selenium and Splunk for Transaction Monitoring Insight
Splunk
 
DOCX
Branching and merging strategy
Rahul Janghel
 
PDF
Continuous Integration - What even is it?
Rob Jacoby
 
PDF
Brad wood - Integrating MVC Into Legacy [Into The Box 2020]
Ortus Solutions, Corp
 
PPTX
How to deploy your Apps in serverless-way using App Engine.pptx
Institut Teknologi Sepuluh Nopember Surabaya
 
PPTX
OpenNfv Talk On Kubernetes and Network Function Virtualization
Glenn West
 
PPTX
PowerShell DSC Partial Configurations and Cross-node Synchronization
Ravikanth Chaganti
 
PDF
Continuous Delivery with TeamCity
Volodymyr Melymuka
 
PDF
Integration Testing in AEM
connectwebex
 
PPTX
Ruby in mule
Ramakrishna kapa
 
PPTX
Power shell saturday ravikanth
Ravikanth Chaganti
 
PDF
Meta Infrastructure as Code: How Capital One Automated Our Automation Tools w...
Sonatype
 
PDF
'How to build efficient backend based on microservice architecture' by Anton ...
OdessaJS Conf
 
PDF
An intro to git
Dan Shrader
 
Intoduction to lagom framework
Knoldus Inc.
 
Distribute your code with NUget and build vNext
Gian Maria Ricci
 
Brad wood - 5 CommandBox Modules You Should Be Using [Into The Box 2020]
Ortus Solutions, Corp
 
Devops and the New Culture
Christophe Marchal
 
Introduction to Application insights
Gian Maria Ricci
 
'Effective node.js development' by Viktor Turskyi at OdessaJS'2020
OdessaJS Conf
 
Splunk conf2014 - Using Selenium and Splunk for Transaction Monitoring Insight
Splunk
 
Branching and merging strategy
Rahul Janghel
 
Continuous Integration - What even is it?
Rob Jacoby
 
Brad wood - Integrating MVC Into Legacy [Into The Box 2020]
Ortus Solutions, Corp
 
How to deploy your Apps in serverless-way using App Engine.pptx
Institut Teknologi Sepuluh Nopember Surabaya
 
OpenNfv Talk On Kubernetes and Network Function Virtualization
Glenn West
 
PowerShell DSC Partial Configurations and Cross-node Synchronization
Ravikanth Chaganti
 
Continuous Delivery with TeamCity
Volodymyr Melymuka
 
Integration Testing in AEM
connectwebex
 
Ruby in mule
Ramakrishna kapa
 
Power shell saturday ravikanth
Ravikanth Chaganti
 
Meta Infrastructure as Code: How Capital One Automated Our Automation Tools w...
Sonatype
 
'How to build efficient backend based on microservice architecture' by Anton ...
OdessaJS Conf
 
An intro to git
Dan Shrader
 

Similar to Democratizing Serverless: the New Open Source, Cloud Agnostic Functions Platform - Matthew Gilliard - Codemotion Amsterdam 2018 (20)

PPTX
The FN Project by Maximilian Jerg
Harald Schmaldienst
 
PDF
Why Pay for Open Source Linux? Avoid the Hidden Cost of DIY
Enterprise Management Associates
 
PDF
Devops with Python by Yaniv Cohen DevopShift
Yaniv cohen
 
PDF
The Fn Project: A Quick Introduction (December 2017)
Oracle Developers
 
PDF
Codecoon - A technical Case Study
Michael Lihs
 
PDF
Open Source Serverless: a practical view. - Gabriele Provinciali Luca Postacc...
Codemotion
 
PDF
Preparing for Neo - Singapore OutSystems User Group October 2022 Meetup
YashrajNayak4
 
PPTX
Democratizing Serverless
Shaun Smith
 
PPTX
Not my problem - Delegating responsibility to infrastructure
Yshay Yaacobi
 
PDF
The Fn Project by Jesse Butler
Oracle Developers
 
PDF
Serverless Boston @ Oracle Meetup
Wayne Scarano
 
PPTX
KCD Munich - Cloud Native Platform Dilemma - Turning it into an Opportunity
Andreas Grabner
 
PDF
OSMC 2012 | Shinken by Jean Gabès
NETWAYS
 
PDF
DevOps Fest 2020. immutable infrastructure as code. True story.
Vlad Fedosov
 
PDF
Pivotal Cloud Foundry 2.4: A First Look
VMware Tanzu
 
PPTX
Mulesoft Meetup Milano #9 - Batch Processing and CI/CD
Gonzalo Marcos Ansoain
 
PDF
Software Delivery in 2016 - A Continuous Delivery Approach
Giovanni Toraldo
 
PPTX
Building CI_CD for Mobile Development.pptx
GurzuInc
 
PDF
Introduction to DL-BUILDER
ssuserc37b5e
 
PDF
Migrating .NET Apps to CF, A Strategy for Enterprises
VMware Tanzu
 
The FN Project by Maximilian Jerg
Harald Schmaldienst
 
Why Pay for Open Source Linux? Avoid the Hidden Cost of DIY
Enterprise Management Associates
 
Devops with Python by Yaniv Cohen DevopShift
Yaniv cohen
 
The Fn Project: A Quick Introduction (December 2017)
Oracle Developers
 
Codecoon - A technical Case Study
Michael Lihs
 
Open Source Serverless: a practical view. - Gabriele Provinciali Luca Postacc...
Codemotion
 
Preparing for Neo - Singapore OutSystems User Group October 2022 Meetup
YashrajNayak4
 
Democratizing Serverless
Shaun Smith
 
Not my problem - Delegating responsibility to infrastructure
Yshay Yaacobi
 
The Fn Project by Jesse Butler
Oracle Developers
 
Serverless Boston @ Oracle Meetup
Wayne Scarano
 
KCD Munich - Cloud Native Platform Dilemma - Turning it into an Opportunity
Andreas Grabner
 
OSMC 2012 | Shinken by Jean Gabès
NETWAYS
 
DevOps Fest 2020. immutable infrastructure as code. True story.
Vlad Fedosov
 
Pivotal Cloud Foundry 2.4: A First Look
VMware Tanzu
 
Mulesoft Meetup Milano #9 - Batch Processing and CI/CD
Gonzalo Marcos Ansoain
 
Software Delivery in 2016 - A Continuous Delivery Approach
Giovanni Toraldo
 
Building CI_CD for Mobile Development.pptx
GurzuInc
 
Introduction to DL-BUILDER
ssuserc37b5e
 
Migrating .NET Apps to CF, A Strategy for Enterprises
VMware Tanzu
 
Ad

More from Codemotion (20)

PDF
Fuzz-testing: A hacker's approach to making your code more secure | Pascal Ze...
Codemotion
 
PDF
Pompili - From hero to_zero: The FatalNoise neverending story
Codemotion
 
PPTX
Pastore - Commodore 65 - La storia
Codemotion
 
PPTX
Pennisi - Essere Richard Altwasser
Codemotion
 
PPTX
Michel Schudel - Let's build a blockchain... in 40 minutes! - Codemotion Amst...
Codemotion
 
PPTX
Richard Süselbeck - Building your own ride share app - Codemotion Amsterdam 2019
Codemotion
 
PPTX
Eward Driehuis - What we learned from 20.000 attacks - Codemotion Amsterdam 2019
Codemotion
 
PPTX
Francesco Baldassarri - Deliver Data at Scale - Codemotion Amsterdam 2019 -
Codemotion
 
PDF
Martin Förtsch, Thomas Endres - Stereoscopic Style Transfer AI - Codemotion A...
Codemotion
 
PDF
Melanie Rieback, Klaus Kursawe - Blockchain Security: Melting the "Silver Bul...
Codemotion
 
PDF
Angelo van der Sijpt - How well do you know your network stack? - Codemotion ...
Codemotion
 
PDF
Lars Wolff - Performance Testing for DevOps in the Cloud - Codemotion Amsterd...
Codemotion
 
PDF
Sascha Wolter - Conversational AI Demystified - Codemotion Amsterdam 2019
Codemotion
 
PDF
Michele Tonutti - Scaling is caring - Codemotion Amsterdam 2019
Codemotion
 
PPTX
Pat Hermens - From 100 to 1,000+ deployments a day - Codemotion Amsterdam 2019
Codemotion
 
PPTX
James Birnie - Using Many Worlds of Compute Power with Quantum - Codemotion A...
Codemotion
 
PDF
Don Goodman-Wilson - Chinese food, motor scooters, and open source developmen...
Codemotion
 
PDF
Pieter Omvlee - The story behind Sketch - Codemotion Amsterdam 2019
Codemotion
 
PDF
Dave Farley - Taking Back “Software Engineering” - Codemotion Amsterdam 2019
Codemotion
 
PDF
Joshua Hoffman - Should the CTO be Coding? - Codemotion Amsterdam 2019
Codemotion
 
Fuzz-testing: A hacker's approach to making your code more secure | Pascal Ze...
Codemotion
 
Pompili - From hero to_zero: The FatalNoise neverending story
Codemotion
 
Pastore - Commodore 65 - La storia
Codemotion
 
Pennisi - Essere Richard Altwasser
Codemotion
 
Michel Schudel - Let's build a blockchain... in 40 minutes! - Codemotion Amst...
Codemotion
 
Richard Süselbeck - Building your own ride share app - Codemotion Amsterdam 2019
Codemotion
 
Eward Driehuis - What we learned from 20.000 attacks - Codemotion Amsterdam 2019
Codemotion
 
Francesco Baldassarri - Deliver Data at Scale - Codemotion Amsterdam 2019 -
Codemotion
 
Martin Förtsch, Thomas Endres - Stereoscopic Style Transfer AI - Codemotion A...
Codemotion
 
Melanie Rieback, Klaus Kursawe - Blockchain Security: Melting the "Silver Bul...
Codemotion
 
Angelo van der Sijpt - How well do you know your network stack? - Codemotion ...
Codemotion
 
Lars Wolff - Performance Testing for DevOps in the Cloud - Codemotion Amsterd...
Codemotion
 
Sascha Wolter - Conversational AI Demystified - Codemotion Amsterdam 2019
Codemotion
 
Michele Tonutti - Scaling is caring - Codemotion Amsterdam 2019
Codemotion
 
Pat Hermens - From 100 to 1,000+ deployments a day - Codemotion Amsterdam 2019
Codemotion
 
James Birnie - Using Many Worlds of Compute Power with Quantum - Codemotion A...
Codemotion
 
Don Goodman-Wilson - Chinese food, motor scooters, and open source developmen...
Codemotion
 
Pieter Omvlee - The story behind Sketch - Codemotion Amsterdam 2019
Codemotion
 
Dave Farley - Taking Back “Software Engineering” - Codemotion Amsterdam 2019
Codemotion
 
Joshua Hoffman - Should the CTO be Coding? - Codemotion Amsterdam 2019
Codemotion
 
Ad

Recently uploaded (20)

PDF
Staying Human in a Machine- Accelerated World
Catalin Jora
 
PDF
Go Concurrency Real-World Patterns, Pitfalls, and Playground Battles.pdf
Emily Achieng
 
PDF
Mastering Financial Management in Direct Selling
Epixel MLM Software
 
PDF
The Rise of AI and IoT in Mobile App Tech.pdf
IMG Global Infotech
 
PPTX
Building Search Using OpenSearch: Limitations and Workarounds
Sease
 
PDF
Exolore The Essential AI Tools in 2025.pdf
Srinivasan M
 
PDF
LOOPS in C Programming Language - Technology
RishabhDwivedi43
 
PPTX
AI Penetration Testing Essentials: A Cybersecurity Guide for 2025
defencerabbit Team
 
PDF
[Newgen] NewgenONE Marvin Brochure 1.pdf
darshakparmar
 
PPTX
Webinar: Introduction to LF Energy EVerest
DanBrown980551
 
PDF
Smart Trailers 2025 Update with History and Overview
Paul Menig
 
PPTX
Q2 FY26 Tableau User Group Leader Quarterly Call
lward7
 
DOCX
Cryptography Quiz: test your knowledge of this important security concept.
Rajni Bhardwaj Grover
 
PPTX
WooCommerce Workshop: Bring Your Laptop
Laura Hartwig
 
PDF
Transforming Utility Networks: Large-scale Data Migrations with FME
Safe Software
 
DOCX
Python coding for beginners !! Start now!#
Rajni Bhardwaj Grover
 
PDF
New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
PDF
Jak MŚP w Europie Środkowo-Wschodniej odnajdują się w świecie AI
dominikamizerska1
 
PDF
CIFDAQ Market Wrap for the week of 4th July 2025
CIFDAQ
 
PDF
IoT-Powered Industrial Transformation – Smart Manufacturing to Connected Heal...
Rejig Digital
 
Staying Human in a Machine- Accelerated World
Catalin Jora
 
Go Concurrency Real-World Patterns, Pitfalls, and Playground Battles.pdf
Emily Achieng
 
Mastering Financial Management in Direct Selling
Epixel MLM Software
 
The Rise of AI and IoT in Mobile App Tech.pdf
IMG Global Infotech
 
Building Search Using OpenSearch: Limitations and Workarounds
Sease
 
Exolore The Essential AI Tools in 2025.pdf
Srinivasan M
 
LOOPS in C Programming Language - Technology
RishabhDwivedi43
 
AI Penetration Testing Essentials: A Cybersecurity Guide for 2025
defencerabbit Team
 
[Newgen] NewgenONE Marvin Brochure 1.pdf
darshakparmar
 
Webinar: Introduction to LF Energy EVerest
DanBrown980551
 
Smart Trailers 2025 Update with History and Overview
Paul Menig
 
Q2 FY26 Tableau User Group Leader Quarterly Call
lward7
 
Cryptography Quiz: test your knowledge of this important security concept.
Rajni Bhardwaj Grover
 
WooCommerce Workshop: Bring Your Laptop
Laura Hartwig
 
Transforming Utility Networks: Large-scale Data Migrations with FME
Safe Software
 
Python coding for beginners !! Start now!#
Rajni Bhardwaj Grover
 
New from BookNet Canada for 2025: BNC BiblioShare - Tech Forum 2025
BookNet Canada
 
Jak MŚP w Europie Środkowo-Wschodniej odnajdują się w świecie AI
dominikamizerska1
 
CIFDAQ Market Wrap for the week of 4th July 2025
CIFDAQ
 
IoT-Powered Industrial Transformation – Smart Manufacturing to Connected Heal...
Rejig Digital
 

Democratizing Serverless: the New Open Source, Cloud Agnostic Functions Platform - Matthew Gilliard - Codemotion Amsterdam 2018

  • 1. The following is intended to outline our general product direction. It is intended for information purposes only, and may not be incorporated into any contract. It is not a commitment to deliver any material, code, or functionality, and should not be relied upon in making purchasing decisions. All rights reserved. Timing of any features or functionality described for Oracle’s products remains at the sole discretion of Oracle
  • 2. Democratizing Serverless Open-Source is for everyone! Matthew Gilliard @MaximumGilliard
  • 4. Fn is an Open-Source Serverless Compute Platform
  • 5. What even is an Open-Source Serverless Compute Platform
  • 7. Why Serverless? Answers for developers: ● Easier: Just code, not infrastructure ● Powerful: Transparent and limitless* scaling ● Faster: Code, Test, Deploy, Iterate ● Cheaper: Try stuff out for microdollars * limits may apply
  • 8. Why Serverless? Answers for managers: ● Cost Reduction: Pay according to demand. Reduce op-ex. ● Agility: Dev teams get faster with less fewer dependencies ● Reliability: is a platform responsibility ● Innovation: easy and cheap to try things out
  • 9. ● Higher density: That hardware was *expensive* ● Security: User has fewer responsibilities ● Economy of Scale: We centralise a lot of things ● Marketplace: users actually want it! Why Serverless? Answers for FaaS operators (i.e. ):
  • 10. -flavoured FaaS ● Deploy to any cloud, or on-premise, or... ● Containers are primitives ● Independent yet vendor backed (by us) ● Strong enterprise focus
  • 11. Containers vs Functions Function is a container with a set of known traits: ● Short running ● Ephemeral / event-driven ● Stateless
  • 14. Anatomy of an Fn Function ● Some code wrapped into a container image ● Gets input via STDIN and environment ● Produces output to STDOUT ● Logs to STDERR
  • 16. Input format JUST ANNOUNCED HOT NEWS EVERYONE:
  • 17. Fn CLI ● fn init --runtime go ● fn run ● fn deploy --app myapp ● fn call myapp myfunc or: curl -v ${FN_API_URL}/r/myapp/myfunc
  • 18. fn deploy 1. Builds container (multi-stage) + bumps version 2. Pushes container to registry 3. Creates/updates function route (servers lazy load images) MyFunc:0.0.2 MyFunc:0.0.2 MyFunc:0.0.2 Your code Fn Service myfunc → /r/myapp/myfunc:0.0.2 1 2 3
  • 19. Function Development Kits (FDKs) ● Used to help with parsing input and writing output ● Familiar syntax for Lambda developers ● Simply write a `handler` function that adheres to the FDK’s interface and it will parse STDIN and provide the input data to your function and deal with writing the proper output format. ● Makes it a lot easier to write hot functions
  • 20. Small images are better. Read up on “multistage builds” if you don’t already know about that. Support for languages So long as you have: ● a func.yaml ● a Dockerfile you’re good to go.
  • 23. Kubernetes ● Fn is does not *require* K8S, but lots of optimization work optimiz for it ● Helm chart available at https://github.com/fnproject/fn-helm ● Investigating deeper Kubernetes integrations including CRD’s to model functions
  • 24. Why not K8S ALL THE THINGS!? 1. Speed a. Pod launch time is too slow/unpredictable for synchronous requests b. STDIO is not easily accessible from container in a k8s pod 2. Scale a. Runs out of addressable network space quickly b. Functions easily scale to the hundreds of thousands / millions
  • 25. What’s next for Fn? 1. Hosted Fn-as-a-Service 2. More contributors (could it be you?) 3. More collaboration and standardization
  • 26. Thank you! 1. Star the project: github.com/fnproject/fn 2. Join the conversation: slack.fnproject.io 3. Learn more: fnproject.io I’ve been Matthew Gilliard Get Involved!

Editor's Notes

  • #4: Who are the Fn team? 30-ish ppl Most are <2 years at Oracle. Several from Iron Functions, whose codebase we forked. Fn gets around 10x effort compared to Iron Mostly Oak/Bris but some remote (the long green thing isn’t on the team)
  • #6: Open-Source: Yeah, github etc. Apache 2 license. Fight the vendor lock-in. Serverless: As in, you don’t get to care about the servers. Is DBaaS “serverless”? i.e. is “serverless” particularly novel? Maybe compare with “wireless” (which uses a LOT of wires). Or mention “Jeff” conf Compute platform: Runs user-submitted code in a safe sandboxed environment, on demand This makes us a “FaaS” -
  • #7: Functions are small Single-purpose Independent easy to understand and maintain As a service means no plumbing service takes care of provisioning, scaling, patching, maintaining, etc. Each function scales independently.
  • #8: *limitless: Well, up to a point. You can set limits because a DOS attack would otherwise be a denial of wallet
  • #9: Dependencies here in the Conway’s Law sense. Organi{s,z}ational dependencies
  • #10: Density. Succinctly - all the things we need to do to get higher density are under *our* control Security: More charitably, *we* can take some actions which the users can’t, and we are *highly* incentivised to do them quickly. All these things conspire to MAKE MONEY which is what Oracle’s ultimately about after all. The technical challenges are interesting too, though.
  • #11: KubeCon demo is showing Fn on GKE, AWS Enterprise focus = (security, scalability, observability, etc.) It’s rather easy to make a FaaS, really, but to make a *good* one is harder Have to walk a line between vendor-agnostic and “works reaaaallllly well on OCI”
  • #12: How are “Function” containers different from “regular” containers? Ie jetty-in-a-container or whatever...
  • #13: Demo is: Install cli tool Watch docker ps Fn start In a new directory: fn init --runtime=java See what files are generated Fn run Echo -n “yeah” | fn run Fn deploy --app foo --local Curl -v Check fn-lb-wait-header Curl again Check fn-lb-wait-header explain about hot functions
  • #14: Demo is: Install cli tool Watch docker ps Fn start In a new directory: fn init --runtime=java See what files are generated Fn run Echo -n “yeah” | fn run Fn deploy --app foo --local Curl -v Check fn-lb-wait-header Curl again Check fn-lb-wait-header explain about hot functions
  • #15: “Some code” could be anything that is containerizable. Environment dependency is a PITA and we’re moving away from it STDOUT/ERR easy to write to
  • #16: “Some code” could be anything that is containerizable. Environment dependency is a PITA and we’re moving away from it STDOUT/ERR easy to write to
  • #17: Cloud events is going to be the main event format in the future. Possibly the only one. Common question: How to do streaming data in a JSON object? Well, you can’t but one good way is to pass a URL which the function can retrieve the data from. We may support other streaming formats.
  • #18: Don’t use --local in the hackathon….
  • #19: Lazy or maybe not so lazy
  • #20: These are our supported languages. Exact functionality depends on the style and conventions of the language, eg node is v. simple, Java does type coercion by reflection, etc
  • #21: Small images rule, of course, so look into Multi-stage docker builds
  • #22: Based on available memory. Everything else is scaled proportional to memory so there is only one degree of freedom for sizing your function.
  • #23: “Let me introduce you to my 7-sided friend”
  • #24: So, at the moment we don’t let k8s manage the function containers But all the control-plane stuff can be installed using the Helm chart
  • #25: That said, these are technical problems not philosophical. As k8s gets more adoption and becomes (a) better (b) more pluggable we will revisit.