はじめに
今年もPHPerKaigiの時期になりました。
オンライン視聴するライトユーザーですが、毎年楽しみにしております。
2025年のPHPerKaigiはオンライン視聴できたので、レポートしていこうと思います。
対象者
この記事は下記のような人を対象にしています。
- PHPerKaigi2025に参加したいが出来なかった方
- アーカイブ動画を見たいが、どれから見るか迷ってる方
・あくまで個人のメモのため、実際の内容と異なる場合があります
・興味のある部分のみメモしており、網羅的でない点、ご了承ください
モジュラーモノリスでスケーラブルなシステムを設計・開発する by プログラミングをするパンダ
- 1モジュールを1チームで担当する
- という理想だったが、担当チームがつかない不人気モジュールは基盤チームが面倒見る
- PDCAをチーム単位で回しやすくなった
- クリーンアーキテクチャ
- 1層目 ゲートウェイ ←ここだけフレームワーク依存+CQRSを意識
- 2層目 アプリケーション ←ここがモジュール化されてる
- 3層目 ドメイン ←ここがモジュール化されてる
- UnitOfWorkでトランザクション管理
- モジュール間連携
- ModuleProxy(メソッドコール)
- 非同期イベントリスナー(ドメインイベント)
- メリット
- デプロイしやすい
- テスト書きやすい
- デメリット
- 学習コストが高い
- MVCしか知らないとむずい
- 「オブジェクト設計スタイルガイド」おすすめの本
OpenTelemetryを活用したObservability入門 by 清家史郎
- どこで何が起きていて、何をすれば治るのか、を知るのがObservability
- Observabilityの3要素
- ログ
- メトリクス
- トレース
- OpenTelemetry
- 言語を問わないSDK
- ベンダーニュートラル
- PHPの場合、8.0以上必要
- マイクロサービス間のトレースが容易に
- 計装:測定、収取する仕組みを導入すること
アーキテクトと美学:美しさがシステムにもたらす秩序と未来 by nrs
- デザイン = 審美性を根源とする設計行為
- 美しさは普遍的なものである
- 美しさは解析できる = 美しさは作れる
- アーキテクトが芸術に触れることは言語化能力のトレーニングとして有用
技術的負債を正しく理解し、正しく付き合う by 河瀨 翔吾
- 技術的負債は絶対悪ではなく、リスクの一種
- 適切に管理されるべき
- 技術的負債が生まれる経緯がリアルすぎる
- 技術的負債を抑える方法
- 自動テストとCI導入は必須
- フレームワークやライブラリの導入を絞る
- コードの共同所有
- ドキュメントの充実化
- 腐敗防止層
- 日常的なリファクタリング(20%ルール)
PHPで巨大データ検索の高速化:strposと計算量の重要性 by まさき。
- 1回の処理はms単位でも、3000万回も実施されると30秒になり、ユーザー体験に影響あり
- O(N)の処理をループ内で使う際には要注意
PHP 8.4がリリース!あなたはもうアップデートしましたか? by 当田昇
- 自動化テストがない辛いっすね...
- composer-patches使えばライブラリ起因のエラーを無理やり解消
小さく段階的リリースすることで深夜メンテを回避する by まきまき
- 一次利用カラムを用いてデータを退避+切り戻しできるように
おわりに
カンファレンスは楽しい!
また来年も参加しようっと。