SlideShare a Scribd company logo
曾義峰 (Ant)
yftzeng@gmail.com
2020-07-25
Severless PHP Case
Agile Dashboard via GitLab Board API
2/67
LeadBest Consulting Group» 首席執行顧問
TGONetworks» 台北分會學籍委員
» 資安技術社群 CHROOT 成員
13 年互聯網研發經驗, 4 年顧問資歷。
具備銀行安全交易系統、電子票證系統、清分清算系統、機載娛樂系統、
數位廣告 (Adtech) 平台、古典樂線上平台及高效能電腦集群入口平台等
開發經驗。
3/67Credit : http://90sheji.com/png/wanshouji.html
Pay for what I use (pay-as-you-go)
Granular scaling
Personalization (vs. SaaS)
4/67
Serverless
5/67Credit : The Emergent Cloud Securiyt Toolchain for CI CD (2018-04).pdf
6/67Credit : https://specify.io/concepts/serverless-baas-faas
7/67Credit : https://read.acloud.guru/acg-faas-and-furious-b9574b6675c5
8/67Credit : Cloud Native Security 101 (2019-02-02).pdf
9/67Credit : Cloud Native Security 101 (2019-02-02).pdf
10/67Credit : https://twitter.com/dexhorthy/status/856639005462417409
11/67Credit : Monitoring Serverless Architectures (2017-06-21) - p9
12/67
Serverless != No Server
Serverless != No Server
Serverless != NoOps
”Serverless” 非指不再涉及伺服器。
”Serverless” 意味著開發人員不再需為 ” Server” 煩惱太多。
13/67
Serverless != No Server
Serverless != No Server
Serverless != NoOps
”Serverless” 非指不再涉及伺服器。
”Serverless” 意味著開發人員不再需為 ” Server” 煩惱太多。
Serverless == LessOps
14/67
如果說 Agile + IaaS 孵化了 DevOps ,
那麼, Agile + BaaS + FaaS 則孕育了 Serverless 。
15/67
Agile Dashboard
16/67
17/67
18/67
19/67
20/67
Why Excel ?
Stakeholders & MVP (GUI friendly)
21/67
22/67
23/67
24/67
25/67
26/67
27/67
28/67
29/67
https://github.com/m4tthumphrey/php-gitlab-api
»
https://github.com/GitLabPHP/Client
30/67Credit : https://docs.gitlab.com/ee/api/api_resources.html
31/67Credit : https://docs.gitlab.com/ee/api/issues.html
32/67Credit : https://opensource.box.com/spout/
33/67
Cold Start
34/67
Cold Start ( 冷啟動 )
Credit : https://azure.microsoft.com/en-us/blog/understanding-serverless-cold-start/
35/67Credit : Cloud Native Security 101 (2019-02-02).pdf
36/67Credit : https://fauna.com/blog/comparison-faas-providers
37/67Credit : https://mikhail.io/2018/08/serverless-cold-start-war/
38/67Credit : https://mikhail.io/serverless/coldstarts/aws/
39/67Credit : https://medium.com/the-theam-journey/benchmarking-aws-lambda-runtimes-in-2019-part-i-b1ee459a293d
40/67Credit : https://medium.com/the-theam-journey/benchmarking-aws-lambda-runtimes-in-2019-part-i-b1ee459a293d
有沒有發現,清單中都沒有今日的主角, PHP 去哪了!
41/67
PHP runtime for Serverless
42/67Credit : https://aws.amazon.com/lambda/faqs/
43/67Credit : https://aws.amazon.com/tw/blogs/apn/aws-lambda-custom-runtime-for-php-a-practical-example/
44/67Credit : https://bref.sh/
45/67Credit : https://mnapoli.fr/serverless-php-performances/
46/67
雲架構
47/67
CloudWatch
Simple Email Service
Simple Notification Service
Simple Storage Service
Lambda
Step Functions Lambda
Lambda
48/67
CloudWatch
Simple Email Service
Simple Notification Service
Simple Storage Service
Lambda
Step Functions Lambda
Lambda
解析
49/67
Lambda
50/67
Lambda
Lambda
Lambda
51/67
Lambda
Step Functions Lambda
Lambda
52/67
CloudWatch
Lambda
Step Functions Lambda
Lambda
53/67
CloudWatch
Simple Storage Service
Lambda
Step Functions Lambda
Lambda
54/67
CloudWatch
Simple Email Service
Simple Storage Service
Lambda
Step Functions Lambda
Lambda
55/67
CloudWatch
Simple Email Service
Simple Notification Service
Simple Storage Service
Lambda
Step Functions Lambda
Lambda
56/67Credit : https://www.infoq.com/news/2020/07/future-serverless-architecture/
57/67
經驗與分享
58/67Credit : https://mnapoli.fr/serverless-php-performances/
59/67Credit : Oracle
Performance Triangle
60/67
Lower latency ?
嘗試移除沒利用到的 PHP Extensions 。
61/67Credit : Anticorrupting the Enterprise - Serverlessconf NYC 2017 (2019-01-06).pdf
62/67Credit : Anticorrupting the Enterprise - Serverlessconf NYC 2017 (2019-01-06).pdf
需視你的情況而定
63/67Credit : https://read.acloud.guru/acg-faas-and-furious-b9574b6675c5
64/67Credit : https://www.earlytorise.com/3-proven-tools-to-change-your-mindset/
65/67Credit : http://90sheji.com/png/wanshouji.html
Lower Cost
Granular scaling
LessOps
Observability
66/67Credit : http://90sheji.com/png/wanshouji.html
Pay for what I use (pay-as-you-go)
Granular scaling
Personalization (vs. SaaS)
67/67
yftzeng@gmail.com
https://www.facebook.com/yftzeng.tw
https://twitter.com/yftzeng
曾義峰 (Ant)

More Related Content

What's hot (12)

SBA Live Academy: A Primer in Single Page Application Security by Thomas Konrad
SBA Live Academy: A Primer in Single Page Application Security by Thomas Konrad
SBA Research
 
SBA Live Academy - Angriffe auf Windows Domains und Delegation by Reinhard Ku...
SBA Live Academy - Angriffe auf Windows Domains und Delegation by Reinhard Ku...
SBA Research
 
DevSecOps for Developers: How To Start
DevSecOps for Developers: How To Start
Patricia Aas
 
Nsc42 security knights slayer of dragons 0-5_very_short_15m_share
Nsc42 security knights slayer of dragons 0-5_very_short_15m_share
NSC42 Ltd
 
SBA Live Academy: Software Security – Towards a Mature Lifecycle and DevSecOp...
SBA Live Academy: Software Security – Towards a Mature Lifecycle and DevSecOp...
SBA Research
 
PyConPL 2017 - with python: security
PyConPL 2017 - with python: security
Piotr Dyba
 
Data Security and the Hard Outer Shell
Data Security and the Hard Outer Shell
Matt Turner
 
Take a step forward from user to maintainer or developer in open source secur...
Take a step forward from user to maintainer or developer in open source secur...
SZ Lin
 
Trusted Third Parties are NOT Trust Worthy!
Trusted Third Parties are NOT Trust Worthy!
nettitude_labs
 
Abusing Glype Proxies - Attacks, Exploits and Defences
Abusing Glype Proxies - Attacks, Exploits and Defences
Aditya K Sood
 
Cyber Grand Challenge及DEFCON 24 CTF决赛介绍
Cyber Grand Challenge及DEFCON 24 CTF决赛介绍
Ray Song
 
Webex APIs for Admins - Cisco Live Orlando 2018 - DEVNET-3610
Webex APIs for Admins - Cisco Live Orlando 2018 - DEVNET-3610
Cisco DevNet
 
SBA Live Academy: A Primer in Single Page Application Security by Thomas Konrad
SBA Live Academy: A Primer in Single Page Application Security by Thomas Konrad
SBA Research
 
SBA Live Academy - Angriffe auf Windows Domains und Delegation by Reinhard Ku...
SBA Live Academy - Angriffe auf Windows Domains und Delegation by Reinhard Ku...
SBA Research
 
DevSecOps for Developers: How To Start
DevSecOps for Developers: How To Start
Patricia Aas
 
Nsc42 security knights slayer of dragons 0-5_very_short_15m_share
Nsc42 security knights slayer of dragons 0-5_very_short_15m_share
NSC42 Ltd
 
SBA Live Academy: Software Security – Towards a Mature Lifecycle and DevSecOp...
SBA Live Academy: Software Security – Towards a Mature Lifecycle and DevSecOp...
SBA Research
 
PyConPL 2017 - with python: security
PyConPL 2017 - with python: security
Piotr Dyba
 
Data Security and the Hard Outer Shell
Data Security and the Hard Outer Shell
Matt Turner
 
Take a step forward from user to maintainer or developer in open source secur...
Take a step forward from user to maintainer or developer in open source secur...
SZ Lin
 
Trusted Third Parties are NOT Trust Worthy!
Trusted Third Parties are NOT Trust Worthy!
nettitude_labs
 
Abusing Glype Proxies - Attacks, Exploits and Defences
Abusing Glype Proxies - Attacks, Exploits and Defences
Aditya K Sood
 
Cyber Grand Challenge及DEFCON 24 CTF决赛介绍
Cyber Grand Challenge及DEFCON 24 CTF决赛介绍
Ray Song
 
Webex APIs for Admins - Cisco Live Orlando 2018 - DEVNET-3610
Webex APIs for Admins - Cisco Live Orlando 2018 - DEVNET-3610
Cisco DevNet
 

More from Yi-Feng Tzeng (20)

重新想像:如何做技術選型決策 / Rethinking : Technical Decision
重新想像:如何做技術選型決策 / Rethinking : Technical Decision
Yi-Feng Tzeng
 
擁抱開源:企業應如何善用開源技術,才能得其利而防其弊-加強版
擁抱開源:企業應如何善用開源技術,才能得其利而防其弊-加強版
Yi-Feng Tzeng
 
Testing in Production, Deploy on Fridays
Testing in Production, Deploy on Fridays
Yi-Feng Tzeng
 
COSCUP 2020 Day 2 - Opening Keynote
COSCUP 2020 Day 2 - Opening Keynote
Yi-Feng Tzeng
 
COSCUP 2020 Day 1 - Opening Keynote
COSCUP 2020 Day 1 - Opening Keynote
Yi-Feng Tzeng
 
給資安工程師開源授權觀念
給資安工程師開源授權觀念
Yi-Feng Tzeng
 
擁抱開源:企業應如何善用開源技術,才能得其利而防其弊
擁抱開源:企業應如何善用開源技術,才能得其利而防其弊
Yi-Feng Tzeng
 
淺談量子機器學習 - 當機器學習遇見量子計算
淺談量子機器學習 - 當機器學習遇見量子計算
Yi-Feng Tzeng
 
A Modern Web Architecture for (GDPR) Compliance
A Modern Web Architecture for (GDPR) Compliance
Yi-Feng Tzeng
 
量子技術 (2018 03-31)
量子技術 (2018 03-31)
Yi-Feng Tzeng
 
Swoole Love PHP
Swoole Love PHP
Yi-Feng Tzeng
 
邏輯優化的灰色面:針對網頁應用的時序攻擊 (2018臺灣資安大會: 軟體安全論壇)
邏輯優化的灰色面:針對網頁應用的時序攻擊 (2018臺灣資安大會: 軟體安全論壇)
Yi-Feng Tzeng
 
Modern Web Architecture Design Journey
Modern Web Architecture Design Journey
Yi-Feng Tzeng
 
善用 MySQL 及 PostgreSQL - RDBMS 的逆襲 - part1
善用 MySQL 及 PostgreSQL - RDBMS 的逆襲 - part1
Yi-Feng Tzeng
 
恰如其分的 MySQL 設計技巧 [Modern Web 2016]
恰如其分的 MySQL 設計技巧 [Modern Web 2016]
Yi-Feng Tzeng
 
談 Uber 從 PostgreSQL 轉用 MySQL 的技術爭議
談 Uber 從 PostgreSQL 轉用 MySQL 的技術爭議
Yi-Feng Tzeng
 
資料庫索引數據結構及主鍵設計(b+tree)(part 1)
資料庫索引數據結構及主鍵設計(b+tree)(part 1)
Yi-Feng Tzeng
 
軟體接案自由職業者 (Freelancer) 意想不到的風險
軟體接案自由職業者 (Freelancer) 意想不到的風險
Yi-Feng Tzeng
 
Enterprise Architecture Case in PHP (MUZIK Online)
Enterprise Architecture Case in PHP (MUZIK Online)
Yi-Feng Tzeng
 
Redis, another step on the road
Redis, another step on the road
Yi-Feng Tzeng
 
重新想像:如何做技術選型決策 / Rethinking : Technical Decision
重新想像:如何做技術選型決策 / Rethinking : Technical Decision
Yi-Feng Tzeng
 
擁抱開源:企業應如何善用開源技術,才能得其利而防其弊-加強版
擁抱開源:企業應如何善用開源技術,才能得其利而防其弊-加強版
Yi-Feng Tzeng
 
Testing in Production, Deploy on Fridays
Testing in Production, Deploy on Fridays
Yi-Feng Tzeng
 
COSCUP 2020 Day 2 - Opening Keynote
COSCUP 2020 Day 2 - Opening Keynote
Yi-Feng Tzeng
 
COSCUP 2020 Day 1 - Opening Keynote
COSCUP 2020 Day 1 - Opening Keynote
Yi-Feng Tzeng
 
給資安工程師開源授權觀念
給資安工程師開源授權觀念
Yi-Feng Tzeng
 
擁抱開源:企業應如何善用開源技術,才能得其利而防其弊
擁抱開源:企業應如何善用開源技術,才能得其利而防其弊
Yi-Feng Tzeng
 
淺談量子機器學習 - 當機器學習遇見量子計算
淺談量子機器學習 - 當機器學習遇見量子計算
Yi-Feng Tzeng
 
A Modern Web Architecture for (GDPR) Compliance
A Modern Web Architecture for (GDPR) Compliance
Yi-Feng Tzeng
 
量子技術 (2018 03-31)
量子技術 (2018 03-31)
Yi-Feng Tzeng
 
邏輯優化的灰色面:針對網頁應用的時序攻擊 (2018臺灣資安大會: 軟體安全論壇)
邏輯優化的灰色面:針對網頁應用的時序攻擊 (2018臺灣資安大會: 軟體安全論壇)
Yi-Feng Tzeng
 
Modern Web Architecture Design Journey
Modern Web Architecture Design Journey
Yi-Feng Tzeng
 
善用 MySQL 及 PostgreSQL - RDBMS 的逆襲 - part1
善用 MySQL 及 PostgreSQL - RDBMS 的逆襲 - part1
Yi-Feng Tzeng
 
恰如其分的 MySQL 設計技巧 [Modern Web 2016]
恰如其分的 MySQL 設計技巧 [Modern Web 2016]
Yi-Feng Tzeng
 
談 Uber 從 PostgreSQL 轉用 MySQL 的技術爭議
談 Uber 從 PostgreSQL 轉用 MySQL 的技術爭議
Yi-Feng Tzeng
 
資料庫索引數據結構及主鍵設計(b+tree)(part 1)
資料庫索引數據結構及主鍵設計(b+tree)(part 1)
Yi-Feng Tzeng
 
軟體接案自由職業者 (Freelancer) 意想不到的風險
軟體接案自由職業者 (Freelancer) 意想不到的風險
Yi-Feng Tzeng
 
Enterprise Architecture Case in PHP (MUZIK Online)
Enterprise Architecture Case in PHP (MUZIK Online)
Yi-Feng Tzeng
 
Redis, another step on the road
Redis, another step on the road
Yi-Feng Tzeng
 
Ad

Recently uploaded (20)

AI Agents in Logistics and Supply Chain Applications Benefits and Implementation
AI Agents in Logistics and Supply Chain Applications Benefits and Implementation
Christine Shepherd
 
“How Qualcomm Is Powering AI-driven Multimedia at the Edge,” a Presentation f...
“How Qualcomm Is Powering AI-driven Multimedia at the Edge,” a Presentation f...
Edge AI and Vision Alliance
 
Bridging the divide: A conversation on tariffs today in the book industry - T...
Bridging the divide: A conversation on tariffs today in the book industry - T...
BookNet Canada
 
Domino IQ – Was Sie erwartet, erste Schritte und Anwendungsfälle
Domino IQ – Was Sie erwartet, erste Schritte und Anwendungsfälle
panagenda
 
Trends Artificial Intelligence - Mary Meeker
Trends Artificial Intelligence - Mary Meeker
Clive Dickens
 
Introduction to Internet of things .ppt.
Introduction to Internet of things .ppt.
hok12341073
 
Murdledescargadarkweb.pdfvolumen1 100 elementary
Murdledescargadarkweb.pdfvolumen1 100 elementary
JorgeSemperteguiMont
 
Data Virtualization: Bringing the Power of FME to Any Application
Data Virtualization: Bringing the Power of FME to Any Application
Safe Software
 
Soulmaite review - Find Real AI soulmate review
Soulmaite review - Find Real AI soulmate review
Soulmaite
 
Dancing with AI - A Developer's Journey.pptx
Dancing with AI - A Developer's Journey.pptx
Elliott Richmond
 
Jeremy Millul - A Talented Software Developer
Jeremy Millul - A Talented Software Developer
Jeremy Millul
 
FCF- Getting Started in Cybersecurity 3.0
FCF- Getting Started in Cybersecurity 3.0
RodrigoMori7
 
Developing Schemas with FME and Excel - Peak of Data & AI 2025
Developing Schemas with FME and Excel - Peak of Data & AI 2025
Safe Software
 
Introduction to Typescript - GDG On Campus EUE
Introduction to Typescript - GDG On Campus EUE
Google Developer Group On Campus European Universities in Egypt
 
Creating an Accessible Future-How AI-powered Accessibility Testing is Shaping...
Creating an Accessible Future-How AI-powered Accessibility Testing is Shaping...
Impelsys Inc.
 
FME Beyond Data Processing Creating A Dartboard Accuracy App
FME Beyond Data Processing Creating A Dartboard Accuracy App
Safe Software
 
MCP vs A2A vs ACP: Choosing the Right Protocol | Bluebash
MCP vs A2A vs ACP: Choosing the Right Protocol | Bluebash
Bluebash
 
Boosting MySQL with Vector Search -THE VECTOR SEARCH CONFERENCE 2025 .pdf
Boosting MySQL with Vector Search -THE VECTOR SEARCH CONFERENCE 2025 .pdf
Alkin Tezuysal
 
Down the Rabbit Hole – Solving 5 Training Roadblocks
Down the Rabbit Hole – Solving 5 Training Roadblocks
Rustici Software
 
ISOIEC 42005 Revolutionalises AI Impact Assessment.pptx
ISOIEC 42005 Revolutionalises AI Impact Assessment.pptx
AyilurRamnath1
 
AI Agents in Logistics and Supply Chain Applications Benefits and Implementation
AI Agents in Logistics and Supply Chain Applications Benefits and Implementation
Christine Shepherd
 
“How Qualcomm Is Powering AI-driven Multimedia at the Edge,” a Presentation f...
“How Qualcomm Is Powering AI-driven Multimedia at the Edge,” a Presentation f...
Edge AI and Vision Alliance
 
Bridging the divide: A conversation on tariffs today in the book industry - T...
Bridging the divide: A conversation on tariffs today in the book industry - T...
BookNet Canada
 
Domino IQ – Was Sie erwartet, erste Schritte und Anwendungsfälle
Domino IQ – Was Sie erwartet, erste Schritte und Anwendungsfälle
panagenda
 
Trends Artificial Intelligence - Mary Meeker
Trends Artificial Intelligence - Mary Meeker
Clive Dickens
 
Introduction to Internet of things .ppt.
Introduction to Internet of things .ppt.
hok12341073
 
Murdledescargadarkweb.pdfvolumen1 100 elementary
Murdledescargadarkweb.pdfvolumen1 100 elementary
JorgeSemperteguiMont
 
Data Virtualization: Bringing the Power of FME to Any Application
Data Virtualization: Bringing the Power of FME to Any Application
Safe Software
 
Soulmaite review - Find Real AI soulmate review
Soulmaite review - Find Real AI soulmate review
Soulmaite
 
Dancing with AI - A Developer's Journey.pptx
Dancing with AI - A Developer's Journey.pptx
Elliott Richmond
 
Jeremy Millul - A Talented Software Developer
Jeremy Millul - A Talented Software Developer
Jeremy Millul
 
FCF- Getting Started in Cybersecurity 3.0
FCF- Getting Started in Cybersecurity 3.0
RodrigoMori7
 
Developing Schemas with FME and Excel - Peak of Data & AI 2025
Developing Schemas with FME and Excel - Peak of Data & AI 2025
Safe Software
 
Creating an Accessible Future-How AI-powered Accessibility Testing is Shaping...
Creating an Accessible Future-How AI-powered Accessibility Testing is Shaping...
Impelsys Inc.
 
FME Beyond Data Processing Creating A Dartboard Accuracy App
FME Beyond Data Processing Creating A Dartboard Accuracy App
Safe Software
 
MCP vs A2A vs ACP: Choosing the Right Protocol | Bluebash
MCP vs A2A vs ACP: Choosing the Right Protocol | Bluebash
Bluebash
 
Boosting MySQL with Vector Search -THE VECTOR SEARCH CONFERENCE 2025 .pdf
Boosting MySQL with Vector Search -THE VECTOR SEARCH CONFERENCE 2025 .pdf
Alkin Tezuysal
 
Down the Rabbit Hole – Solving 5 Training Roadblocks
Down the Rabbit Hole – Solving 5 Training Roadblocks
Rustici Software
 
ISOIEC 42005 Revolutionalises AI Impact Assessment.pptx
ISOIEC 42005 Revolutionalises AI Impact Assessment.pptx
AyilurRamnath1
 
Ad

Severless PHP Case : Agile Dashboard via GitLab Board API