Go製サーバーFrankenPHPについて / FrankenPHP: A Modern PHP App Server Written in Go
by
shiro seike
×
Copy
Open
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
Slide 1
Slide 1 text
Fukuoka.go# FrankenPHP Reboot . 9 1 8 0 1 6 4 2 1 3 2 @seike 0 2 1 Go .
Slide 2
Slide 2 text
- - 0 6 4 門 日 0 6 4 @seike 己 自 2 @seike AWS Community Builder Serverless Fusic - / / Fukuoka.php Fukuoka.go(921 ) Serverless Meetup Fukuoka
Slide 3
Slide 3 text
3 4 3 2 1 Agenda .FrankenPHP . . .
Slide 4
Slide 4 text
1 0 FrankenPHP
Slide 5
Slide 5 text
っEarly Hints HTTP っ っ っ HTTPS 行 3 3 自 2 2 HTTPS っHTTP/ HTTP/ HTTP/ HTTP/ 自 高 5 FrankenPHP 103
Slide 6
Slide 6 text
Symfony API Platform Laravel Sulu WordPress Drupal Joomla framework Caddyfile 方 6 FrankenPHP
Slide 7
Slide 7 text
2 0
Slide 8
Slide 8 text
C Apache module mod_php FastCGI Process Manager php-fpm C FrankenPHP Nginx Apache 大 一 行 PHP 言 8 PHP
Slide 9
Slide 9 text
3 0
Slide 10
Slide 10 text
frankenphp 行 見 Caddy 0 1 Caddy
Slide 11
Slide 11 text
っ HTTPS Let's Encrypt SSL/TLS ) ZeroSSL っHTTP/ HTTP/ HTTP/ HTTP/ っ っ っ Linux macOS 行 ・ 3 3 2 用 2 自 っ 1 自 1 Caddy(Go Windows
Slide 12
Slide 12 text
import "C" Caddy C frankenphp.go Cgo PHP import C PHP SAPI Server API Go -> PHP ⾒ SAPI frankenphp_server_context 用 行 frankenphp.c PHP(C) Go 2 1 frankenphp.go _cgo_export.h URI
Slide 13
Slide 13 text
Caddy(net/http) Request Context 用 Go -> 3 1 PHP Request NewRequestWithContext
Slide 14
Slide 14 text
documentRoot PHP spiritPath env Context Request.WithContext 4 1 NewRequestWithContext
Slide 15
Slide 15 text
Caddy(net/http) Request NewRequestWithContext Request Context NewRequestWithContext frankenphp.ServeHTTP(w, fr) 用 Go -> 5 生 1 frankenphp.ServeHTTP
Slide 16
Slide 16 text
import "C" 行 行 sync.WaitGroup shutdownWG.Add WaitGroup frankenphp.ServeHttp Context築 Request PHP PHP 6 1 frankenphp.go
Slide 17
Slide 17 text
FrankenPHP Apache nginx + php-fpm PHP Go Point Go PHP (php-src) C Request Context築 PHP PHP PHP 行 1 3 2 HTTP 言 Point 7 1 Point
Slide 18
Slide 18 text
Thank You We are Hiring ! https://recruit.fusic.co.jp/