Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Go製サーバーFrankenPHPについて / FrankenPHP: A Modern PH...

Go製サーバーFrankenPHPについて / FrankenPHP: A Modern PHP App Server Written in Go

Fukuoka.go#19 Reboot(2023年12月18日)で発表した資料です。Go 製の PHP アプリケーションサーバー FrankenPHP について、Early Hints・ワーカーモード・リアルタイム通信といった特徴を紹介しました。

Avatar for shiro seike

shiro seike PRO

December 18, 2023

More Decks by shiro seike

Other Decks in Programming

Transcript

  1. Fukuoka.go# FrankenPHP Reboot . 9 1 8 0 1 6

    4 2 1 3 2 @seike 0 2 1 Go .
  2. - - 0 6 4 門 日 0 6 4

    @seike 己 自 2 @seike AWS Community Builder Serverless Fusic - / / Fukuoka.php Fukuoka.go(921 ) Serverless Meetup Fukuoka
  3. っEarly Hints HTTP っ っ っ HTTPS 行 3 3

    自 2 2 HTTPS っHTTP/ HTTP/ HTTP/ HTTP/ 自 高 5 FrankenPHP 103
  4. 2 0

  5. 3 0

  6. っ HTTPS Let's Encrypt SSL/TLS ) ZeroSSL っHTTP/ HTTP/ HTTP/

    HTTP/ っ っ っ Linux macOS 行 ・ 3 3 2 用 2 自 っ 1 自 1 Caddy(Go Windows
  7. 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
  8. 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