システムアーキテクチャ

キャパシティプランニングについて

システムアーキテクチャ

キャパシティプランニングの目的 システムのリソース管理を目的とし、リソースを効率的に利用することを目指す。 キャパシティプランニングのプロセス キャパシティプランニングは概算と詳細を使い分ける。不必要に詳細に踏み込まないようにし、必要な時に適切な詳細を用意する。 アプリケーションのパフォーマンス要件を定義する レスポンスタイム、スループット、同時接続数、負荷性能など。 現在のインフラの稼働状...

キャパシティプランニング

SaaSのアーキテクチャについて知るためのリスト

システムアーキテクチャ

SaaSなんもわからん!からSaaS完全に理解した!に近づくために参考になりそうな資料をまとめておく。 資料 docs.aws.amazon.com - SaaS アーキテクチャの基礎 docs.aws.amazon.com - SaaSレンズ docs.aws.amazon.com - SaaS Tenant Isolation Strategies: Isolating Resources ...

アーキテクチャ SaaS

アーキテクチャ設計の進め方

システムアーキテクチャ

概要 構成図レベルでのアーキテクチャの設計をする時の進め方として個人的に良いと思ったやり方を1つ取り上げてまとめておく。 進め方 事前に要件定義や調査がある程度済んでいるという状態を前提として、アーキテクチャの構成図を書きながら設計を進めていく作業の取り組み方法について書く。 といってとても単純で、「最初からゴールの絵を描こうとせずに、段階を踏んで設計する」というだけである。  上図のように...

アーキテクチャ 設計

モジュラモノリスについて調べたことをメモ

システムアーキテクチャ

概要 モジュラモノリスについて調べたことをメモする。 モジュラモノリスとは モジュール分割をしたモノリス モジュール分割はドメインによる分割が一般的に見えるが、機能分割や技術分割など様々なパターンを検討することができる モノリスと同じく単一のデプロイメントパイプラインを持つ メリット モジュールが分割されているのでモジュール単位で開発を独立して行うことができる マイクロサービスへの移行が容易...

モジュラモノリス

CQRSについて調べたことをメモ

システムアーキテクチャ

概要 CQRSについて調べたことをメモ。 CQRSとは Command Query Responsibility Segregation CommandとQueryに責務分離するパターン Command データの更新を行う データではなくタスクにフォーカスしたコマンドを設計 DDDのドメインモデルを内包することが想定されている Query データの参照を行う ユースケースごとに最適化されたオ...

CQRS マイクロサービス

Sagaパターンについて調べたことをメモ

システムアーキテクチャ

概要 Sagaパターンについて調べたことをメモ。 Sagaパターンとは マイクロサービスにおいては、分散トランザクション(2phase commitなど)は推奨されていない 分散トランザクションを避け、整合性を担保するパターンとしてSagaパターンがある 長時間のロックを避け、結果整合性を利用する 補償トランザクション 一連のトランザクションの取り消しを行う操作 Sagaパターンでは単純なロ...

マイクロサービス Sagaパターン TCCパターン 分散トランザクション 2phase commit

BFFについて

システムアーキテクチャ

概要 BFFについて調べたことをまとめる。 BFFとは Backends For Frontendsの略。Best Friends Forever(ズッ友だよ)ではない。 ‌ 名前の通り、フロントエンドのためのバックエンドサーバーのことで、フロントエンドのためのAPIやHTMLをレスポンスするなどUI・UXのための役割を担っている。 ‌ クライアント(サーバーの呼び出し側)の多様性に応えるのが難し...

BFF

通知基盤構築についてのメモ書き

システムアーキテクチャ

概要 通知基盤の構築に関してざっくりと考えたことや調べたことなどをまとめておく。 通知基盤とは ユーザーに通知(メール・プッシュ・SMS・音声など)を行うためのシステム基盤。 クライアント(通知を依頼するシステム)からリクエストを受けて、送信先・送信内容など通知に関する処理を担うシステム。 通知基盤の設計・実装における観点 考えることが一杯ありそうだと思ったので、思いついた順で雑に書いた。整理でき...

通知

Design Itを読んだ

システムアーキテクチャ

1~2年くらいに前に読んだDesign Itを読み直していたら、ソフトウェアアーキテクトとして果たすべき役割や責任について学び得ることがあったので、メモを残す。 お気持ちも交えつつ書くのでこれはポエム。 ソフトウェアアーキテクトは何をする人なのか? ソフトウェアアーキテクトはコードも書くし、プロジェクトのリードもするし、ビジネス的な視点でも思考を巡らせたりもする。 ビジネス・技術・ユーザーの3つの...

アーキテクト

システム設計関連の資料を読み漁った

システムアーキテクチャ

システム設計関連の資料をいくつか読み漁ったので、リンク集的にまとめておく。 動画系は見れていないものが多い。 あとあんまり関係なさそうなやや離れたトピックに関してのコンテンツも含んでいたりする。 モチベーション なぜ色々と調べてみたかというと、システム設計について体系的に学ぶことができないか知りたかった、学んでみたかったからである。 もっというと、システム設計についての能力を高める糸口が欲しかった...

システム設計 リンク集