SlideShare a Scribd company logo
1 of 46
Modern PHP
Ch 8. Tuning
Ch 9. Deployment
導讀
ChengWei @ LaraDiner 2015.6.25
Ch 8. 前言
• 關於 Tuning,本章其實沒有很深⼊入。
• 關於 Tuning,它並不能解決程式寫的
爛造成的效能低落。
PHP.ini
• 先搞清楚是哪⼀一個 PHP?
• PHP-FPM

ubuntu -> /etc/php5/fpm/php.ini
• CLI

ubuntu -> /etc/php5/cli/php.ini
PHP.ini
PHP iniscan tool, 

written by Chris Cornutt.
• https://github.com/psecio/iniscan
• 可以幫助你掃描 php.ini 裡的參數,並提供⼀一些設定
上的建議。
Memory
⽼老問題 memory_limit 應該設多⼤大?
• 先問剩下多少 Memory 可以⽤用?
• 實際檢測程式會消耗多少 Memory
Memory
⽼老問題 memory_limit 應該設多⼤大?
• 先問剩下多少 Memory 可以⽤用?
• 實際檢測程式會消耗多少 Memory扣掉 system, mysql, nginx …
Memory
⽼老問題 memory_limit 應該設多⼤大?
• 先問剩下多少 Memory 可以⽤用?
• 實際檢測程式會消耗多少 Memory
memory_get_peak_usage()
Memory
PHP-FPM 可以有多少 processes?
!
!
Memory
PHP-FPM 可以有多少 processes?
!
!
!
Pool
!
!
Master
Child
Child
Child
複習一下
Memory
PHP-FPM 可以有多少 processes?
• 先問剩下多少 Memory 可以⽤用?
• 實際檢測程式會消耗多少 Memory
• 相除得到⼤大概的數量
Memory
PHP-FPM 可以有多少 processes?
• 先問剩下多少 Memory 可以⽤用?
• 實際檢測程式會消耗多少 Memory
• 相除得到⼤大概的數量
512MB
10MB
512 / 10 = 51.2
Memory
壓⼒力測試⾃自⼰己測測看
• Apache Bench
• Siege
Memory
延伸閱讀
• Tools of the trade for performance
and load testing
• perf-tooling.today

Start performance tooling today
Zend OPcache
• bundled with PHP 5.5.0+
• 在 php.ini 中⾃自⾏行開啟
Zend OPcache
• bundled with PHP 5.5.0+
• 在 php.ini 中⾃自⾏行開啟
補充:有壓力比較能看出效果!建議配合壓力測試服用
Zend OPcache
!
Nginx
HTTP request
!
PHP Process
PHP Script
!
opcode
bytecode
compiles
HTTP response executes
forwards
Zend OPcache
!
Nginx
HTTP request
!
PHP Process
PHP Script
!
opcode
bytecode
compiles
HTTP response executes
forwards
Caching
Zend OPcache
• opcache.memory_consumption = 64
• opcache.interned_strings_buffer = 16
• opcache.max_accelerated_files = 4000
Zend OPcache
• opcache.memory_consumption = 64
• opcache.interned_strings_buffer = 16
• opcache.max_accelerated_files = 4000
MB
MB
大於 PHP 檔案數量
The amount of memory allocated for the opcode cache.
Zend OPcache
• opcache.validate_timestamps = 1
• opcache.revalidate_freq = 0
• opcache.fast_shutdown = 1
Zend OPcache
• opcache.validate_timestamps = 1
• opcache.revalidate_freq = 0
• opcache.fast_shutdown = 1
When this is enabled, PHP will check the file
timestamp per your opcache.revalidate_freq value.
秒
All you need to know is turn this on.
production 則關掉
Zend OPcache
延伸閱讀
• Why Every PHP Application Should Use an
OpCache
• Best Zend OpCache Settings/Tuning/Config
• Understanding OpCache
• PHP’s Zend Opcache Config & Web Viewer
File Uploads
書中認為預設值開太⼤大,可以調⼩小⼀一點
• file_uploads = 1
• upload_max_filesize = 10M
• max_file_uploads = 3
File Uploads
書中認為預設值開太⼤大,可以調⼩小⼀一點
• file_uploads = 1
• upload_max_filesize = 10M
• max_file_uploads = 3
NOTE:別忘了 Nginx 的 client_max_body_size
File Uploads
書中認為預設值開太⼤大,可以調⼩小⼀一點
• file_uploads = 1
• upload_max_filesize = 10M
• max_file_uploads = 3
NOTE:別忘了 Nginx 的 client_max_body_size
HTTP request body size
複習一下 Ch 7. Provisioning
Max Execution Time
• 書中建議不要開太⻑⾧長
• max_execution_time = 5
• 如果有程式需要運作⻑⾧長時間呢?

->請送⼊入 Queue 拉到背景處理。
Session Handling
• 在使⽤用 Session 時遇到 disk I/O 問題

-> 改⽤用 Memcached 或 Redis
Output Buffering
• 基於減少 HTTP request 數量的緣故
• output_buffering = 4096
• implicit_flush = false
Server Client4096
Server Client
busy
Realpath Cache
如果你⽤用了 CMS 或很多的 Packages,
可以考慮微調此參數。
• 預設值 16K
• 先開超⼤大,再縮⼩小,找出合適的數值。
• ⽤用 print_r(realpath_cache_size()); 查看
Ch 8. 結束
(誠徵高手補充說明) (望向Ricky大)
Ch 8. 結束
(誠徵高手補充說明) (望向Ricky大)
結果今晚沒來(哭哭)
Ch 9. 前言
• “FTP was a popular way”
• 何不改⽤用更現代化、更安全、更⾃自動
化的部署⽅方式
大驚
Version Control
• 版本控制 Git 或 Mercurial
• GitHub 或 Bitbucket
• ⾃自動化部署的必要前提
Automate Deployment
作者在書中表⽰示,他認為⾃自動化部署應
該具備以下三個特點。
• Simple
• Predictable
• Reversible process.
Automate Deployment
作者在書中表⽰示,他認為⾃自動化部署應
該具備以下三個特點。
• Simple
• Predictable
• Reversible process.
簡單
可預測
可逆
Automate Deployment
作者在書中表⽰示,他認為⾃自動化部署應
該具備以下三個特點。
• Simple
• Predictable
• Reversible process.
簡單
可預測
可逆
最好一行指令可以搞定
你知道它執行了哪些動作
最好一行指令即可 roll back
Capistrano
作者接下來都在介紹 Capistrano
!
!
Capistrano
作者接下來都在介紹 Capistrano
!
!
其實可以整段跳過,建議直接去看官網文件
Capistrano
作者接下來都在介紹 Capistrano
• 利⽤用 SSH (local -> remote)
• ⽤用 Ruby 撰寫的
• 但可以⽤用於 deploy 任何程式語⾔言
Capistrano
作者接下來都在介紹 Capistrano
• Install, Configure
• Authenticate
Capistrano
作者接下來都在介紹 Capistrano
• Install, Configure
• Authenticate
跳過,建議直接去看官網文件
Capistrano
作者接下來都在介紹 Capistrano
• Install, Configure
• Authenticate
跳過,建議直接去看官網文件
local <-> remote
remote <-> Git repository
Capistrano
作者接下來都在介紹 Capistrano
• Prepare the Remote Server
所以你還是逃不了,要先把 Remote Server 設定完畢
SSH Auth Virtual host
install composerinstall git
檔案路徑
Capistrano
當⼀一切都設定完畢後。
• 最後你就可以⼀一⾏行指令 deploy
• 當然你也可以⼀一⾏行指令 roll back
Further Reading
作者推薦了其他的⼯工具。
• Deployer
• Magallanes
• Rocketeer
結束 (誠徵高手補充說明)
ChengWei @ LaraDiner 2015.6.25

More Related Content

What's hot

台北市研習_LAMP_20140815
台北市研習_LAMP_20140815台北市研習_LAMP_20140815
台北市研習_LAMP_20140815fweng322
 
服务器基准测试-叶金荣@CYOU-20121130
服务器基准测试-叶金荣@CYOU-20121130服务器基准测试-叶金荣@CYOU-20121130
服务器基准测试-叶金荣@CYOU-20121130Jinrong Ye
 
淘宝网前台应用性能优化实践
淘宝网前台应用性能优化实践淘宝网前台应用性能优化实践
淘宝网前台应用性能优化实践丁 宇
 
MySQL压力测试经验
MySQL压力测试经验MySQL压力测试经验
MySQL压力测试经验Jinrong Ye
 
Http Headers 與 Cache 機制(2016)
Http Headers 與 Cache 機制(2016)Http Headers 與 Cache 機制(2016)
Http Headers 與 Cache 機制(2016)振揚 陳
 
Http cache 的優化
Http cache 的優化Http cache 的優化
Http cache 的優化振揚 陳
 
高性能Web服务器Nginx及相关新技术的应用实践
高性能Web服务器Nginx及相关新技术的应用实践高性能Web服务器Nginx及相关新技术的应用实践
高性能Web服务器Nginx及相关新技术的应用实践rewinx
 
現代 IT 人一定要知道的 Ansible 自動化組態技巧
現代 IT 人一定要知道的 Ansible 自動化組態技巧現代 IT 人一定要知道的 Ansible 自動化組態技巧
現代 IT 人一定要知道的 Ansible 自動化組態技巧Chu-Siang Lai
 
淘宝前台系统性能分析与优化
淘宝前台系统性能分析与优化淘宝前台系统性能分析与优化
淘宝前台系统性能分析与优化丁 宇
 
高性能Web服务器nginx及相关新技术的应用
高性能Web服务器nginx及相关新技术的应用高性能Web服务器nginx及相关新技术的应用
高性能Web服务器nginx及相关新技术的应用redhat9
 
如何针对业务做DB优化
如何针对业务做DB优化如何针对业务做DB优化
如何针对业务做DB优化Jinrong Ye
 
快速搭建高性能服务端
快速搭建高性能服务端快速搭建高性能服务端
快速搭建高性能服务端moonbingbing
 
20111018 zhouchen share
20111018 zhouchen share20111018 zhouchen share
20111018 zhouchen sharezcbug
 
编辑器设计U editor
编辑器设计U editor编辑器设计U editor
编辑器设计U editortaobao.com
 
Node.js在淘宝的应用实践
Node.js在淘宝的应用实践Node.js在淘宝的应用实践
Node.js在淘宝的应用实践taobao.com
 

What's hot (20)

台北市研習_LAMP_20140815
台北市研習_LAMP_20140815台北市研習_LAMP_20140815
台北市研習_LAMP_20140815
 
服务器基准测试-叶金荣@CYOU-20121130
服务器基准测试-叶金荣@CYOU-20121130服务器基准测试-叶金荣@CYOU-20121130
服务器基准测试-叶金荣@CYOU-20121130
 
淘宝网前台应用性能优化实践
淘宝网前台应用性能优化实践淘宝网前台应用性能优化实践
淘宝网前台应用性能优化实践
 
MySQL压力测试经验
MySQL压力测试经验MySQL压力测试经验
MySQL压力测试经验
 
Http Headers 與 Cache 機制(2016)
Http Headers 與 Cache 機制(2016)Http Headers 與 Cache 機制(2016)
Http Headers 與 Cache 機制(2016)
 
Http cache 的優化
Http cache 的優化Http cache 的優化
Http cache 的優化
 
美团技术团队 - KVM性能优化
美团技术团队 - KVM性能优化美团技术团队 - KVM性能优化
美团技术团队 - KVM性能优化
 
高性能Web服务器Nginx及相关新技术的应用实践
高性能Web服务器Nginx及相关新技术的应用实践高性能Web服务器Nginx及相关新技术的应用实践
高性能Web服务器Nginx及相关新技术的应用实践
 
Ceph monitor-op
Ceph monitor-opCeph monitor-op
Ceph monitor-op
 
Maven & mongo & sring
Maven & mongo & sringMaven & mongo & sring
Maven & mongo & sring
 
現代 IT 人一定要知道的 Ansible 自動化組態技巧
現代 IT 人一定要知道的 Ansible 自動化組態技巧現代 IT 人一定要知道的 Ansible 自動化組態技巧
現代 IT 人一定要知道的 Ansible 自動化組態技巧
 
淘宝前台系统性能分析与优化
淘宝前台系统性能分析与优化淘宝前台系统性能分析与优化
淘宝前台系统性能分析与优化
 
高性能Web服务器nginx及相关新技术的应用
高性能Web服务器nginx及相关新技术的应用高性能Web服务器nginx及相关新技术的应用
高性能Web服务器nginx及相关新技术的应用
 
如何针对业务做DB优化
如何针对业务做DB优化如何针对业务做DB优化
如何针对业务做DB优化
 
Berserk js
Berserk jsBerserk js
Berserk js
 
快速搭建高性能服务端
快速搭建高性能服务端快速搭建高性能服务端
快速搭建高性能服务端
 
20111018 zhouchen share
20111018 zhouchen share20111018 zhouchen share
20111018 zhouchen share
 
Web server
Web serverWeb server
Web server
 
编辑器设计U editor
编辑器设计U editor编辑器设计U editor
编辑器设计U editor
 
Node.js在淘宝的应用实践
Node.js在淘宝的应用实践Node.js在淘宝的应用实践
Node.js在淘宝的应用实践
 

Viewers also liked

Model 設定與 Seeding
Model 設定與 SeedingModel 設定與 Seeding
Model 設定與 SeedingShengyou Fan
 
View 與 Blade 樣板引擎
View 與 Blade 樣板引擎View 與 Blade 樣板引擎
View 與 Blade 樣板引擎Shengyou Fan
 
Package 安裝與使用
Package 安裝與使用Package 安裝與使用
Package 安裝與使用Shengyou Fan
 
Composer 套件管理
Composer 套件管理Composer 套件管理
Composer 套件管理Shengyou Fan
 
Route 路由控制
Route 路由控制Route 路由控制
Route 路由控制Shengyou Fan
 
啟動 Laravel 與環境設定
啟動 Laravel 與環境設定啟動 Laravel 與環境設定
啟動 Laravel 與環境設定Shengyou Fan
 
PHP 語法基礎與物件導向
PHP 語法基礎與物件導向PHP 語法基礎與物件導向
PHP 語法基礎與物件導向Shengyou Fan
 
開發環境建置
開發環境建置開發環境建置
開發環境建置Shengyou Fan
 
Migrations 與 Schema 操作
Migrations 與 Schema 操作Migrations 與 Schema 操作
Migrations 與 Schema 操作Shengyou Fan
 
[PHPConf Taiwan 2015] 跟著 Laravel 5.1 一起成為更好的 PHP 開發者
[PHPConf Taiwan 2015] 跟著 Laravel 5.1 一起成為更好的 PHP 開發者[PHPConf Taiwan 2015] 跟著 Laravel 5.1 一起成為更好的 PHP 開發者
[PHPConf Taiwan 2015] 跟著 Laravel 5.1 一起成為更好的 PHP 開發者Shengyou Fan
 

Viewers also liked (18)

工作坊簡介
工作坊簡介工作坊簡介
工作坊簡介
 
工作坊總結
工作坊總結工作坊總結
工作坊總結
 
整合 Open ID
整合 Open ID整合 Open ID
整合 Open ID
 
驗證與訊息
驗證與訊息驗證與訊息
驗證與訊息
 
Eloquent ORM
Eloquent ORMEloquent ORM
Eloquent ORM
 
CRUD 綜合運用
CRUD 綜合運用CRUD 綜合運用
CRUD 綜合運用
 
使用 Controller
使用 Controller使用 Controller
使用 Controller
 
Model 設定與 Seeding
Model 設定與 SeedingModel 設定與 Seeding
Model 設定與 Seeding
 
View 與 Blade 樣板引擎
View 與 Blade 樣板引擎View 與 Blade 樣板引擎
View 與 Blade 樣板引擎
 
Package 安裝與使用
Package 安裝與使用Package 安裝與使用
Package 安裝與使用
 
Composer 套件管理
Composer 套件管理Composer 套件管理
Composer 套件管理
 
Route 路由控制
Route 路由控制Route 路由控制
Route 路由控制
 
啟動 Laravel 與環境設定
啟動 Laravel 與環境設定啟動 Laravel 與環境設定
啟動 Laravel 與環境設定
 
PHP 語法基礎與物件導向
PHP 語法基礎與物件導向PHP 語法基礎與物件導向
PHP 語法基礎與物件導向
 
開發環境建置
開發環境建置開發環境建置
開發環境建置
 
Migrations 與 Schema 操作
Migrations 與 Schema 操作Migrations 與 Schema 操作
Migrations 與 Schema 操作
 
使用者認證
使用者認證使用者認證
使用者認證
 
[PHPConf Taiwan 2015] 跟著 Laravel 5.1 一起成為更好的 PHP 開發者
[PHPConf Taiwan 2015] 跟著 Laravel 5.1 一起成為更好的 PHP 開發者[PHPConf Taiwan 2015] 跟著 Laravel 5.1 一起成為更好的 PHP 開發者
[PHPConf Taiwan 2015] 跟著 Laravel 5.1 一起成為更好的 PHP 開發者
 

Similar to Modern php ch8 ch9 guide 導讀

開發環境建置
開發環境建置開發環境建置
開發環境建置Shengyou Fan
 
PHP Optimization for Millions Visits Level
PHP Optimization for Millions Visits LevelPHP Optimization for Millions Visits Level
PHP Optimization for Millions Visits LevelHo Kim
 
Docker tutorial
Docker tutorialDocker tutorial
Docker tutorialazole Lai
 
高性能LAMP程序设计
高性能LAMP程序设计高性能LAMP程序设计
高性能LAMP程序设计fuchaoqun
 
第01讲 php环境搭配和
第01讲  php环境搭配和第01讲  php环境搭配和
第01讲 php环境搭配和cyfp
 
系统性能分析和优化.ppt
系统性能分析和优化.ppt系统性能分析和优化.ppt
系统性能分析和优化.pptFrank Cai
 
A brief introduction to Vagrant – 原來 VirtualBox 可以這樣玩
A brief introduction to Vagrant – 原來 VirtualBox 可以這樣玩A brief introduction to Vagrant – 原來 VirtualBox 可以這樣玩
A brief introduction to Vagrant – 原來 VirtualBox 可以這樣玩Wen-Tien Chang
 
Internal php and gdb php core
Internal php and gdb php coreInternal php and gdb php core
Internal php and gdb php corealpha86
 
寫出高性能的服務與應用 那些你沒想過的事
寫出高性能的服務與應用 那些你沒想過的事寫出高性能的服務與應用 那些你沒想過的事
寫出高性能的服務與應用 那些你沒想過的事Chieh (Jack) Yu
 
Php设计模式介绍
Php设计模式介绍Php设计模式介绍
Php设计模式介绍cyf5513
 
大话Php之性能
大话Php之性能大话Php之性能
大话Php之性能liqiang xu
 
軟體組裝心得分享
軟體組裝心得分享軟體組裝心得分享
軟體組裝心得分享Wen Liao
 
Lamp优化实践
Lamp优化实践Lamp优化实践
Lamp优化实践zhliji2
 
Asp.net core v1.0
Asp.net core v1.0Asp.net core v1.0
Asp.net core v1.0國昭 張
 
Continuous Delivery Workshop with Ansible x GitLab CI
Continuous Delivery Workshop with Ansible x GitLab CIContinuous Delivery Workshop with Ansible x GitLab CI
Continuous Delivery Workshop with Ansible x GitLab CIChu-Siang Lai
 
从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰
从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰
从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰Scourgen Hong
 
JavaScript 80+ Programming and Optimization Skills
JavaScript 80+ Programming and Optimization SkillsJavaScript 80+ Programming and Optimization Skills
JavaScript 80+ Programming and Optimization SkillsHo Kim
 
02.python.开发最佳实践
02.python.开发最佳实践02.python.开发最佳实践
02.python.开发最佳实践Na Lee
 
專案啟動與環境設定
專案啟動與環境設定專案啟動與環境設定
專案啟動與環境設定Shengyou Fan
 

Similar to Modern php ch8 ch9 guide 導讀 (20)

開發環境建置
開發環境建置開發環境建置
開發環境建置
 
PHP Optimization for Millions Visits Level
PHP Optimization for Millions Visits LevelPHP Optimization for Millions Visits Level
PHP Optimization for Millions Visits Level
 
Docker tutorial
Docker tutorialDocker tutorial
Docker tutorial
 
高性能LAMP程序设计
高性能LAMP程序设计高性能LAMP程序设计
高性能LAMP程序设计
 
第01讲 php环境搭配和
第01讲  php环境搭配和第01讲  php环境搭配和
第01讲 php环境搭配和
 
系统性能分析和优化.ppt
系统性能分析和优化.ppt系统性能分析和优化.ppt
系统性能分析和优化.ppt
 
A brief introduction to Vagrant – 原來 VirtualBox 可以這樣玩
A brief introduction to Vagrant – 原來 VirtualBox 可以這樣玩A brief introduction to Vagrant – 原來 VirtualBox 可以這樣玩
A brief introduction to Vagrant – 原來 VirtualBox 可以這樣玩
 
Internal php and gdb php core
Internal php and gdb php coreInternal php and gdb php core
Internal php and gdb php core
 
寫出高性能的服務與應用 那些你沒想過的事
寫出高性能的服務與應用 那些你沒想過的事寫出高性能的服務與應用 那些你沒想過的事
寫出高性能的服務與應用 那些你沒想過的事
 
Php设计模式介绍
Php设计模式介绍Php设计模式介绍
Php设计模式介绍
 
大话Php之性能
大话Php之性能大话Php之性能
大话Php之性能
 
軟體組裝心得分享
軟體組裝心得分享軟體組裝心得分享
軟體組裝心得分享
 
Lamp优化实践
Lamp优化实践Lamp优化实践
Lamp优化实践
 
Asp.net core v1.0
Asp.net core v1.0Asp.net core v1.0
Asp.net core v1.0
 
Asp.net core v1.0
Asp.net core v1.0Asp.net core v1.0
Asp.net core v1.0
 
Continuous Delivery Workshop with Ansible x GitLab CI
Continuous Delivery Workshop with Ansible x GitLab CIContinuous Delivery Workshop with Ansible x GitLab CI
Continuous Delivery Workshop with Ansible x GitLab CI
 
从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰
从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰
从林书豪到全明星 - 虎扑网技术架构如何化解流量高峰
 
JavaScript 80+ Programming and Optimization Skills
JavaScript 80+ Programming and Optimization SkillsJavaScript 80+ Programming and Optimization Skills
JavaScript 80+ Programming and Optimization Skills
 
02.python.开发最佳实践
02.python.开发最佳实践02.python.开发最佳实践
02.python.开发最佳实践
 
專案啟動與環境設定
專案啟動與環境設定專案啟動與環境設定
專案啟動與環境設定
 

More from Chen Cheng-Wei

GitOps is IaC done right
GitOps is IaC done rightGitOps is IaC done right
GitOps is IaC done rightChen Cheng-Wei
 
GitLab Auto DevOps 大解析—CI/CD 原來可以這樣做
GitLab Auto DevOps 大解析—CI/CD 原來可以這樣做GitLab Auto DevOps 大解析—CI/CD 原來可以這樣做
GitLab Auto DevOps 大解析—CI/CD 原來可以這樣做Chen Cheng-Wei
 
From DevOps to GitOps with GitLab
From DevOps to GitOps with GitLabFrom DevOps to GitOps with GitLab
From DevOps to GitOps with GitLabChen Cheng-Wei
 
和艦長一起玩轉 GitLab & GitLab Workflow
和艦長一起玩轉 GitLab & GitLab Workflow和艦長一起玩轉 GitLab & GitLab Workflow
和艦長一起玩轉 GitLab & GitLab WorkflowChen Cheng-Wei
 
以自動化先行的 DevOps 實踐經驗分享
以自動化先行的 DevOps 實踐經驗分享以自動化先行的 DevOps 實踐經驗分享
以自動化先行的 DevOps 實踐經驗分享Chen Cheng-Wei
 
SRE 讀書會:導讀《持續交付》第15章 - 持續交付管理
SRE 讀書會:導讀《持續交付》第15章 - 持續交付管理SRE 讀書會:導讀《持續交付》第15章 - 持續交付管理
SRE 讀書會:導讀《持續交付》第15章 - 持續交付管理Chen Cheng-Wei
 
DevOpsDays Taiepi 2018 - Farewell 閉幕
DevOpsDays Taiepi 2018 - Farewell 閉幕DevOpsDays Taiepi 2018 - Farewell 閉幕
DevOpsDays Taiepi 2018 - Farewell 閉幕Chen Cheng-Wei
 
SRE 讀書會 - 導讀:第 31 章
SRE 讀書會 - 導讀:第 31 章SRE 讀書會 - 導讀:第 31 章
SRE 讀書會 - 導讀:第 31 章Chen Cheng-Wei
 
SRE 讀書會 - 導讀:第 30 章
SRE 讀書會 - 導讀:第 30 章SRE 讀書會 - 導讀:第 30 章
SRE 讀書會 - 導讀:第 30 章Chen Cheng-Wei
 
跟著 geerlingguy 大神
一起測試 Ansible Roles
跟著 geerlingguy 大神
一起測試 Ansible Roles跟著 geerlingguy 大神
一起測試 Ansible Roles
跟著 geerlingguy 大神
一起測試 Ansible RolesChen Cheng-Wei
 
iThome Serverless All-Star 開場
iThome Serverless All-Star 開場iThome Serverless All-Star 開場
iThome Serverless All-Star 開場Chen Cheng-Wei
 
CI/CD、自動化,你還沒準備好(GCPUG.TW Meetup #34)
CI/CD、自動化,你還沒準備好(GCPUG.TW Meetup #34)CI/CD、自動化,你還沒準備好(GCPUG.TW Meetup #34)
CI/CD、自動化,你還沒準備好(GCPUG.TW Meetup #34)Chen Cheng-Wei
 
Ansible & GitLab CI / CD Workshop 101 ( @Agile Tour Taipei 2017)
Ansible & GitLab CI / CD Workshop 101 ( @Agile Tour Taipei 2017)Ansible & GitLab CI / CD Workshop 101 ( @Agile Tour Taipei 2017)
Ansible & GitLab CI / CD Workshop 101 ( @Agile Tour Taipei 2017)Chen Cheng-Wei
 
CI、CD、Automation你還沒準備好!?(Agile Tour Kaohsiung 2017)
CI、CD、Automation你還沒準備好!?(Agile Tour Kaohsiung 2017)CI、CD、Automation你還沒準備好!?(Agile Tour Kaohsiung 2017)
CI、CD、Automation你還沒準備好!?(Agile Tour Kaohsiung 2017)Chen Cheng-Wei
 
Effective DevOps (Agile Tour HsinChu 2017)
Effective DevOps (Agile Tour HsinChu 2017)Effective DevOps (Agile Tour HsinChu 2017)
Effective DevOps (Agile Tour HsinChu 2017)Chen Cheng-Wei
 
SRE 讀書會 - 導讀:第一章
SRE 讀書會 - 導讀:第一章SRE 讀書會 - 導讀:第一章
SRE 讀書會 - 導讀:第一章Chen Cheng-Wei
 
DevOpsDays Taipei 2017 Opening Talk
DevOpsDays Taipei 2017 Opening TalkDevOpsDays Taipei 2017 Opening Talk
DevOpsDays Taipei 2017 Opening TalkChen Cheng-Wei
 
DevOpsDays Taipei 2017 Farewell
DevOpsDays Taipei 2017 FarewellDevOpsDays Taipei 2017 Farewell
DevOpsDays Taipei 2017 FarewellChen Cheng-Wei
 

More from Chen Cheng-Wei (20)

GitOps is IaC done right
GitOps is IaC done rightGitOps is IaC done right
GitOps is IaC done right
 
GitLab Auto DevOps 大解析—CI/CD 原來可以這樣做
GitLab Auto DevOps 大解析—CI/CD 原來可以這樣做GitLab Auto DevOps 大解析—CI/CD 原來可以這樣做
GitLab Auto DevOps 大解析—CI/CD 原來可以這樣做
 
From DevOps to GitOps with GitLab
From DevOps to GitOps with GitLabFrom DevOps to GitOps with GitLab
From DevOps to GitOps with GitLab
 
Become a GitLab Hero
Become a GitLab HeroBecome a GitLab Hero
Become a GitLab Hero
 
和艦長一起玩轉 GitLab & GitLab Workflow
和艦長一起玩轉 GitLab & GitLab Workflow和艦長一起玩轉 GitLab & GitLab Workflow
和艦長一起玩轉 GitLab & GitLab Workflow
 
以自動化先行的 DevOps 實踐經驗分享
以自動化先行的 DevOps 實踐經驗分享以自動化先行的 DevOps 實踐經驗分享
以自動化先行的 DevOps 實踐經驗分享
 
SRE 讀書會:導讀《持續交付》第15章 - 持續交付管理
SRE 讀書會:導讀《持續交付》第15章 - 持續交付管理SRE 讀書會:導讀《持續交付》第15章 - 持續交付管理
SRE 讀書會:導讀《持續交付》第15章 - 持續交付管理
 
DevOpsDays Taiepi 2018 - Farewell 閉幕
DevOpsDays Taiepi 2018 - Farewell 閉幕DevOpsDays Taiepi 2018 - Farewell 閉幕
DevOpsDays Taiepi 2018 - Farewell 閉幕
 
SRE 讀書會 - 導讀:第 31 章
SRE 讀書會 - 導讀:第 31 章SRE 讀書會 - 導讀:第 31 章
SRE 讀書會 - 導讀:第 31 章
 
SRE 讀書會 - 導讀:第 30 章
SRE 讀書會 - 導讀:第 30 章SRE 讀書會 - 導讀:第 30 章
SRE 讀書會 - 導讀:第 30 章
 
跟著 geerlingguy 大神
一起測試 Ansible Roles
跟著 geerlingguy 大神
一起測試 Ansible Roles跟著 geerlingguy 大神
一起測試 Ansible Roles
跟著 geerlingguy 大神
一起測試 Ansible Roles
 
iThome Serverless All-Star 開場
iThome Serverless All-Star 開場iThome Serverless All-Star 開場
iThome Serverless All-Star 開場
 
CI/CD、自動化,你還沒準備好(GCPUG.TW Meetup #34)
CI/CD、自動化,你還沒準備好(GCPUG.TW Meetup #34)CI/CD、自動化,你還沒準備好(GCPUG.TW Meetup #34)
CI/CD、自動化,你還沒準備好(GCPUG.TW Meetup #34)
 
Ignite talks
Ignite talksIgnite talks
Ignite talks
 
Ansible & GitLab CI / CD Workshop 101 ( @Agile Tour Taipei 2017)
Ansible & GitLab CI / CD Workshop 101 ( @Agile Tour Taipei 2017)Ansible & GitLab CI / CD Workshop 101 ( @Agile Tour Taipei 2017)
Ansible & GitLab CI / CD Workshop 101 ( @Agile Tour Taipei 2017)
 
CI、CD、Automation你還沒準備好!?(Agile Tour Kaohsiung 2017)
CI、CD、Automation你還沒準備好!?(Agile Tour Kaohsiung 2017)CI、CD、Automation你還沒準備好!?(Agile Tour Kaohsiung 2017)
CI、CD、Automation你還沒準備好!?(Agile Tour Kaohsiung 2017)
 
Effective DevOps (Agile Tour HsinChu 2017)
Effective DevOps (Agile Tour HsinChu 2017)Effective DevOps (Agile Tour HsinChu 2017)
Effective DevOps (Agile Tour HsinChu 2017)
 
SRE 讀書會 - 導讀:第一章
SRE 讀書會 - 導讀:第一章SRE 讀書會 - 導讀:第一章
SRE 讀書會 - 導讀:第一章
 
DevOpsDays Taipei 2017 Opening Talk
DevOpsDays Taipei 2017 Opening TalkDevOpsDays Taipei 2017 Opening Talk
DevOpsDays Taipei 2017 Opening Talk
 
DevOpsDays Taipei 2017 Farewell
DevOpsDays Taipei 2017 FarewellDevOpsDays Taipei 2017 Farewell
DevOpsDays Taipei 2017 Farewell
 

Modern php ch8 ch9 guide 導讀