我创建了一个 ECS 服务来部署 spring-boot 应用程序。我已在 aws ecs 控制台中为此服务创建容器时通过指定负载均衡器名称将目标组添加到网络负载均衡器。
现在,当我检查该目标组的健康状态时,它会不断使用不同的 IP 地址进行注册和注销。我也检查了安全组,它允许所有端口和IP。
任何人都可以在这里提供帮助,这可能是目标群体未达到“健康”状态的问题。
请查看随附的 ECS 服务、健康检查状态和使用的安全组的屏幕截图。
我们正在使用触发 lambda 的 cdk 在堆栈中创建 aws 自定义资源。在我们的例子中,如果 lambda 中发生任何故障,它会向自定义资源发送故障信号,并且自定义资源会触发自动回滚到堆栈的先前版本。我们想要阻止这种情况发生。我们的要求是,如果 lambda 失败,自定义资源堆栈仅显示失败状态并且不会触发任何回滚部署。
有没有办法使用 cdk 在堆栈上设置禁用回滚属性
amazon-web-services aws-cdk aws-cloudformation-custom-resource aws-cdk-custom-resource
我创建了一个表 TEST,它有 4 列:
column1:范围键
column2:排序键
第 3 列:GSI
第4列:普通属性
现在我想根据 GSI 值更新 column4 的值。我尝试使用以下代码,但仅当我同时传递范围和排序键时才有效。在我更新时的用例中,我只有 GSI 的值而不是范围/排序键。
Map<String, AttributeValue> key = new HashMap<>();
key.put(“column1”, new AttributeValue().withS(column1Value));
key.put(“column2”, new AttributeValue().withS(column2Value));
Map<String, AttributeValue> attributeValues = new HashMap<>();
attributeValues.put(“column4”, new AttributeValue().withS(column4Value));
attributeValues.put(“column3”, new AttributeValue().withS(column3Value));
UpdateItemRequest updateItemRequest = new UpdateItemRequest()
.withTableName(emailsTableName)
.withKey(key)
.withUpdateExpression(“set column4 = :column4”)
.withConditionExpression(“column3 = :column3”)
.withExpressionAttributeValues(attributeValues);
UpdateItemResult updateItemResult = dynamoDBClient.updateItem(updateItemRequest);
Run Code Online (Sandbox Code Playgroud)
这是否可以仅基于 GSI 更新 Dynamo DB 的列?
java amazon-web-services amazon-dynamodb amazon-dynamodb-index
amazon-ecs ×1
amazon-elb ×1
aws-cdk ×1
aws-cloudformation-custom-resource ×1
java ×1
nlb ×1
spring-boot ×1