小编Yun*_*Zou的帖子

AWS CDK 中堆栈和构造之间的区别

我是 CDK 的新手,对构造和堆栈之间的区别感到困惑。使用 CDK,我们可以定义可重用的云组件(称为 Construct),并且可以进一步将它们组合成堆栈或应用程序。请参阅下面来自 AWS 网站的图表,

在此输入图像描述

但是,我见过通过扩展 Construct 基类创建构造的类,以及通过扩展 Stack 基类创建 Stack 的类。稍后可以使用这两个子类来创建主堆栈。例如,请参阅下面的代码,我可以创建一个名为 HitCounter 类的 Construct 或 Stack,该类创建相同的资源集并在主 Stack 中以相同的方式使用它们。那么使用 Stack 或 Construct 有什么区别呢?

import * as cdk from '@aws-cdk/core';

export class HitCounterConstruct extends cdk.Construct {} // imagine this construct creates a bunch of related resources

export class HitCounterStack extends cdk.Stack {} // imagine this stack creates the same resources as the construct class above

// In main stack file App.ts

new HitCounterConstruct(cdk.App, "construct");
new HitCounterStack(cdk.App, "stack");
Run Code Online (Sandbox Code Playgroud)

如果我在代码中犯了任何错误,请纠正我。提前致谢 :)

amazon-web-services aws-cloudformation aws-cdk

22
推荐指数
1
解决办法
1万
查看次数