アーカイブ 2023
75 件の記事
開発生産性についての記事漁り
DORAのFour KeysやSPACEフレームワークを使った開発生産性の計測を解説。デプロイ頻度やリードタイムなどの指標を紹介します。
アーキテクチャ設計と組織設計についての記事漁り
アーキテクチャ設計と組織設計についての記事漁りについて、設計原則とトレードオフ、実践的な適用方法を詳しく解説します。
Aurora Serverlessについて調べた
Aurora Serverless v2のマルチAZ対応、オートスケーリング、コスト最適化、導入時の検討ポイントを調べてまとめます。
GrafanaでContact PointsとPoliciesをプロビジョニングするようにする
GrafanaのContact Pointsとアラートポリシーを、YAML設定ファイルでプロビジョニングしてSlack通知を自動化する方法を解説します。
ソフトウェア開発のプロジェクトにおける不確実性への向き合い方
ソフトウェア開発における不確実性への向き合い方を、アジャイルな計画づくりの観点から解説。既知の未知と未知の未知を区別し、リスクを抑える方法を紹介します。
モニタリングシステムにおけるPull型とPush型のアプローチの違い
モニタリングシステムにおけるPull型とPush型のアーキテクチャの違いを、それぞれのメリット・デメリットと代表的なツールとともに整理して解説します。
アーキテクチャ設計の進め方
アーキテクチャ設計の進め方について、設計原則とトレードオフ、実践的な適用方法を詳しく解説します。
GoReleaserを使ってのGoのアプリケーションを配布する
GoReleaserを使ってGoアプリケーションをクロスコンパイルし、バイナリを配布する方法を解説します。
ADRのテンプレートファイルを生成するコマンド
アーキテクチャ決定記録(ADR)のテンプレートを、自動採番やステータス管理つきで生成するMakeコマンドの実装を解説します。
GraphQLとは?実例で学ぶ完全ガイド
GraphQL の完全入門ガイド。クエリ・ミューテーションの仕組み、REST との比較、実際に使い始めるための実践的なサンプルを解説します。
HTTP Routerの自作で参考にした資料
Goでのradix木やトライ木、ベンチマーク比較など、HTTPルーターを自作する際に参考になる資料を紹介します。
サービスメッシュとは?IstioとLinkerdの仕組みを解説
サービスメッシュとは何か、Istio と Linkerd の仕組み・サイドカープロキシ・トラフィック管理・可観測性の実現方法を解説します。
CircleCIでphpunitの並列テストを行う
CircleCIでシェルスクリプトを使って設定を動的生成し、コンテナを分割してPHPUnitの並列テストを実行する方法を解説します。
slogを使ったContextual Logging
Go 1.21以降のlog/slogを使ったコンテキスト付き構造化ログを解説。カスタムslog.HandlerやcontextからのトレースID注入、JSON出力を紹介します。
More Effective Agile
More Effective Agile
モジュラモノリスアーキテクチャ:マイクロサービスとの比較と選び方
モジュラモノリスアーキテクチャとは何か、マイクロサービスとの比較、どんな場面で選択すべきかを実践的な観点で解説します。
CQRSとは?コマンドクエリ責務分離を使うべき場面
CQRS(コマンドクエリ責務分離)とは何か、CRUD との違い、スケーラビリティ改善につながる場面と適用すべきでない場面を解説します。
Sagaパターンとは?マイクロサービスでの分散トランザクション管理
Saga パターンとは何か、マイクロサービスにおける分散トランザクション管理の方法(コレオグラフィ型・オーケストレーション型)を解説します。
Goのresponse.WriteHeaderの副作用について
response.WriteHeaderの複数回呼び出しによる副作用を解析し、bytes.Bufferを使った回避方法とtemplateのExecute処理の実装パターンを提示。
GoでServeMuxの機能拡張を提案するProposalがAcceptedになった
Goのnet/http ServeMuxに動的ルーティングとパスパラメータを追加するProposalがAcceptedに。goblinなどサードパーティルーターやGoのルーティングの今後への意味を解説します。