Quantcast
Channel: プログラミング
Viewing all articles
Browse latest Browse all 8395

サーバーレスで始めるWEBサービス開発:GCPのサービス選定まで - 中小企業のITサポート

$
0
0

はじめに

突然ですが、サーバーレスでWEBサービスの開発をしてみたいと思い立ち、まずはどんなサービスを使えばよいか調べてみました。いわゆるアーキテクチャを考える段階ですね。クラウドサービスはGCPGoogle Cloud Platform)を使用しますが、GCPには似たようなサービスがたくさんあり、それぞれの違いや特徴を把握するのはなかなか大変です。
今回は、どんなアーキテクチャで開発していくのか、GCPで使用する予定のサービスについてご紹介します。また、開発を進めていく過程を備忘録として残していく予定なので、定期的に公開できるように頑張ります。

1. 使用するサービス紹介

1.1 Application Load Balancer

Application Load Balancer (ALB) は、GCP上で提供される高機能なロードバランシングサービスです。ALBは、トラフィックを複数のサーバーやサービスに分散し、スムーズなサービス提供を実現します。特にサーバーレス環境においては、Cloud RunやCloud Functionsなどのサービスに対するトラフィックの分散を効果的に行うことで、安定したパフォーマンスと可用性を維持できます。
セキュリティに懸念がありましたが、別サービスのCloud Armorを使えば、DDoS対策、アクセス制御、SQLインジェクションクロスサイトスクリプティングXSS)対策、WAF(Webアプリケーションファイアウォール)の機能を提供しているので対応できそうです。

1.2 Cloud Storage

Cloud Storageは、ストレージサービスで、大規模なデータの保存や管理に最適です。特にWebサービスのフロントエンド開発において、静的ファイル(HTML、CSSJavaScript、画像など)をホスティングするために使われることもあります。サーバーレスアーキテクチャを採用するので、フロントエンドの部分(Vue.js)を配置する予定です。

1.3 Cloud Run

Cloud Runは、コンテナベースのアプリケーションをサーバーレスで実行できるサービスです。コンテナ化されたアプリケーションを任意の言語で作成し、GCP上で自動スケーリングを活用して効率的に動作させることができます。今回はバックエンドのAPIサーバーとして使用します。言語はPHPで作成する予定です。

1.4 Cloud SQL

Cloud SQLは、フルマネージド型のリレーショナルデータベースサービスです。Cloud SQLでは、MySQLPostgreSQLSQL Serverの3つのデータベースエンジンがサポートされています。今回は使い慣れたPostgreSQLを使用する予定です。

2. 今後の予定

まずは、紹介したサービスを使用して開発環境を作ります。そこで、簡単なデモを動かしてみて、各サービスの特徴や使い心地を覚えます(試してみて変更する可能性は大いにあります)

まとめ

今回は、GCPでのサーバーレス環境で使用する予定のサービスについて紹介しました。これからサーバーレスの知識を深めつつ、実際のサービス開発に取り組んでいきます💪

サーバーレスについては別の記事でも紹介しています
reisaikigyo.hatenablog.com


Viewing all articles
Browse latest Browse all 8395

Trending Articles