SlideShare une entreprise Scribd logo
1  sur  81
Télécharger pour lire hors ligne
Progressive Deployment & NoDeploy
曾義峰 (Ant)
yftzeng@gmail.com
2019-08-28
2/81
Introduction & Research interest
13 年網際網路開發經驗, 4 年顧問資歷。
現任書亞集成股份有限公司 CTO
現任香港商帕格數碼媒體股份有限公司 CTO
現任希幔數位股份有限公司總工程師
現任台灣資安社群 CHROOT 成員
現任 TGO Networks 台北分會會籍委員
從事軟體架構研究數十年載,對資訊安全及智慧財產權略有研究。
3/81
~Dark 1980s 2008 2014
ITIL
Design for Anti-FragilityDesign for Robustness Design for Resilience
DevOps
堅實性設計 抗脆性設計 復原性設計
精心設計。
嚴格管控。
故障被設計為需要異常
處理。
將開發及維運為一體。
視故障為正常狀態。
為故障發生設計隔離。
將維運視為工程。
最小化人為錯誤。
為故障復原至正常狀態。
轉型
轉型
進化
SRE
Partial Credit: https://noops.connpass.com
進化
4/81Image Credit: https://www.freepik.com/free-icon/silo_869863.htm
Sales
Marketing
Dev Ops Compliance
(Security)
Value
DevOps
Cost Cost
5/81Image Credit: https://www.freepik.com/free-icon/silo_869863.htm
Sales
Marketing
Dev Ops Compliance
(Security)
Value
DevOps
Dev(Sec)Ops
6/81Image Credit: DevOps-Agile-Perspective_Oct-18-Appleton.pdf
Silo ( 穀倉 / 壁壘 )
DevOps
7/81Image Credit: DevOps-Agile-Perspective_Oct-18-Appleton.pdf
DevOps
8/81
Code Test Acceptance Deploy Operate
Continuous Integration / 持續整合
Continuous Delivery / 持續交付
Continuous Deployment / 持續部署
DevOps / SRE
Commit Dev Test Staging Test Deploy Prod
Continuous Deployment
Local Dev Staging Prod
Environments
Chaos
9/81
為什麼今天建立一個應用程式,我們需要學習
Git 、 Kubernetes 、 Docker 、 SQL 、 NoSQL 、
DNS 、 gRPC 、 GraphQL 、數個 AWS 雲服務,
以及其餘無止盡的工具和技術清單列表。
10/81
大膽的想法
11/81
No Acceptance
12/81
Code Test Acceptance Deploy Operate
Continuous Integration / 持續整合
Continuous Delivery / 持續交付
Continuous Deployment / 持續部署
DevOps / SRE
Commit Dev Test Staging Test Deploy Prod
Continuous Deployment
Local Dev Staging Prod
Environments
Chaos
13/81
Code Test Deploy Operate
Continuous Integration / 持續整合
Continuous Delivery / 持續交付
Continuous Deployment / 持續部署
DevOps / SRE
Commit Dev Test Staging Test Deploy Prod
Continuous Deployment
Local Dev Staging Prod
Environments
Chaos
14/81
No Acceptance
No Deploy (artifact)
15/81
Code Test Deploy Operate
Continuous Integration / 持續整合
Continuous Delivery / 持續交付
Continuous Deployment / 持續部署
DevOps / SRE
Commit Dev Test Staging Test Deploy Prod
Continuous Deployment
Local Dev Staging Prod
Environments
Chaos
16/81
Code Test Operate
Continuous Integration / 持續整合
Continuous Delivery / 持續交付
Continuous Deployment / 持續部署
DevOps / SRE
Commit Dev Test Staging Test Deploy Prod
Continuous Deployment
Local Dev Staging Prod
Environments
Chaos
17/81
Deploy (artifact)
隨時皆可部署任意版本至任意環境
18/81
Deploy (artifact)
隨時皆可部署任意版本至任意環境
No Local
No Staging
No Deploy
19/81
Deploy (artifact)
隨時皆可部署任意版本至任意環境
No Local
No Staging
No Deploy
20/81
No Deploy (artifact)
No Staging
No Acceptance
21/81
Code Test Operate
Continuous Integration / 持續整合
Continuous Delivery / 持續交付
Continuous Deployment / 持續部署
DevOps / SRE
Commit Dev Test Staging Test Deploy Prod
Continuous Deployment
Local Dev Staging Prod
Environments
Chaos
22/81
Code Test Operate
Continuous Integration / 持續整合
Continuous Delivery / 持續交付
Continuous Deployment / 持續部署
DevOps / SRE
Commit Dev Test Staging Test Deploy Prod
Continuous Deployment
Local Dev Staging Prod
Environments
Chaos
23/81
Staging
Staging 環境必須與 Production 環境幾乎
相同,這十分困難,否則測試就不準了。
Trying to mirror your staging
environment to production is a fool’s
errand. Just give up.
嘗試將 Staging 視為 Production 是一個愚蠢的事。放棄吧。
Partial Credit: https://thenewstack.io/honeycombs-charity-majors-go-ahead-test-in-production/
24/81
Staging
Staging 環境必須與 Production 環境幾乎
相同,這十分困難,否則測試就不準了。
Trying to mirror your staging
environment to production is a fool’s
errand. Just give up.
嘗試將 Staging 視為 Production 是一個愚蠢的事。放棄吧。
Partial Credit: https://thenewstack.io/honeycombs-charity-majors-go-ahead-test-in-production/
25/81
Staging
Credit: https://www.infoq.cn/article/b9lG4O8oJ8bWcFFQfFKE
26/81
No Deploy (artifact)
No Staging
No QA / CI
No Acceptance
27/81
Code Test Operate
Continuous Integration / 持續整合
Continuous Delivery / 持續交付
Continuous Deployment / 持續部署
DevOps / SRE
Commit Dev Test Staging Test Deploy Prod
Continuous Deployment
Local Dev Staging Prod
Environments
Chaos
28/81
Code Operate
Continuous Integration / 持續整合
Continuous Delivery / 持續交付
Continuous Deployment / 持續部署
DevOps / SRE
Commit Dev Test Staging Test Deploy Prod
Continuous Deployment
Local Dev Staging Prod
Environments
Chaos
29/81
No Deploy (artifact)
No Staging
No QA / CI
No Visible container
No Acceptance
30/81
No Deploy (artifact)
No Staging
No QA / CI
No Visible container
No Test Locally
No Acceptance
31/81
Code Operate
Continuous Integration / 持續整合
Continuous Delivery / 持續交付
Continuous Deployment / 持續部署
DevOps / SRE
Commit Dev Test Staging Test Deploy Prod
Continuous Deployment
Local Dev Staging Prod
Environments
Chaos
32/81
Code Operate
Continuous Integration / 持續整合
Continuous Delivery / 持續交付
Continuous Deployment / 持續部署
DevOps / SRE
Commit Dev Test Staging Test Deploy Prod
Continuous Deployment
Local Dev Staging Prod
Environments
Chaos
33/81
Test Locally
在 Microservices 環境中,
幾乎不可避免要在分佈式環境中進行部署和測試。
34/81
Test Locally
在 Microservices 環境中,
幾乎不可避免要在分佈式環境中進行部署和測試。
35/81
No Deploy (artifact)
No Staging
No QA / CI
No Visible container
No Test Locally
Only Code CommitNo Acceptance
36/81
Code Operate
Continuous Integration / 持續整合
Continuous Delivery / 持續交付
Continuous Deployment / 持續部署
DevOps / SRE
Commit Dev Test Staging Test Deploy Prod
Continuous Deployment
Local Dev Staging Prod
Environments
Chaos
37/81
Only Feature FlagNo Deploy (artifact)
No Staging
No QA / CI
No Visible container
No Test Locally
Only Code CommitNo Acceptance
Cost in Time
hours
mins ~ hour
secs
~
mins
Applicability
2%
8%
90%
Toggle
Feature Flag
ReDeploy
Previous Version
Rollback
Revert Commit
Incident Recovery
39/81
Feature Flag
01 所有程式皆為部署,並可控制開關,減少整合問題
All code is deployed, but control exposure, reduces integration issue.
02 控制細緻度可至特定人層級或是開發分支
Flags provide runtime control down to individual user.
03 開發者可以增加或刪除功能,無需再次部署
Users can be added or removed with no redeployment
04 暗啟動
Enables dark launch
Credit: Progressive Deployment, Experimentation, Multitenancy, No Downtime, Cloud Security (2018-02-23).pdf
Image Credit: https://opensource.com/article/18/2/feature-flags-ring-deployment-model
40/81
Feature Flag
01 提交程式至主幹可能會影響其他功能
Commit code on trunk may affects other features.
02 未完成的功能可能也會部署,如果配置有誤可能將未完成的功能開啟
Unfinished features may be deployed, and turned on if the configuration is incorrect.
Image Credit: https://opensource.com/article/18/2/feature-flags-ring-deployment-model
41/81
Only Feature Flag
Only Progressive Deployment
No Deploy (artifact)
No Staging
No QA / CI
No Visible container
No Test Locally
Only Code CommitNo Acceptance
42/81
Only Feature Flag
Only Progressive Deployment
Only Observability
No Deploy (artifact)
No Staging
No QA / CI
No Visible container
No Test Locally
Only Code CommitNo Acceptance
43/81
Only Feature Flag
Only Progressive Deployment
And Test in Production
Only Observability
No Deploy (artifact)
No Staging
No QA / CI
No Visible container
No Test Locally
Only Code CommitNo Acceptance
44/81
Test in Production
在 Microservices 環境中,尤其是 FaaS 環境中,
Test in production 是一種實際的需要。
45/81
Test in Production
Chaos Engineering @ Netflix
這些是需要整合測試的故障模式示例,因為它們涉及服務之間的互動。在某
些情況下,可能只能在 Production 進行完全整合測試。在 Netflix ,根本不
可能完全重現整個架構並運行端到端測試。
當可以在 Testing 環境中重現整個系統時,我們仍然相信需要在 Production
運行實驗,因為在 Testing 環境中永遠不可能完全重現系統的所有方面。總
是存在差異,例如合併客戶端與真實客戶端相比的行為方式或 DNS 配置問
題。
Credit: Chaos Engineering IEEE Software (2016-05-05).pdf
46/81Image Credit: Progressive Deployment, Experimentation, Multitenancy, No Downtime, Cloud Security (2018-02-23).pdf
Microsoft/Azure
47/81Image Credit: Progressive Deployment, Experimentation, Multitenancy, No Downtime, Cloud Security (2018-02-23).pdf
Microsoft/Azure
48/81Image Credit: Progressive Deployment, Experimentation, Multitenancy, No Downtime, Cloud Security (2018-02-23).pdf
Microsoft/Azure
49/81
Code Operate
Continuous Integration / 持續整合
Continuous Delivery / 持續交付
Continuous Deployment / 持續部署
DevOps / SRE
Commit Dev Test Staging Test Deploy Prod
Continuous Deployment
Local Dev Staging Prod
Environments
Chaos
50/81
Code Operate
Continuous Integration / 持續整合
Continuous Delivery / 持續交付
Continuous Deployment / 持續部署
DevOps / SRE
Prod
Continuous Deployment
Prod
Environments
ChaosCommit
51/81
Only Feature Flag
Only Progressive Deployment
And Test in Production
Only Observability
No ACCEPTANCE
No Deploy (artifact)
No Staging
No QA / CI
No Visible container
No Test Locally
Only Code Commit
52/81
~Dark 1980s 2008 2014
ITIL
Design for Anti-FragilityDesign for Robustness Design for Resilience
DevOps
堅實性設計 抗脆性設計 復原性設計
精心設計。
嚴格管控。
故障被設計為需要異常
處理。
將開發及維運為一體。
視故障為正常狀態。
為故障發生設計隔離。
將維運視為工程。
最小化人為錯誤。
為故障復原至正常狀態。
轉型
轉型
進化
SRE
Partial Credit: https://noops.connpass.com
進化
53/81
~Dark 1980s 2008 2014
ITIL
Design for Anti-FragilityDesign for Robustness Design for Resilience
DevOps
堅實性設計 抗脆性設計 復原性設計
精心設計。
嚴格管控。
故障被設計為需要異常
處理。
將開發及維運為一體。
視故障為正常狀態。
為故障發生設計隔離。
將維運視為工程。
最小化人為錯誤。
為故障復原至正常狀態。
轉型
轉型
進化
SRE Dev(ops)
Design for Deployless
Partial Credit: https://noops.connpass.com
NoDeploy
2019
想像
想像進化
無部署設計
54/81
OpsDev OpsDev Dev(ops)
55/81
NoDeploy != No Deploy(ment)
NoDeploy == No conscious Deploy(ment)
無察覺部署
56/81
How do you
go fast
And
zero downtime
Font Credit: https://www.dafont.com/theme.php?cat=109 (Defused)
57/81
Your aim won’t be perfect,
control over the blast radius.
你的瞄準並不完美,
請控制好爆炸半徑。
Image Credit: https://www.behance.net/gallery/57558081/FREE-BUSINESS-ICONS
Progressive Deployment
58/81Credit: https://thenewstack.io/the-rise-of-progressive-delivery-for-systems-resilience/
01 User segmentation
使用者細分
02 Traffic management
流量管理
03 Observability
可觀測性
04 Automation
自動化
Progressive Deployment
59/81
Progressive Deployment
Observability != Monitoring
Observability == Logs + Traces + Metrics
Monitoring is what. Observability is why.
可觀測性 監控
60/81
人力
資源能力
時間
Progressive Deployment
61/81
Credit: https://thenewstack.io/the-rise-of-progressive-delivery-for-systems-resilience/
Image Credit: https://www.trisignup.com/Race/24568/Sponsor/94608
Progressive deployment is continuous deploy
with fine-grained control over the blast radius.
漸進式部署是對爆破半徑進行細部控制的連續部署。
Progressive Deployment
62/81
Credit: https://thenewstack.io/the-rise-of-progressive-delivery-for-systems-resilience/
Image Credit: https://support.google.com/optimize/answer/7012154?hl=en
Deploying a service is not that same as activating it for all users.
部署一個服務,未必需要讓所有使用者皆同時生效。
Progressive Deployment
63/81Credit: https://thenewstack.io/the-rise-of-progressive-delivery-for-systems-resilience/
01 Feature flag
功能標誌
02 A/B Test
A/B 測試
03 Blue-green deployment
藍綠部署
04 Canary deployment
金絲雀部署
05 Service mesh
服務網格
Progressive Deployment
64/81
Progressive Deployment
Chaos Engineering
可協助我們找到 Edge / Boundary / Blast radius 。
Image Credit: https://medium.com/walmartlabs/chaos-engineering-using-concord-gremlin-c922d7dcd629
65/81
Progressive Deployment
Image Credit: https://engineering.fb.com/web/rapid-release-at-massive-scale/ (2017-08-31)
Facebook
66/81
Progressive Deployment
Image Credit: Progressive Deployment, Experimentation, Multitenancy, No Downtime, Cloud Security (2018-02-23).pdf
Microsoft/Azure
67/81
Code Operate
Continuous Integration / 持續整合
Continuous Delivery / 持續交付
Continuous Deployment / 持續部署
DevOps / SRE
Prod
Continuous Deployment
Prod
Environments
ChaosCommit
68/81
SLA, SLI, SLO
69/81
Code Operate
Continuous Integration / 持續整合
Continuous Delivery / 持續交付
Continuous Deployment / 持續部署
DevOps / SRE
Prod
Continuous Deployment
Prod
Environments
ChaosCommit
70/81
Code
Continuous Integration / 持續整合
Continuous Delivery / 持續交付
Continuous Deployment / 持續部署
DevOps / SRE
Prod
Continuous Deployment
Prod
Environments
ChaosCommit
71/81
許多最好的想法都是瘋狂的,直到他們不再瘋狂而是現實。
72/81
DevOps
N
Font Credit: https://www.dafont.com/theme.php?cat=109 (Defused)
DevNops
73/81
我不知道何時會發生,但這是我對下一步 ( 未來 ) 的想像
74/81
DevOps
O
O
DevOoops
Font Credit: https://www.dafont.com/theme.php?cat=109 (Defused)
75/81Image Credit: https://medium.com/darklang/the-design-of-dark-59f5d38e52d2
76/81Credit: https://medium.com/darklang/how-dark-deploys-code-in-50ms-771c6dd60671
Dark
77/81Image Credit: https://medium.com/darklang/how-dark-deploys-code-in-50ms-771c6dd60671
Dark
78/81Credit: https://darklang.com
Dark
79/81
Only Feature Flag
Only Progressive Deployment
And Test in Production
Only Observability
No ACCEPTANCE
No Deploy (artifact)
No Staging
No QA / CI
No Visible container
No Test Locally
Only Code Commit
80/81
OpsDev OpsDev Dev(ops)
81/81
yftzeng@gmail.com
https://www.facebook.com/yftzeng.tw
https://twitter.com/yftzeng
曾義峰 (Ant)

Contenu connexe

Tendances

Tendances (13)

OpenChain - The Industry Standard for Open Source Compliance
OpenChain - The Industry Standard for Open Source ComplianceOpenChain - The Industry Standard for Open Source Compliance
OpenChain - The Industry Standard for Open Source Compliance
 
Vulnerabilities are bugs, Let's test for them!
Vulnerabilities are bugs, Let's test for them!Vulnerabilities are bugs, Let's test for them!
Vulnerabilities are bugs, Let's test for them!
 
DevSecOps for Developers: How To Start
DevSecOps for Developers: How To StartDevSecOps for Developers: How To Start
DevSecOps for Developers: How To Start
 
The Emergent Cloud Security Toolchain for CI/CD
The Emergent Cloud Security Toolchain for CI/CDThe Emergent Cloud Security Toolchain for CI/CD
The Emergent Cloud Security Toolchain for CI/CD
 
[AsiaCCS2019] A Pilot Study on Consumer IoT Device Vulnerability Disclosure a...
[AsiaCCS2019] A Pilot Study on Consumer IoT Device Vulnerability Disclosure a...[AsiaCCS2019] A Pilot Study on Consumer IoT Device Vulnerability Disclosure a...
[AsiaCCS2019] A Pilot Study on Consumer IoT Device Vulnerability Disclosure a...
 
The Secret Recipe for Automating Android Malware Analysis - Lorenzo Cavallaro...
The Secret Recipe for Automating Android Malware Analysis - Lorenzo Cavallaro...The Secret Recipe for Automating Android Malware Analysis - Lorenzo Cavallaro...
The Secret Recipe for Automating Android Malware Analysis - Lorenzo Cavallaro...
 
Nsc42 security knights slayer of dragons 0-5_very_short_15m_share
Nsc42 security knights slayer of dragons 0-5_very_short_15m_shareNsc42 security knights slayer of dragons 0-5_very_short_15m_share
Nsc42 security knights slayer of dragons 0-5_very_short_15m_share
 
How to get along with HATEOAS without letting the bad guys steal your lunch?
How to get along with HATEOAS without letting the bad guys steal your lunch?How to get along with HATEOAS without letting the bad guys steal your lunch?
How to get along with HATEOAS without letting the bad guys steal your lunch?
 
Crossing the CI/CD/DevOps Chasm
Crossing the CI/CD/DevOps ChasmCrossing the CI/CD/DevOps Chasm
Crossing the CI/CD/DevOps Chasm
 
Data Security and the Hard Outer Shell
Data Security and the Hard Outer ShellData Security and the Hard Outer Shell
Data Security and the Hard Outer Shell
 
TWISummit 2019 - Take the Pain out of Browser Automation!
TWISummit 2019 - Take the Pain out of Browser Automation!TWISummit 2019 - Take the Pain out of Browser Automation!
TWISummit 2019 - Take the Pain out of Browser Automation!
 
DevSecOps and the New Path Forward
DevSecOps and the New Path ForwardDevSecOps and the New Path Forward
DevSecOps and the New Path Forward
 
[DevSecOps 工作坊] 強化基礎設施安全性
[DevSecOps 工作坊] 強化基礎設施安全性[DevSecOps 工作坊] 強化基礎設施安全性
[DevSecOps 工作坊] 強化基礎設施安全性
 

Similaire à Progressive Deployment & NoDeploy

Kelly potvin nosurprises_odtug_oow12
Kelly potvin nosurprises_odtug_oow12Kelly potvin nosurprises_odtug_oow12
Kelly potvin nosurprises_odtug_oow12
Enkitec
 
Relay health build system
Relay health build systemRelay health build system
Relay health build system
roncordell
 
2016 quali continuous testing quest for quality conference
2016 quali continuous testing quest for quality conference2016 quali continuous testing quest for quality conference
2016 quali continuous testing quest for quality conference
QualiQuali
 

Similaire à Progressive Deployment & NoDeploy (20)

Lessons Learned in Software Development: QA Infrastructure – Maintaining Rob...
Lessons Learned in Software Development: QA Infrastructure – Maintaining Rob...Lessons Learned in Software Development: QA Infrastructure – Maintaining Rob...
Lessons Learned in Software Development: QA Infrastructure – Maintaining Rob...
 
Beyond Scrum: Scaling Agile with Continuous Delivery and Subversion
Beyond Scrum: Scaling Agile with Continuous Delivery and SubversionBeyond Scrum: Scaling Agile with Continuous Delivery and Subversion
Beyond Scrum: Scaling Agile with Continuous Delivery and Subversion
 
Kelly potvin nosurprises_odtug_oow12
Kelly potvin nosurprises_odtug_oow12Kelly potvin nosurprises_odtug_oow12
Kelly potvin nosurprises_odtug_oow12
 
Principles and Practices in Continuous Deployment at Etsy
Principles and Practices in Continuous Deployment at EtsyPrinciples and Practices in Continuous Deployment at Etsy
Principles and Practices in Continuous Deployment at Etsy
 
Continuous Everything
Continuous EverythingContinuous Everything
Continuous Everything
 
Ci tips and_tricks_linards_liepins
Ci tips and_tricks_linards_liepinsCi tips and_tricks_linards_liepins
Ci tips and_tricks_linards_liepins
 
Software reengineering for Developers
Software reengineering for DevelopersSoftware reengineering for Developers
Software reengineering for Developers
 
Relay health build system
Relay health build systemRelay health build system
Relay health build system
 
Five Ways Automation Has Increased Application Deployment and Changed Culture
Five Ways Automation Has Increased Application Deployment and Changed CultureFive Ways Automation Has Increased Application Deployment and Changed Culture
Five Ways Automation Has Increased Application Deployment and Changed Culture
 
Test Driven Design
Test Driven DesignTest Driven Design
Test Driven Design
 
Test Driven Design - GDG DevFest Istanbul 2016
Test Driven Design - GDG DevFest Istanbul 2016Test Driven Design - GDG DevFest Istanbul 2016
Test Driven Design - GDG DevFest Istanbul 2016
 
Continuous deployment
Continuous deploymentContinuous deployment
Continuous deployment
 
Architecting for continuous delivery (33rd Degree)
Architecting for continuous delivery (33rd Degree)Architecting for continuous delivery (33rd Degree)
Architecting for continuous delivery (33rd Degree)
 
Continuous Delivery Overview
Continuous Delivery OverviewContinuous Delivery Overview
Continuous Delivery Overview
 
Container Security Scanning by Timo Pagel
Container Security Scanning by Timo PagelContainer Security Scanning by Timo Pagel
Container Security Scanning by Timo Pagel
 
Container Security Scanning by Timo Pagel
Container Security Scanning by Timo PagelContainer Security Scanning by Timo Pagel
Container Security Scanning by Timo Pagel
 
Enterprise IPv6 Deployment
Enterprise IPv6 Deployment Enterprise IPv6 Deployment
Enterprise IPv6 Deployment
 
CI adventures in .NET
CI adventures in .NETCI adventures in .NET
CI adventures in .NET
 
Continuous Interop Testing
Continuous Interop TestingContinuous Interop Testing
Continuous Interop Testing
 
2016 quali continuous testing quest for quality conference
2016 quali continuous testing quest for quality conference2016 quali continuous testing quest for quality conference
2016 quali continuous testing quest for quality conference
 

Plus de Yi-Feng Tzeng

Plus de Yi-Feng Tzeng (20)

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

Dernier

Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 

Dernier (20)

Boost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdfBoost Fertility New Invention Ups Success Rates.pdf
Boost Fertility New Invention Ups Success Rates.pdf
 
Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...Apidays New York 2024 - The value of a flexible API Management solution for O...
Apidays New York 2024 - The value of a flexible API Management solution for O...
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?A Year of the Servo Reboot: Where Are We Now?
A Year of the Servo Reboot: Where Are We Now?
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
Strategies for Unlocking Knowledge Management in Microsoft 365 in the Copilot...
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 

Progressive Deployment & NoDeploy