Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
2018-06-22-RomaniaPHP-Introduction-to-Serverles...
Search
Sponsored
·
Your Podcast. Everywhere. Effortlessly.
Share. Educate. Inspire. Entertain. You do you. We'll handle the rest.
→
Rob Allen
June 10, 2018
0
270
2018-06-22-RomaniaPHP-Introduction-to-Serverless-PHP.pdf
Rob Allen
June 10, 2018
Tweet
Share
More Decks by Rob Allen
See All by Rob Allen
Introduction to Serverless PHP
akrabat
0
110
HTTP & Middleware
akrabat
0
440
5 Features of a Good API
akrabat
1
500
The Serverless Way
akrabat
2
220
Introducing OpenWhisk
akrabat
1
360
The Serverless Way
akrabat
1
330
Introduction to Serverless PHP
akrabat
0
760
Writing APIs in Lumen
akrabat
0
740
Test
akrabat
0
100
Featured
See All Featured
My Coaching Mixtape
mlcsv
0
69
コードの90%をAIが書く世界で何が待っているのか / What awaits us in a world where 90% of the code is written by AI
rkaga
60
42k
We Analyzed 250 Million AI Search Results: Here's What I Found
joshbly
1
930
[SF Ruby Conf 2025] Rails X
palkan
2
820
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
141
35k
Build The Right Thing And Hit Your Dates
maggiecrowley
39
3.1k
Building a Scalable Design System with Sketch
lauravandoore
463
34k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
How to Build an AI Search Optimization Roadmap - Criteria and Steps to Take #SEOIRL
aleyda
1
1.9k
Agile Actions for Facilitating Distributed Teams - ADO2019
mkilby
0
140
Rebuilding a faster, lazier Slack
samanthasiow
85
9.4k
The untapped power of vector embeddings
frankvandijk
2
1.6k
Transcript
Introduction to Serverless PHP Rob Allen June 2018
Deployment options 1. Physical servers 2. Virtual machines 3. Containers
Rob Allen ~ @akrabat
Container deployments 1. Platform (e.g. Kubernetes) 2. Application (e.g. Cloud
Foundry) 3. Serverless (e.g. OpenWhisk) Rob Allen ~ @akrabat
Serverless? The first thing to know about serverless computing is
that "serverless" is a pretty bad name to call it. - Brandon Butler, Network World Rob Allen ~ @akrabat
AKA: Functions as a Service • A runtime to execute
your functions • No capacity planning or load balancing; just tasks being executed. • Pay for execution, not when idle Rob Allen ~ @akrabat
Use-cases Synchronous Service is invoked and provides immediate response (HTTP
requests: APIs, chat bots) Asynchronous Push a message which drives an action later (web hooks, timed events, database changes) Streaming Continuous data flow to be processed Rob Allen ~ @akrabat
Benefits • No need to think about servers • Concentrate
on application code • Pay only for what you use, when you use it • Language agnostic: NodeJS, Swift, Python, Java, C#, etc Rob Allen ~ @akrabat
Challenges • Start up latency • Time limit • State
is external • DevOps is still a thing Rob Allen ~ @akrabat
It's about value Rob Allen ~ @akrabat
When should you use serverless? • Occasional server needs on
a static site • Variable traffic levels • Additional compute without extending current platform • Responding to web hooks Rob Allen ~ @akrabat
Serverless providers Rob Allen ~ @akrabat
OpenWhisk Rob Allen ~ @akrabat
OpenWhisk OpenSource; multiple providers: IBM RedHat Adobe (for Adobe Cloud
Platform APIs) &, of course, self-hosted Rob Allen ~ @akrabat
Invoking an action Rob Allen ~ @akrabat
Serverless PHP Rob Allen ~ @akrabat
Hello world in PHP Rob Allen ~ @akrabat
Hello world in PHP Rob Allen ~ @akrabat
Running your action $ wsk action update hello hello.php ok:
updated action hello $ wsk action invoke hello --result { "msg": "Hello World" } Rob Allen ~ @akrabat
Dependencies Zip them up $ zip -r hello.zip hello.php vendor
$ wsk action update hello hello.zip --kind php:7.1 Rob Allen ~ @akrabat
Web access Add the --web flag: $ wsk action update
hello hello.php --web true $ curl https://openwhisk.ng.bluemix.net/api/v1/web/ \ 19FT_demo/default/hello.json Rob Allen ~ @akrabat
What to do in your action • Compute! • Store
to database • Make API calls to other services • Store to cloud storage (S3) • Trigger other actions Rob Allen ~ @akrabat
Demo time! Rob Allen ~ @akrabat
To sum up Rob Allen ~ @akrabat
Resources • http://www.openwhisk.org • https://medium.com/openwhisk • https://github.com/akrabat/ow-php-ftime • https://www.martinfowler.com/articles/serverless.html Rob
Allen ~ @akrabat
Questions? Rob Allen ~ @akrabat
Thank you! Rob Allen ~ @akrabat