「マイクロソフト系技術情報 Wiki」は、「Open棟梁Project」,「OSSコンソーシアム .NET開発基盤部会」によって運営されています。
目次 †
概要 †
まだ、ごく一部しか書けていない(オンデマンドで追記予定)。
詳細 †
可用性 †
アプリケーションの可用性が最大限になるように設計・実装。
正常性エンドポイント監視 †
公開されたエンドポイントを通じて外部ツールが定期的に
アクセスできる機能チェックをアプリケーションに実装。
- HTTP/HTTPS ヘルスチェック的な手法で確認する。
- 考慮点
- 認証
- 負荷
- 専用エンドポイントの新設
- , etc.
- インストルメンテーション
- アプリケーション実行時の挙動の監視
- ある種のインシデント改善を自動化
- メトリック アラート通知の受信
メトリック アラートを作成、表示(受信)、管理
キュー ベースの負荷平準化 †
タスクとそのタスクが呼び出すサービスとの間で
バッファーとして機能するキューを使用して、
断続的な大きい負荷を平準化する。
- 非同期処理サービスでやってるようなことをやれという話。
(「"非同期処理サービス"を使え。」とは言っていない)
- 競合コンシューマー パターン
- 受ける側で"調整"するパターン
- 前述の「非同期処理サービス」と同じ方式。
調整(絞り弁) †
- アプリケーションの
- インスタンス
- 個々のテナント
- またはサービス全体によって使用されるリソース
の使用量を制御する。
- サービス・メータリング
使用しているリソースの計測
- 優先順位キュー パターン
優先順位の高い要求から順番に受信および処理されるようにする。
データ管理 †
データの整合性を維持するため、
様々な場所にあるデータを同期する。
設計と実装 †
- コンポーネントの設計
- デプロイの一貫性や統一性
- 管理および開発を容易にする保全性
- 再使用可能性
メッセージング †
- スケーラビリティを最大化する(非同期)メッセージング インフラストラクチャ
- 課題も多数ある。
管理と監視 †
アプリケーションの停止や再デプロイを行わずに、
変化するビジネス要件やカスタマイズに対応する。
パフォーマンスと拡張性 †
- 以下の要件に対応
- 要求のピークに対応するスケールアウト
- 要求が減少に対応するスケールイン
回復性 †
迅速かつ効率的に障害を検出して復旧する。
セキュリティ †
- 悪意のある攻撃からの保護
- 機密データの保護
- ユーザ認証と認可(アクセス制御)
参考 †
Microsoft Docs †
Tags: :アーキテクチャ, :.NET開発