ホームページ >ウェブフロントエンド >jsチュートリアル >SST - 合法である可能性のあるインフラストラクチャの部分
クラウド プロバイダーの重要性はますます高まっており、基本的な知識があるだけでも大きな利点となります。この記事では、コードを CloudFormation テンプレートに変換する、AWS CDK の合理的な抽象化を提供するツールである SST について説明します。
CloudFormation の詳細は焦点ではありませんが、その目的を理解することが重要です。AWS CloudFormation は AWS リソースのプロビジョニングと構成を自動化し、時間と労力を節約します。テンプレートで必要なリソース (EC2 インスタンス、RDS データベースなど) を定義すると、依存関係の管理を含む残りの部分は CloudFormation が処理します。ただし、CloudFormation テンプレートの作成は直観に反する場合があり、SST のような高レベルの抽象化の価値が強調されます。
Next.js を使用して、SST の機能と CDK/CloudFormation との相互作用を実証してみましょう。
Next.js アプリを作成します:
<code class="language-bash">npx create-next-app@latest aws-nextjs cd aws-nextjs</code>
SST を初期化します:
<code class="language-bash">npx sst@latest init</code>
SST は構成ファイルを生成します。 私たちの例では:
<code class="language-javascript">const bucket = new sst.aws.Bucket("MyBucket", { access: "public" });</code>
これにより、CloudFormation テンプレートのコンパイル後に、「MyBucket」という名前のパブリックにアクセス可能な S3 バケットが作成されます。
バケットを使用するように Next.js を構成します:
<code class="language-javascript">new sst.aws.Nextjs("MyWeb", { link: [bucket] })</code>
これにより、バケットが Next.js デプロイメントに簡潔に統合され、基盤となるインフラストラクチャの詳細が管理されます。 ソース コードでは、自動的に処理されるインフラストラクチャ コンポーネントがさらに明らかになります:
AWS Lambda 関数は有効期間が短く、イベント駆動型の関数です。 CDK はさまざまなデプロイメント方法を提供しますが、SST はこれをさらに簡素化します。
https://www.php.cn/link/07d34e2419c61216a85a2156b2cf8ae4
SST は、esbuild を使用して Node.js 構成、バージョン管理、バンドル オプションの抽象化を提供します。
https://www.php.cn/link/07d34e2419c61216a85a2156b2cf8ae4#L717-L720
これにより、最終的に次のような展開が簡素化されます。
<code class="language-javascript">return new lambda.Function( transformed[0], { ...transformed[1], ...(dev ? { description: transformed[1].description ? output(transformed[1].description).apply( (v) => `${v.substring(0, 240)} (live)`, ) : "live", runtime: "provided.al2023", architectures: ["x86_64"], } : {}), }, transformed[2], );</code>
SST の抽象化によりプロセスが大幅に合理化され、インフラストラクチャ管理がより効率的になります。
以上がSST - 合法である可能性のあるインフラストラクチャの部分の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。