サーバーレスについて知りたい人のために、おすすめの本を紹介します。
サーバーレスとは、アプリケーション開発においてサーバーの管理をユーザーが行わず、クラウドプロバイダーが実行環境を自動で提供するアーキテクチャスタイルです。開発者はコードの記述に集中でき、インフラのスケーリングやメンテナンスはプラットフォームが自動で対応。コスト効率も良く、使用した分だけ課金されるため、小規模から大規模なアプリケーションに理想的です。
まずはじめに、サーバーレスがわかる本のおすすめ5選を紹介します。
もっと探したい人のために、注目の新刊、ロングセラー本など(目次を参照)を紹介します。
あなたは、次のどれに当てはまりますか?
- ソフトウェア開発者: サーバーレス技術を使用してアプリケーションの開発効率を高めたい。
- ITアーキテクト: スケーラブルでコスト効率の高いサーバーレスソリューションを設計したい。
- クラウドエンジニア: クラウドベースのサービスでサーバーレスアーキテクチャを利用したい。
- DevOpsプロフェッショナル: サーバーレス環境での自動化とCI/CDプロセスを実装したい。
- プロジェクトマネージャー: サーバーレスプロジェクトの計画、実行、監視を担当したい。
- IT学生: 最新のクラウドコンピューティングトレンドとしてサーバーレス技術を学びたい。
- システム管理者:従来のサーバーベースのアーキテクチャからサーバーレスへの移行を理解したい。
- スタートアップ創業者: 迅速なプロトタイピングとスケールアップのためにサーバーレスを活用したい。
- データサイエンティスト: サーバーレスアーキテクチャを利用してデータ処理と分析の効率を向上させたい。
- テクノロジー愛好家: 最新のIT技術としてサーバーレスの概念と利点を理解したい。
あなたの興味関心にあった本をみつけて、ぜひ読んでみてください!
最大50%還元、11月21日(木)まで
Kindle(電子書籍)ポイントキャンペーン
いますぐチェックする
おすすめ5選)サーバーレスの本
サーバーレスがわかる本のおすすめ5選を紹介します。
AWSで実現するモダンアプリケーション入門 サーバーレス、コンテナ、マイクロサービスで何ができるのか
書籍情報
アプリケーションの設計・構築・管理を継続的に見直し、変化に迅速な対応をする開発戦略として、注目されている「モダンアプリケーション」。
amazon.co.jp書籍情報より引用
高い俊敏性・柔軟性のある開発を実現し、ビジネスを成長させることができます。
しかし、モダンアプリケーション構築に役立つプラクティスは抽象度が高いことから、現場に適用しにくいのではないでしょうか。
そこで本書では、架空の開発現場を題材に、実際のプラクティスを解説。
サーバーレスやコンテナによる運用改善・CI/CDパイプライン構築による自動化・アーキテクチャ最適化などを実践する方法を、イメージしながら読み進められるようまとめました。
要件にあった技術選択をする重要性も紹介し、アプリケーションや組織の規模にあった考え方ができるようなアクティビティ(問いかけ)も提供しています。
各企業の技術戦略などによって最適解は変わりますが、アプリケーションの課題を改善して生産性を高めたい方にとって参考になる情報が多いでしょう。
「なんとなく流行っているから……」「過去に使ったことがあるから……」という理由で技術選定されている現場に違和感を感じる方にもお勧めの1冊です。
(こんな方におすすめ)
・機能改善・追加のスピードを上げたい方
・運用負荷を軽減して、コストも抑えたい方
・自動化で効率・品質を向上させたい方
・要件にあったテクノロジー・ツールを選択したい方
評判・口コミ
基礎から学ぶ サーバーレス開発
書籍情報
本書はサーバーレス開発の基本から実践、導入するにあたっての注意事項などを丁寧に解説しています。
現場のノウハウが満載の1冊です。【「はじめに」より抜粋】
サーバーレスが話題になり、「サーバーを意識する必要がない」、「利用した分だけ支払う住従量課金」といったメリットが注目されています。確かにサーバー利用時の煩わしさから開放されますが同時にサーバーレスにすることで生じる誤解や課題もあります。
一例としてサーバーレスだから停止することなく動き、自動でバックアップを取得してくれるのでバックアップに関係する設計をする必要がないといった誤解を耳にしたことがあります。
マネージドサービスであるAmazon Relational Database Serviceを利用してデータベースを運用する場合、スナップショットを自動で定期的に取得することができます。
また、RDSは冗長化構成を組むことができるので高可用性なデータベースを容易に運用することができます。
これらのマネージドサービスは可用性や堅牢性をベンダーが保証してくれるので、一度運用を始めたらずっと動き続けている印象を持っている方もいらっしゃいますが、実際はホストマシンのメンテナンス対応などの運用がついてきます。
これらの作業はサーバーを利用して自分たちでデーターベースを運用している状態でホストマシンをメンテナンスすることに比べたら軽微な作業ですが、決して何もしなくてもよいというわけではありません。このようにサーバーレスを活用するためには利用する各マネージドサービスの仕様を把握して適切に利用する必要があります。
便利になった反面、制限をきちんと把握しなければシステムを運用してから思わぬ落とし穴にハマってしまう可能性があります。本書はサーバーレスを用いて多くのシステム開発を行ったエンジニア達がその経験から得たノウハウをまとめたものになります。
amazon.co.jp書籍情報より引用
本書に目を通していただき、メリットとデメリットを理解してプロジェクトを成功に導いていただければ嬉しく思います。
評判・口コミ
AWSによるサーバーレスアーキテクチャ
書籍情報
クラウドコンピューティングの技術の中でも、昨今注目を集めているのがサーバーレスアーキテクチャです。
FaaS(Function-As-A-Service)とも呼ばれるサーバーレスアーキテクチャは、ファンクション(関数)と呼ばれるマイクロサービスを実装し、組み合わせながら、サービスを構築していくアーキテクチャです。
その際、実行環境となるサーバーのスケーリングや管理をクラウドプロバイダに任せることで、開発者はオンプレミスなサーバーを考えることなしに、開発時間の短縮と運用コストの削減を図ることができます。
本書は、現場で役に立つ開発パターンをハンズオン形式で学べる『Serverless Architectures on AWS: With examples using AWS Lambda』の日本語版です。
本書では、サーバーレスアーキテクチャに興味のある開発者がAmazon Web Services(AWS)上で新技術を実践・体験するための例として、
・マイクロサービスのコードを実行する「AWS Lambda」
・「Amazon S3」などのクラウドストレージ
・「Amazon DynamoDB」などのデータベース
・「Auth0」などの認証サービス
といったサービスを組み合わせながら、実際に動かすことのできる動画シェアサイトを構築していきます。世界的な技術カンファレンス「Serverlessconf」の責任者である著者による、サーバーレスアーキテクチャの主要なデザインパターンを学べる1冊です。
amazon.co.jp書籍情報より引用
評判・口コミ
動かして学ぶ! Pythonサーバレスアプリ開発入門
書籍情報
PythonとAWSでサーバレスアプリケーションを開発しよう!
【サーバレスアプリケーションとは】
ユーザ自身でサーバを立てて運用するのではなく、AWS に代表されるクラウドサービスを組み合わせて、必要なときにだけクラウドサービスを呼び出し、サービスを提供するアプリケーションのことです。以下のような様々なメリットがあります。
amazon.co.jp書籍情報より引用
・常時可動させなければならないサーバに比べて費用がかからない
・サーバがダウンすることがないので可用性について気にする必要がない
・現状のPythonアプリケーションをそのまま利用できる
【本書の概要】
本書は、Pythonによるサーバレスアプリケーションの作成を通じて、サーバレスアプリケーション開発に必要な知識を解説した書籍です。
サーバレスアプリケーション開発の基本から様々な日次処理まで丁寧に解説しています。
【対象読者】
・Webアプリケーション開発者
・クラウド系エンジニア
【本書で利用するフレームワーク・クラウドサービス】
・Flask
・Amazon Web Services(AWS)
評判・口コミ、書店ポスト
ほぼPythonだけでサーバーレスアプリをつくろう
書籍情報
本書は「ほぼ」PythonだけでAWSを利用したサーバーレスアプリケーションを構築するためのガイドブックです。
バックエンドにChalice、フロントエンドにTranscrypt、ユニットテストとAPIテストにpytest、UIテストにSeleneを利用します。
amazon.co.jp書籍情報より引用
実装部分をアプリエンジニアが、テスト部分をQAエンジニアが、それぞれの専門を活かして解説します。
注目の新刊)サーバーレスの本
サーバーレスがわかる本の注目の新刊を、紹介します。
今月は該当する新刊が見つかりませんでした。
ロングセラー)サーバーレスの本
サーバーレスがわかる本のロングセラーを、6冊、紹介します。
Amazon Web Services サーバーレスレシピ
書籍情報
【AWSでサーバーレスサービスを設計・構築してみる! 】
本書は、Amazon Web Service(AWS)をつかってサーバーレスな各種サービスを構築するための設計事例集です。
各章ではECサイト、IoT、動画サービスなど様々なサービスを設計するためのノウハウを掲載しています。〈本書の対象読者〉
amazon.co.jp書籍情報より引用
AWSでサーバーレスな構成がしたい人
AWSでのサーバーレス設計のノウハウを広く知りたい人
AWS Lambda実践ガイド 第2版
書籍情報
本書では、従来のシステムをLambdaで構築するときの設計手法や具体的な事例の作成を通じてLambdaでのプログラミング手法を解説します。第2版では、2022年の最新情報にアップデートし、SAM開発環境に対応しました。
AWS Lambdaは、サーバーを必要としないプログラムの実行環境です。
開発者が処理したい内容を小さな関数として実装すると、必要に応じて、それが実行される仕組みです。サーバーを必要としないということは、運用の手間やコストを削減できるということです。
この利点はとても大きいため、新規の開発案件では、Lambdaが採用されるケースが増えています。
しかし、Lambdaによる開発に大きなメリットがあるといっても、すぐに移行できるほど話は簡単ではありません。
従来のEC2インスタンスを使った開発とLambdaを使った開発とでは、プログラミングの方法はもちろん、設計の考え方も大きく異なるからです。
Lambdaを使い始めるには、Lambdaの仕組みの理解と、その特性を活かした設計の考え方を習得することが不可欠です。本書では、従来のシステムをLambdaで構築するときの設計手法や具体的な事例の作成を通じてLambdaでのプログラミング手法を解説します。
amazon.co.jp書籍情報より引用
とくにLambdaを使った開発では、AWSサービスの操作に重きを置きます。
Lambdaを活かせるかどうかは、AWSの各種サービス――ストレージのS3、プッシュサービスのSNS、メール送信のSESなど――を、いかに使いこなせるかに左右されます。
そこで本書では、実例を通じて、そうしたAWSサービスの実際の使い方にも言及されています。
評判・口コミ
PHPでもサーバーレス!AWS Lambda Custom Runtime入門
書籍情報
AWS Lambdaの新しい機能として、好きな言語でサーバーレス関数を実行できるカスタムランタイム(Lambda Custom Runtime)が追加されました。
本書は、このカスタムランタイムをPHPで使うための解説書です。基本的な実行方法から独自のランタイムを作成し利用する方法まで紹介し、さらにいくつかのPHPフレームワークを実際にLambda上で動かすまでの流れも解説しています。
PHP以外の言語でカスタムランタイムを実行する際にも役に立つ一冊です。
amazon.co.jp書籍情報より引用
サーバーレス開発プラットフォーム Firebase入門
書籍情報
AndroidやiOSのモバイルアプリ用サーバーレス開発基盤として注目されているFirebase(ファイアーベース)の、初めての日本語解説書です。
今後、普及が進むと見られるFirebaseを、クラウドサービスとして一般的なWeb経由での利用のほか、AndroidとiOSから利用する場面に分けて解説。どんなアプリ開発にも対応しています。
ユーザー事例研究として、日本最大級の不動産・住宅情報サイト「LIFULL HOME'S」によるFrebaseの使い方を掲載!
amazon.co.jp書籍情報より引用
Firebaseによるサーバーレスシングルページアプリケーション
書籍情報
【動画投稿サイトの制作を題材に学ぶFirebase! 】
本書は、動画投稿サイトの制作を題材としたReact によるフロントエンド開発とFirebaseの主要な機能である Authentication、 Firestore、Cloud Storage、Cloud Functionsの各機能を理解しつつ、Firebaseによるシングルページアプリケーションの開発について学ぶことができる入門書です。
〈本書の対象読者〉
amazon.co.jp書籍情報より引用
・Firebaseは名前は聞いたことがあるが、実際に触ったことはない人
・JavaScriptだけで、Webアプリケーションを開発してみたい人
・Firebase と 何かしらのモダンなJSフレームワークを組み合わせてアプリケーションを開発してみたい人
・サーバーサイドだけでなく、フロントエンドの開発にも興味がある人
Azure Functions入門 サーバー管理を不要にするサーバーレスアプリ開発のすべて
書籍情報
クライアントアプリケーションの頻繁な変化に合わせて、サーバーサイドにHTTPサーバーを構築するのはなかなか困難です。
ある日は数十件だったものが、ある日は数万件も発生するようなピークに変動のあるアクセスに対して、物理サーバーを用意するのはコスト的に問題があります。AWS Lambda、Google Cloud Functions、そしてMicrosoft社のAzure Funcitonsは、これらの変動に素早く対応するために、サーバーレスな実行環境を用意しました。
HTTPサーバーや特殊なサーバーを構築する必要はなく、あたかもプログラムで関数を呼び出すかのようにプログラミングができる実行環境です。これが関数=Functionの名前の由来でもあります。本書で扱うAzure Functionsは、数多くのトリガー(関数を呼び出すイベント)とバックエンドで扱えるサービス(データベースやファイルストレージなど)を持っています。
また、.NET Coreでプログラミングできることから、Azureの各種のサービスを既存のクラスライブラリを通して利用できます。
クライアントサイドのアプリケーションが、直接Azure内のサービスにアクセスするのではなく、Azure Functionsを通すことでサーバーサイドのさまざまなサービスを後日拡張できます。非常に範囲の広いAzure Functionsの機能を解説するために、本書は2部構成にしてあります。1章から5章は、基礎編として個別のトリガーについて詳しく解説しています。
amazon.co.jp書籍情報より引用
Azure PortalとVisual Studioを使った例を使い、実際にトリガーの動きをみていきます。6章以降は応用編として各種トリガーの組み合わせやAzureが提供するストレージサービスとの組み合わせを具体例を示して作成していきます。
評判・口コミ、出版社ポスト
サーバーレスによくある質問と回答
サーバーレスについて、初心者からよくある質問と回答を5つ紹介します。
サーバーレスとは何ですか?
回答: サーバーレスは、物理サーバーや仮想サーバーの管理を気にせずにアプリケーションやサービスを実行できるクラウドコンピューティングのモデルです。
サーバーの運用やメンテナンスはクラウドプロバイダーが担当し、開発者はコードの実行に集中できます。
サーバーレスと従来のサーバーベースのアプローチの違いは何ですか?
回答: 従来のサーバーベースのアプローチでは、アプリケーションを実行するためにサーバーの設定、管理、スケーリングを自分たちで行う必要があります。
一方、サーバーレスではこれらの管理負担がクラウドプロバイダーに委ねられ、開発者はアプリケーションのコードに集中できます。
サーバーレスの主な利点は何ですか?
回答: サーバーレスの主な利点には、インフラストラクチャの管理からの解放、コストの削減、スケーラビリティ、柔軟性の向上があります。
サーバーレス環境では、使用したリソースに対してのみ課金されるため、無駄なコストが削減できます。
サーバーレスの欠点や課題は何ですか?
回答: サーバーレスの課題には、コールドスタート(初回実行の遅延)、デバッグとトラブルシューティングの複雑さ、ベンダーロックイン(特定のクラウドプロバイダーへの依存)があります。
また、高度なカスタマイズが必要な場合には適さないこともあります。
サーバーレスで一般的に使用されるサービスやプラットフォームは何ですか?
回答: サーバーレスで一般的に使用されるプラットフォームには、AWS Lambda、Azure Functions、Google Cloud Functionsなどがあります。
これらのサービスを使用することで、コードのスニペットをトリガーに基づいて実行でき、インフラストラクチャの管理から解放されます。
サーバーレスのスキルが活かせる職種とは?
サーバーレスコンピューティングは、クラウドサービスを活用してアプリケーションの開発、運用を行うアーキテクチャスタイルです。
サーバーの管理やスケーリングをクラウドプロバイダーが自動で行い、開発者はコードの実行に集中できます。
サーバーレスに関する知識や経験を習得することで、以下のような仕事を担当することができます:
- クラウドソリューションアーキテクト:
- サーバーレスアーキテクチャを含むクラウドベースのソリューションを設計します。アプリケーションの要件に応じて最適なサービス(AWS Lambda、Azure Functionsなど)を選択し、コスト効率とパフォーマンスのバランスを取ります。
- バックエンド開発者:
- サーバーレスプラットフォーム上で動作するバックエンドサービスを開発します。APIの開発、データ処理、認証などのバックエンドロジックを実装し、フロントエンドとの連携を行います。
- DevOpsエンジニア:
- サーバーレスアプリケーションのデプロイメント、監視、ログ管理などの運用を自動化します。CI/CDパイプラインの構築にも関わり、開発から運用までのプロセスをスムーズにします。
- フルスタック開発者:
- サーバーレスアーキテクチャを活用して、フロントエンドからバックエンドまで、アプリケーション全体の開発を行います。スケーラビリティと運用の効率性を重視した開発を担当します。
- システムアナリスト:
- ビジネス要件を技術的な仕様に変換し、サーバーレス技術を利用したソリューションを提案します。コスト削減や運用の簡素化が期待できる場合に、サーバーレスアプローチを推奨します。
- セキュリティスペシャリスト:
- サーバーレス環境におけるセキュリティのベストプラクティスを適用し、アプリケーションとデータの保護を担当します。アクセス制御、脆弱性の管理、データ暗号化などのセキュリティ対策を実装します。
- データエンジニア:
- サーバーレスアーキテクチャを利用して、データパイプラインやデータ処理タスクを構築します。大量のデータを効率的に処理し、分析やビジネスインサイトの抽出を支援します。
サーバーレス技術は、特にスタートアップやアジャイル開発を行うチームにおいて、迅速なプロトタイピングやコスト効率の高いソリューションを提供します。
クラウドコンピューティングの知識を深め、サーバーレスアーキテクチャの導入と運用に携わることで、多様な業界でのキャリア機会を探求できます。
まとめ
サーバーレスについて知りたい人のために、おすすめの本を紹介しました。
まずはじめに、サーバーレスがわかる本のおすすめ5選を紹介しました。
もっと探したい人のために、注目の新刊、ロングセラー本など(目次を参照)を紹介しました。
あなたの興味関心にあった本をみつけて、ぜひ読んでみてください!
本ブログサイトでは以下の記事も紹介しています。