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

PR_TIMESにおけるFastlyの導入と運用について.pptx.pdf

Avatar for Ryuya Yanagi Ryuya Yanagi
July 22, 2025
12

 PR_TIMESにおけるFastlyの導入と運用について.pptx.pdf

Avatar for Ryuya Yanagi

Ryuya Yanagi

July 22, 2025
Tweet

Transcript

  1. Product|基幹事業 プレスリリース配信サービスを運営 企業の一次情報が日本で最も集まるプラットフォームとして、国内トップシェア • 利用企業社数 • 国内上場企業利用率 • プレスリリース数 •

    メディアユーザー数 • パートナーメディア • サイト閲覧数 • SNSアカウント • 個人ユーザー数 10万社超え 57.8% 34,092件 / 月 26,911名 252媒体 8,984万PV / 月 Facebook 130,003 X 459,185 198,503名
  2. Product|事業ポートフォリオ プレスリリース配信サービス 「PR TIMES」 ストーリー配信サービス 「PR TIMES STORY」 広報・PRの効果測定サービス 「PR

    TIMES Webクリッピング」 動画PRサービス 「PR TIMES LIVE」「PR TIMES TV」 クライアントとメディアのパートナーとして広報・ PR支援の実施 「PRパートナー事業」
  3. Product|事業ポートフォリオ タスク・プロジェクト管理ツール 「Jooto」 カスタマーサポートツール 「Tayori」 アート特化型オンライン PRプラットフォーム 「MARPH」 トレンドニュースメディア 「ストレートプレス」

    Z世代向けWebメディア 「isuta」 若手ビジネスパーソン向け Webメディア 「U-NOTE」 PR・広告・プロモーション事例メディア 「PR EDGE」 スタートアップメディア 「THE BRIDGE」
  4. Fastly Image Optimizerを選択した理由 - Instant Purgeによる高速なキャッシュパージ - プレスリリースを配信するというサービス特性上、すぐにキャッシュ を削除することができるのは重要だった -

    VCLを用いて設定を柔軟に変更できる - 将来的にNext.jsを導入し、SSRした結果をCDNでキャッシュすること を視野に入れていたため、今後を見据えた上で必要であった - また、Next.js以外にも様々な場面で活用しており、開発工数を大幅に 削減することができている
  5. Terraformのディレクトリ構成 prtimes-fastly-terraform ├── .github/ │ ├── actions/ │ └── workflows/

    │ ├── terraform_plan.yaml │ └── terraform_apply.yaml ├── ci/ ├── terraform/ │ ├── prtimes.jp │ ├── prcdn.global.ssl.fastly.net │ └── www.prtimes.jp ├── .gitignore ├── README.md └── renovate.json
  6. Terraformのディレクトリ構成 prtimes-fastly-terraform ├── .github/ │ ├── actions/ │ └── workflows/

    │ ├── terraform_plan.yaml │ └── terraform_apply.yaml ├── ci/ ├── terraform/ │ ├── prtimes.jp │ ├── prcdn.global.ssl.fastly.net │ └── www.prtimes.jp ├── .gitignore ├── README.md └── renovate.json terraform plan/applyはGitHub Actionsで 実行しローカル環境では実行しない
  7. Terraformのディレクトリ構成 prtimes-fastly-terraform ├── .github/ │ ├── actions/ │ └── workflows/

    │ ├── terraform_plan.yaml │ └── terraform_apply.yaml ├── ci/ ├── terraform/ │ ├── prtimes.jp │ ├── prcdn.global.ssl.fastly.net │ └── www.prtimes.jp ├── .gitignore ├── README.md └── renovate.json ドメインごとにtfstateを分割し、 コードの共有などは一切行わない方針
  8. リリースフロー - Pull Requestを出す - GitHub Actions上で実行したplan結果を自動でコメントに付与される - Pull Requestをマージする

    - GitHub Actions上でapplyが実行される - Fastlyのコンソールに入り、VCLの差分を確認しactivateする - terraform applyではDraft versionを作るようにしている
  9. リリースフロー - Pull Requestを出す - GitHub Actions上で実行したplan結果を自動でコメントに付与される - Pull Requestをマージする

    - GitHub Actions上でapplyが実行される - Fastlyのコンソールに入り、VCLの差分を確認しactivateする - terraform applyではDraft versionを作るようにしている
  10. リリースフロー - Pull Requestを出す - GitHub Actions上で実行したplan結果を自動でコメントに付与される - Pull Requestをマージする

    - GitHub Actions上でapplyが実行される - Fastlyのコンソールに入り、VCLの差分を確認しactivateする - terraform applyではDraft versionを作るようにしている
  11. リリースフロー - Pull Requestを出す - GitHub Actions上で実行したplan結果を自動でコメントに付与される - Pull Requestをマージする

    - GitHub Actions上でapplyが実行される - Fastlyのコンソールに入り、VCLの差分を確認しactivateする - terraform applyではDraft versionを作るようにしている
  12. その他運用Tips - 全ての変更をterraform applyで行うということはなく、コンソールから直 接変更することも許容する - コンソールで変更した内容は必ず terraform に反映する -

    新規で作成したリソースなどは terraform import で tfstate を生成 する - terraform importを行う時は tfmigrate を用いて安全に行う - https://github.com/minamijoyo/tfmigrate