マイクロサービスパターン[実践的システムデザインのためのコード解説]|978STORE

978STORE

【978STORE キュー・ナナ・ハチ ストア】は市販書籍の電子版・電子オリジナル書籍・オンデマンド書籍が買えるお店です

2950085811000000000W.jpg

購入形態

PDF
5,280円
数量:

カートに追加されました。カートを見る

カートに入れる
紙の本を買う

マイクロサービスパターン[実践的システムデザインのためのコード解説]

インプレス

マイクロサービスプロジェクト成功のための実践指南書

マイクロサービスは、現在最も注目されるソフトウェアのアーキテクチャスタイルです。巨大なモノリシック(一枚岩)システムを、独立した複数のサービスへと分割することによって、それらのサービスはRESTやメッセージングを介して協業できるようになります。機能別に分割されたサービスはそれぞれ個別に開発/デプロイ/管理され、疎結合となっており、保守性や運用性が飛躍的に向上します。
マイクロサービスは巨大なエンタープライズシステムのモダナイゼーションに役立つアーキテクチャスタイルですが、その実践は簡単なことではありません。本書は、システムのマイクロサービス化の成功に向けた極めて実践的な解説書です。豊富なサンプルコードを示しながら、ストーリー仕立てで具体的な解説を試みます。システムやプロセス間通信の設計や、ビジネスロジックの開発、データの永続化などを解説し、さらにテストやデプロイ、開発プロジェクトのマイクロサービスへの移行などについても考察しています。
マイクロサービスについて詳しく知り、その実現のための具体的な方法を知りたい、開発の失敗を避けるための生きた知識を得たいという方のために、本書はさまざまな知見を提供します。

発売日:2020-03-23

ページ数:569ページ

目次

表紙
サンプル/正誤表/商標など
本書について
本書はどのような人々のために書かれているか
ロードマップ
コードについて
ブックフォーラム
その他のオンラインリソース
著者について
監修者について
訳者について
Chapter 1 モノリシック地獄からの脱出
1.1 ゆっくりとした足取りによるモノリシック地獄への転落
1.2 本書がみなさんにとって意味を持つ理由
1.3 本書で学べること
1.4 マイクロサービスアーキテクチャで状況打開
1.5 マイクロサービスアーキテクチャの利点と欠点
1.6 マイクロサービスアーキテクチャのパターン言語
1.7 マイクロサービスを越えて: プロセスと組織
1.8 まとめ
Chapter 2 サービスへの分割
2.1 マイクロサービスアーキテクチャとは正確なところ何なのか
2.2 マイクロサービスアーキテクチャの定義の方法
2.3 まとめ
Chapter 3 マイクロサービスアーキテクチャで使われるプロセス間通信
3.1 マイクロサービスアーキテクチャにおけるプロセス間通信の概要
3.2 同期的なリモートプロシージャ呼び出しパターンを使った通信
3.3 非同期的メッセージングパターンを使った通信
3.4 可用性向上のための非同期メッセージング
3.5 まとめ
Chapter 4 サーガによるトランザクションの管理
4.1 マルチサービスアーキテクチャにおけるトランザクション管理
4.2 サーガのコーディネート
4.3 分離性の欠如への対処方法
4.4 オーダーサービスとCreate Order Sagaの設計
4.5 まとめ
Chapter 5 マイクロサービスアーキテクチャにおけるビジネスロジックの設計
5.1 ビジネスロジック構成パターン
5.2 DDDのAggregateパターンを使ったドメインモデルの設計
5.3 ドメインイベントのパブリッシュ
5.4 キッチンサービスのビジネスロジック
5.5 オーダーサービスのビジネスロジック
5.6 まとめ
Chapter 6 イベントソーシングを使ったビジネスロジックの開発
6.1 イベントソーシングを使ったビジネスロジックの開発
6.2 イベントストアの実装方法
6.3 サーガとイベントソーシングの併用
6.4 まとめ
Chapter 7 マイクロサービスアーキテクチャでのクエリーの実装
7.1 〈API composition〉パターンを使ったクエリー
7.2 〈CQRS〉パターンを使ったクエリー
7.3 CQRSビューの設計
7.4 AWS DynamoDBによるCQRSビューの実装
7.5 まとめ
Chapter 8 外部APIパターン
8.1 外部APIを設計するときの問題点
8.2 〈APIゲートウェイ〉パターン
8.3 APIゲートウェイの実装
8.4 まとめ
Chapter 9 マイクロサービスのテスト(前編)
9.1 マイクロサービスアーキテクチャのテスト戦略
9.2 サービスのユニットテストの開発
9.3 まとめ
Chapter 10 マイクロサービスのテスト(後編)
10.1 統合テストの開発
10.2 コンポーネントテストの開発
10.3 エンドツーエンドテストの開発
10.4 まとめ
Chapter 11 本番環境に耐えられるサービスの開発
11.1 セキュアなサービスの開発
11.2 設定可能なサービスの設計
11.3 可観測性を備えたサービスの設計
11.4 〈Microservice chassis〉パターンを使ったサービスの開発
11.5 まとめ
Chapter 12 マイクロサービスのデプロイ
12.1 〈Language-specific packaging format〉パターンによるサービスのデプロイ
12.2 〈Service as a VM〉パターンによるサービスのデプロイ
12.3 〈Service as a container〉パターンによるサービスのデプロイ
12.4 KubernetesによるFTGOアプリケーションのデプロイ
12.5 〈Serverless deployment〉パターンを使ったサービスのデプロイ
12.6 AWS LambdaとAWS API Gatewayを使ったRestfulサービスのデプロイ
12.7 まとめ
Chapter 13 マイクロサービスのリファクタリング
13.1 マイクロサービスへのリファクタリングの概要
13.2 モノリスをマイクロサービスに移行させるための方法
13.3 サービスとモノリスの連携方法の設計
13.4 新機能をサービスとして実装する:配達ミスの処理
13.5 モノリスの分解:配達管理の抽出
13.6 まとめ
索引
奥付

著者プロフィール

  • Chris Richardson(著者)

    ●著者プロフィール
    ◎Chris Richardson(クリス・リチャードソン)
    経験豊富なシステムアーキテクト。CloudFoundry.comのファウンダーであり、世界中の顧客のためにマイクロサービスアーキテクチャの適用についての活動を行っている。

絶賛!発売中!

書籍一覧へ