Ngân hàng đề — AWS Certified Developer Associate

Tìm thấy 1356 câu.

Câu 1321
A developer is building a three-tier application with an Application Load Balancer (ALB), Amazon EC2 instances, and Amazon RDS. There is an alias record in Amazon Route 53 that points to the ALB. When the developer tries to access the ALB from a laptop, the request times out.

Which logs should the developer investigate to verify that the request is reaching the AWS network?
  1. A VPC Flow Logs
  2. B Amazon Route 53 logs
  3. C AWS Systems Manager Agent logs
  4. D Amazon CloudWatch agent logs
Xem giải thích

🧩 Phân tích chi tiết câu hỏi

Câu hỏi mô tả tình huống: Một lập trình viên đang xây dựng ứng dụng ba tầng (three-tier) sử dụng Application Load Balancer (ALB) làm lớp cân bằng tải, Amazon EC2 instances làm lớp ứng dụng, và Amazon RDS làm lớp cơ sở dữ liệu. Có một alias record trong Amazon Route 53 trỏ trực tiếp đến ALB (thay vì IP, giúp dễ quản lý). Khi lập trình viên thử truy cập ALB từ laptop cá nhân, yêu cầu bị timeout (hết thời gian chờ, không nhận phản hồi).

Vấn đề cần xác minh: Cần kiểm tra logs nào để xác nhận rằng yêu cầu (request) đã đến được mạng AWS (AWS network), tức là traffic có thực sự đi vào hạ tầng AWS hay không (ví dụ: có bị chặn ở DNS, internet gateway, hay route table không).

🔍 Mục tiêu chính: Phân biệt các logs để troubleshoot từ lớp mạng ngoài cùng (internet đến AWS VPC), vì timeout có thể do nhiều nguyên nhân như security group, NACL, hoặc vấn đề mạng ngoài VPC.

✅ Đáp án đúng: VPC Flow Logs

Lý do chọn:
VPC Flow Logs là công cụ chính xác nhất để capture và ghi lại toàn bộ traffic vào/ra các network interface (ENI) trong VPC, bao gồm cả traffic từ internet đến ALB (ALB có ENIs trong VPC). Nó giúp verify request có reaching AWS network bằng cách kiểm tra:

  • IP nguồn (laptop của developer).
  • IP đích (ENI của ALB).
  • Action (ACCEPT/REJECT), bytes/packets.
    Nếu không thấy traffic trong logs, nghĩa là request chưa vào AWS network (có thể do IGW, route table sai). Nếu thấy REJECT, thì vào network rồi nhưng bị chặn ở security group/NACL. Đây là bước đầu tiên troubleshoot ALB timeout từ ngoài.

📘 Tài liệu tham khảo:

🛠️ Giải thích tất cả các phương án (đúng/sai)

  • VPC Flow Logs ✅ Đúng
    Như đã giải thích, đây là logs network-level capture traffic tại ENI trong VPC. Lý tưởng để verify request từ internet có vào AWS network (VPC của ALB) không. Có thể enable trên ENI của ALB, subnet, hoặc toàn VPC. Logs lưu ở CloudWatch Logs/S3, query bằng Athena. Không ảnh hưởng performance cao.

  • Amazon Route 53 logs ❌ Sai
    Route 53 logs (Query Logs hoặc Resolver Query Logs) chỉ ghi lại DNS queries (như alias record resolve thành DNS name/IP của ALB), không capture traffic HTTP/HTTPS đến ALB. Nếu DNS resolve đúng nhưng timeout, logs này không giúp verify traffic reaching network.

  • AWS Systems Manager Agent logs ❌ Sai
    SSM Agent logs (trên EC2 instances) dùng cho quản lý instance như Run Command, Session Manager, inventory. Không liên quan đến traffic mạng ngoài VPC hoặc ALB; chỉ logs hoạt động nội bộ EC2, không capture request từ laptop.

  • Amazon CloudWatch agent logs ❌ Sai
    CloudWatch Agent thu thập metrics/logs tùy chỉnh từ EC2/RDS (như app logs, CPU), không phải network traffic từ internet. Nó chạy trên instances, không capture traffic đến ALB ENI hay VPC boundary.

📝 Kết luận & Best Practices

✅ Troubleshoot tiếp theo sau VPC Flow Logs: Kiểm tra ALB access logs (cho target group), security groups (ALB cần inbound HTTP/HTTPS từ 0.0.0.0/0), CloudWatch metrics ALB (HealthyHostCount, RequestCount).
🚀 Mẹo DevOps: Enable VPC Flow Logs mặc định cho prod VPCs qua AWS Organizations SCPs. Sử dụng CloudWatch Logs Insights để filter logs theo src IP.

Hy vọng phân tích này giúp bạn ôn thi DOP-C02 hiệu quả! 💪

Câu 1322
A developer has an application that uses AWS Security Token Service (AWS STS). The application calls the STS AssumeRole API operation to provide trusted users with temporary security credentials. The application calls AWS STS at the service's default endpoint: https://sts.amazonaws.com.

The application is deployed in an Asia Pacific AWS Region. The application is experiencing errors that are related to intermittent latency when the application calls AWS STS.

What should the developer do to resolve this issue?
  1. A Update the application to use the GetSessionToken API operation.
  2. B Update the application to use the AssumeRoleWithSAML API operation.
  3. C Update the application to use a Regional STS endpoint that is closer to the application deployment.
  4. D Update the application to use the AssumeRoleWithWebldentity API operation. Move the STS endpoint to a global endpoint.
Xem giải thích

🧩 Phân tích nội dung câu hỏi

Câu hỏi mô tả một ứng dụng của developer sử dụng AWS Security Token Service (STS) để gọi API AssumeRole, nhằm cung cấp tạm thời credentials bảo mật cho người dùng đáng tin cậy. Ứng dụng đang gọi endpoint mặc định toàn cầu: https://sts.amazonaws.com.

Ứng dụng được triển khai ở vùng AWS Asia Pacific (ví dụ: ap-southeast-1 hoặc tương tự), và gặp lỗi latency ngắt quãng (chậm trễ không liên tục) khi gọi STS.

Vấn đề cốt lõi: Endpoint toàn cầu sts.amazonaws.com có thể gây độ trễ cao vì dữ liệu phải đi qua xa (thường route qua US East), đặc biệt ở các region xa như Asia Pacific. AWS khuyến nghị (từ năm 2022 và cập nhật đến 2026) sử dụng regional STS endpoints để giảm latency, cải thiện độ tin cậy và tuân thủ best practices cho performance. 🛠️

✅ Đáp án đúng

Update the application to use a Regional STS endpoint that is closer to the application deployment.

Lý do chọn đáp án này:

  • Việc chuyển sang regional STS endpoint (ví dụ: sts.ap-southeast-1.amazonaws.com nếu deploy ở Singapore) sẽ route request cục bộ trong region, giảm đáng kể latency và tránh lỗi ngắt quãng.
  • Đây là giải pháp chính thức từ AWS, hỗ trợ đầy đủ cho AssumeRole API ở tất cả regions (trừ vài ngoại lệ cũ). Không cần thay đổi logic code, chỉ update endpoint URL.
  • Cập nhật 2026: AWS STS regional endpoints là bắt buộc cho các workload cao tải ở non-US regions để đạt SLA tốt nhất. 🚀

🔍 Phân tích chi tiết tất cả các phương án

Dưới đây là phân tích từng lựa chọn, giữ nguyên văn bản gốc bằng tiếng Anh. Mỗi phương án được đánh giá đúng/sai với lý do cụ thể dựa trên tài liệu AWS mới nhất:

  • ❌ [SAI] Update the application to use the GetSessionToken API operation.
    Phương án này sai vì GetSessionToken chỉ dùng để tạo temporary credentials từ IAM user credentials hiện có (không phải AssumeRole). Nó không giải quyết vấn đề latency endpoint, mà chỉ thay đổi API call – vẫn dùng endpoint sts.amazonaws.com toàn cầu, latency vẫn tồn tại. Không phù hợp với scenario AssumeRole cho trusted users.

  • ❌ [SAI] Update the application to use the AssumeRoleWithSAML API operation.
    Sai vì AssumeRoleWithSAML dành cho federation qua SAML identity provider (như Active Directory), không phải case thông thường của AssumeRole. Thay đổi API này yêu cầu refactor code lớn (thêm SAML assertion), và vẫn gặp latency nếu không fix endpoint. Không liên quan trực tiếp đến vấn đề latency.

  • ✅ [ĐÚNG] Update the application to use a Regional STS endpoint that is closer to the application deployment.
    Đúng như đã giải thích ở phần trên: Chuyển sang endpoint regional (ví dụ: sts.{region}.amazonaws.com) giảm latency bằng cách route local, hỗ trợ đầy đủ AssumeRole. AWS docs xác nhận đây là cách resolve intermittent latency ở regions xa.

  • ❌ [SAI] Update the application to use the AssumeRoleWithWebldentity API operation. Move the STS endpoint to a global endpoint.
    Hoàn toàn sai kép: AssumeRoleWithWebIdentity dùng cho OIDC/SAML web identity (như Google, Facebook), không phải AssumeRole cơ bản. Phần "Move to global endpoint" còn tệ hơn vì sts.amazonaws.com chính là global endpoint gây latency – ngược lại với giải pháp! Không fix vấn đề.

📘 Tài liệu tham khảo

Nếu cần code sample hoặc demo config SDK (boto3/Java), hãy cho tôi biết nhé! 💡

Câu 1323
A company is launching a photo sharing application on AWS. Users use the application to upload images to an Amazon S3 bucket. When users upload images, an AWS Lambda function creates thumbnail versions of the images and stores the thumbnail versions in another S3 bucket.

During development, a developer notices that the Lambda function takes more than 2 minutes to complete the thumbnail process. The company needs alll images to be processed in less than 30 seconds.

What should the developer do to meet these requirements?
  1. A Increase the virtual CPUs (vCPUs) for the Lambda function to use 10 vCPUs.
  2. B Change Lambda function instance type to use m6a.4xlarge.
  3. C Configure the Lambda function to increase the amount of memory.
  4. D Configure burstable performance for the Lambda function.
Xem giải thích

🧩 Giải thích chi tiết nội dung câu hỏi

Câu hỏi mô tả tình huống thực tế trong phát triển ứng dụng chia sẻ ảnh trên AWS:
Một công ty đang triển khai ứng dụng photo sharing. Người dùng upload ảnh gốc vào một Amazon S3 bucket. Khi upload xảy ra, một AWS Lambda function được kích hoạt để:

  • Tạo phiên bản thumbnail (ảnh thu nhỏ) từ ảnh gốc.
  • Lưu thumbnail vào một S3 bucket khác.

Vấn đề phát hiện trong quá trình phát triển:

  • Lambda mất hơn 2 phút để xử lý thumbnail.
  • Yêu cầu kinh doanh: Tất cả ảnh phải được xử lý trong dưới 30 giây để đảm bảo trải nghiệm người dùng tốt (UX mượt mà, tránh timeout hoặc delay).

Mục tiêu: Developer cần tối ưu Lambda để đạt tốc độ <30 giây, tận dụng kiến thức AWS Lambda mới nhất (2024-2026): Lambda là serverless, scale tự động, nhưng performance phụ thuộc vào tài nguyên được allocate (như memory ảnh hưởng trực tiếp đến CPU). 🛠️

✅ Đáp án đúng và lý do lựa chọn

Đáp án đúng: Configure the Lambda function to increase the amount of memory.

Lý do chi tiết:
Trong AWS Lambda (cập nhật 2026), bạn không set CPU trực tiếp mà CPU power scale tự động tỷ lệ thuận với memory (tăng 1GB memory ≈ tăng ~1.77 vCPU tương đương). Việc tăng memory sẽ:

  • Cung cấp nhiều CPU cores hơn và bandwidth cao hơn.
  • Giảm thời gian xử lý thumbnail (image processing nặng CPU-intensive).
  • Lambda hỗ trợ memory từ 128MB đến 10,240MB (mới nhất), giúp xử lý nhanh từ >2 phút xuống <30 giây mà không cần code thay đổi lớn.
    Ví dụ: Từ 512MB lên 2GB hoặc 4GB thường cải thiện 4-10x performance cho workload image resize. Đây là best practice AWS khuyến nghị đầu tiên cho cold start và runtime chậm. 🚀

📋 Phân tích tất cả các phương án (đúng/sai)

Dưới đây là phân tích từng lựa chọn giữ nguyên nội dung gốc bằng tiếng Anh, kèm giải thích hoàn toàn bằng tiếng Việt tại sao đúng/sai dựa trên docs AWS Lambda mới nhất:

  • ❌ [SAI] Increase the virtual CPUs (vCPUs) for the Lambda function to use 10 vCPUs.
    Lý do sai: AWS Lambda không cho phép set vCPUs trực tiếp (fixed ratio với memory). Bạn chỉ config memory, Lambda tự scale CPU (max ~6 vCPU ở 10GB memory). Set "10 vCPUs" không tồn tại, sẽ lỗi config. Không giải quyết gốc rễ performance.

  • ❌ [SAI] Change Lambda function instance type to use m6a.4xlarge.
    Lý do sai: Lambda là serverless, không có instance type như EC2 (m6a.4xlarge là EC2 Graviton instance). Lambda dùng managed runtime (x86/ARM), bạn chỉ chọn architecture (arm64/x86_64) chứ không đổi instance. Sai hoàn toàn khái niệm!

  • ✅ [ĐÚNG] Configure the Lambda function to increase the amount of memory.
    Lý do đúng: Như giải thích trên, tăng memory scale CPU tự động, tối ưu cho workload thumbnail (thư viện như Pillow/OpenCV chạy nhanh hơn). AWS confirm: "CPU power scales with memory" – đạt <30s dễ dàng. Best practice!

  • ❌ [SAI] Configure burstable performance for the Lambda function.
    Lý do sai: Burstable performance (T-series) chỉ dành cho EC2 (như t3/t4g burst CPU credits). Lambda không hỗ trợ burstable, luôn provisioned full CPU theo memory. Không áp dụng!

📘 Tài liệu tham khảo (AWS docs cập nhật 2026)

Hy vọng phân tích này giúp bạn ôn thi DOP-C02 hiệu quả! Nếu cần lab thực hành, dùng AWS Console tăng memory thử nhé. 💡

Câu 1324 Chọn nhiều đáp án
A development team is designing a mobile app that requires multi-factor authentication.

Which steps should be taken to achieve this? (Choose two.)
  1. A Use Amazon Cognito to create a user pool and create users in the user pool.
  2. B Send multi-factor authentication text codes to users with the Amazon SNS Publish API call in the app code.
  3. C Enable multi-factor authentication for the Amazon Cognito user pool.
  4. D Use AWS IAM to create IAM users.
  5. E Enable multifactor authentication for the users created in AWS IAM.
Xem giải thích

🧩 Phân tích nội dung câu hỏi

Câu hỏi tập trung vào việc thiết kế một ứng dụng di động (mobile app) yêu cầu multi-factor authentication (MFA) – tức là xác thực hai yếu tố để tăng cường bảo mật cho người dùng cuối (end-users). Đây là tình huống phổ biến trong phát triển ứng dụng AWS, nơi đội ngũ dev cần chọn các bước phù hợp để triển khai MFA một cách an toàn và scalable.

Câu hỏi yêu cầu chọn TWO (2) bước đúng từ các lựa chọn, nhấn mạnh vào việc sử dụng dịch vụ AWS phù hợp cho user management trong mobile app, không phải quản lý tài nguyên AWS nội bộ. Với kiến thức AWS cập nhật đến năm 2026 (theo AWS re:Invent 2025 và docs mới nhất), Amazon Cognito là dịch vụ chính thức được khuyến nghị cho identity management và MFA trong app di động, hỗ trợ các phương thức MFA như SMS, TOTP (Time-based One-Time Password), adaptive auth, và integration với app native (iOS/Android).

✅ Đáp án đúng (Chọn TWO)

Các đáp án đúng là:

  1. Use Amazon Cognito to create a user pool and create users in the user pool.
  2. Enable multi-factor authentication for the Amazon Cognito user pool.

Lý do lựa chọn:

  • Để triển khai MFA cho mobile app, bạn cần một user directory chuyên dụng cho end-users (không phải IAM). Amazon Cognito User Pools cung cấp chính xác điều này: tạo user pool để lưu trữ users, sign-up/sign-in, và kích hoạt MFA dễ dàng qua console/API.
  • Bước 1 tạo nền tảng (user pool + users), bước 2 enable MFA (hỗ trợ SMS/TOTP/email). Đây là quy trình chuẩn theo AWS best practices cho app auth, đảm bảo scalability, security (OAuth 2.0/OpenID Connect), và integration với Amplify/AppSync. Không dùng IAM vì IAM dành cho AWS services/users nội bộ, không phù hợp mobile app end-users.

🔍 Giải thích chi tiết từng phương án

Dưới đây là phân tích TẤT CẢ các lựa chọn, giữ nguyên văn bản gốc bằng tiếng Anh. Tôi đánh dấu ✅ đúng hoặc ❌ sai, kèm giải thích bằng tiếng Việt:

  • ✅ Use Amazon Cognito to create a user pool and create users in the user pool.
    🛠️ Đúng: Đây là bước đầu tiên thiết lập user directory cho app. Cognito User Pools quản lý users độc lập, hỗ trợ sign-up tự động qua app code (AWS SDK), và tích hợp MFA sau. Theo docs 2026, User Pools scale đến hàng triệu users với low latency.

  • ❌ Send multi-factor authentication text codes to users with the Amazon SNS Publish API call in the app code.
    🧩 Sai: SNS chỉ là dịch vụ gửi notifications (SMS/push), không phải hệ thống MFA chuẩn. Nếu tự implement như vậy, bạn phải tự quản lý codes, validation, rate limiting – dẫn đến lỗ hổng bảo mật, không compliant với standards (như NIST). Cognito đã built-in SMS MFA qua SNS internally, không cần app code tự gọi.

  • ✅ Enable multi-factor authentication for the Amazon Cognito user pool.
    🛠️ Đúng: Sau khi tạo user pool, enable MFA trong settings (console/API: SetUserPoolMfaConfig). Hỗ trợ required/optional MFA, methods như SMS (qua Trusted Advisors), TOTP (Google Authenticator), adaptive risk-based. Đây là bước hoàn thiện MFA cho toàn pool hoặc per-user.

  • ❌ Use AWS IAM to create IAM users.
    🔒 Sai: IAM users dành cho truy cập AWS resources (console/API), không phải end-users của mobile app. IAM thiếu features như sign-up flow, social login, MFA cho app context. Dùng IAM cho app users vi phạm least privilege và gây complexity (federation needed).

  • ❌ Enable multifactor authentication for the users created in AWS IAM.
    🔒 Sai: IAM hỗ trợ MFA cho AWS console/API access (virtual MFA/hardware), nhưng không tích hợp native cho mobile app sign-in. End-users app không nên có IAM credentials (security risk: over-privileged). Cognito mới là lựa chọn đúng cho custom MFA flows.

📘 Tài liệu tham khảo (AWS Docs cập nhật 2026)

Hy vọng phân tích này giúp bạn ôn thi DOP-C02 hiệu quả! 🚀 Nếu cần thêm ví dụ code Terraform/ CDK, hãy hỏi nhé!

Câu 1325 Chọn nhiều đáp án
A developer is building an application that will process messages from an Amazon Simple Queue Service (Amazon SQS) standard queue. The application needs to process the messages in an Amazon Elastic Container Service (Amazon ECS) task.

Which actions will result in the MOST cost-effective processing of the messages? (Choose two.)
  1. A Use long polling to query the queue for new messages.
  2. B Use short polling to query the queue for new messages.
  3. C Use message batching to retrieve messages from the queue.
  4. D Use Amazon ElastiCache to cache messages in the queue.
  5. E Use an SQS FIFO queue to manage the messages.
Xem giải thích

🧩 Giải thích nội dung câu hỏi

Câu hỏi tập trung vào việc xử lý tin nhắn (messages) từ hàng đợi Amazon SQS standard queue một cách tiết kiệm chi phí nhất (MOST cost-effective) trong ứng dụng chạy trên Amazon ECS task.

  • Bối cảnh: Ứng dụng cần lấy và xử lý messages từ SQS standard queue (hàng đợi tiêu chuẩn, không đảm bảo thứ tự chính xác, hỗ trợ polling linh hoạt).
  • Mục tiêu: Chọn 2 hành động giúp giảm thiểu chi phí, chủ yếu bằng cách giảm số lượng API requests đến SQS (vì AWS tính phí theo số requests: $0.40/million requests sau 1 triệu miễn phí đầu tiên, theo pricing cập nhật 2024-2026).
  • Lý do quan trọng: ECS task xử lý messages theo batch hoặc polling hiệu quả sẽ giảm tần suất gọi API, tránh lãng phí tài nguyên và chi phí polling không cần thiết.

✅ Đáp án đúng (Chọn 2)

Hai phương án đúng là:
Use long polling to query the queue for new messages.
Use message batching to retrieve messages from the queue.

Lý do lựa chọn:
🛠️ Long polling chờ tối đa 20 giây để nhận messages mới, giảm số requests (chỉ 1 request/20s thay vì liên tục), tiết kiệm ~50-70% chi phí so với short polling.
🛠️ Message batching lấy tối đa 10 messages/request (MaxReceiveCount=10), giảm số requests xuống còn 1/10, tối ưu chi phí nhất cho ECS task xử lý hàng loạt.
Kết hợp cả hai tạo hiệu suất cao nhất với chi phí thấp nhất trên SQS standard (phiên bản mới nhất AWS hỗ trợ không giới hạn batch size lên 10).

📋 Phân tích tất cả các phương án

Dưới đây là phân tích chi tiết từng lựa chọn, giữ nguyên nội dung gốc bằng tiếng Anh. Mỗi phương án được đánh dấu ✅ (đúng) hoặc ❌ (sai), kèm giải thích lý do dựa trên kiến thức AWS cập nhật đến 2026.

  • Use long polling to query the queue for new messages.
    ✅ Đúng: Long polling (ReceiveMessage với WaitTimeSeconds=1-20) giảm đáng kể số API calls bằng cách chờ messages sẵn có, thay vì poll liên tục. Tiết kiệm chi phí cao nhất cho SQS standard queue trong ECS, đặc biệt khi traffic không đều. (Giảm requests từ hàng nghìn xuống hàng trăm/giờ).

  • Use short polling to query the queue for new messages.
    ❌ Sai: Short polling (mặc định WaitTimeSeconds=0) gửi requests thường xuyên (mỗi 1-2s), dẫn đến tốn kém hơn vì tăng số API calls không cần thiết, ngay cả khi queue rỗng. Không phải lựa chọn cost-effective.

  • Use message batching to retrieve messages from the queue.
    ✅ Đúng: Sử dụng ReceiveMessage với MaxNumberOfMessages=1-10 để lấy batch messages/request, giảm 90% số requests so với lấy 1 message/lần. Hoàn hảo cho ECS task xử lý parallel, tối ưu chi phí SQS (hỗ trợ batch DeleteMessageBatch nữa).

  • Use Amazon ElastiCache to cache messages in the queue.
    ❌ Sai: ElastiCache (Redis/Memcached) dùng để cache dữ liệu ứng dụng, không áp dụng cho SQS queue (SQS đã là message broker bền vững). Thêm ElastiCache chỉ tăng chi phí (instance giờ + data transfer) mà không giảm requests SQS, gây phức tạp không cần thiết.

  • Use an SQS FIFO queue to manage the messages.
    ❌ Sai: FIFO queue đảm bảo thứ tự và exactly-once delivery, nhưng đắt hơn standard queue (throughput giới hạn 3000 msg/s/shard, giá tương đương nhưng yêu cầu chuyển đổi queue → tốn kém setup + không cần thiết cho standard queue). Không giúp cost-effective hơn cho trường hợp này.

📘 Tài liệu tham khảo (AWS cập nhật 2024-2026)

Hy vọng phân tích này giúp bạn ôn thi hiệu quả! 🚀 Nếu cần thêm ví dụ code ECS task với long polling + batching, hãy hỏi nhé!

Câu 1326
A developer is writing an application in AWS Lambda. To simplify testing and deployments, the developer needs the database connection string to be easily changed without modifying the Lambda code.

How can this requirement be met?
  1. A Store the connection string as a secret in AWS Secrets Manager.
  2. B Store the connection string in an IAM user account.
  3. C Store the connection string in AWS KMS.
  4. D Store the connection string as a Lambda layer.
Xem giải thích

🧩 Phân tích nội dung câu hỏi

Câu hỏi tập trung vào một lập trình viên đang phát triển ứng dụng trên AWS Lambda, với yêu cầu chính là lưu trữ chuỗi kết nối cơ sở dữ liệu (database connection string) sao cho dễ dàng thay đổi mà không cần chỉnh sửa code Lambda.

📝 Chi tiết vấn đề:

  • Lambda functions thường được triển khai immutable (không thay đổi sau khi deploy), nên việc hard-code connection string vào code sẽ gây khó khăn cho testing (ví dụ: dev/test/prod environments) và deployments (cần rebuild/deploy lại mỗi khi thay đổi).
  • Giải pháp cần: Một cơ chế ngoại vi code, an toàn, dễ quản lý và truy cập động tại runtime, hỗ trợ rotation secrets nếu cần.
  • Mục tiêu: Đơn giản hóa testing/deployments, tuân thủ best practices AWS (như 12-factor app: config riêng biệt với code).

✅ Đáp án đúng: Store the connection string as a secret in AWS Secrets Manager.

Lý do lựa chọn:

  • AWS Secrets Manager được thiết kế chuyên biệt để lưu trữ, quản lý và rotate secrets (như DB credentials, connection strings) một cách an toàn.
  • Lambda có thể truy cập secret qua IAM role với quyền secretsmanager:GetSecretValue, không cần hard-code vào code.
  • Thay đổi secret chỉ cần update trên Secrets Manager (console/CLI/API), Lambda sẽ fetch động tại runtime → không cần modify code hay redeploy.
  • Hỗ trợ integration native với Lambda (qua extensions hoặc SDK), tích hợp VPC/RDS proxy, và automatic rotation (đến 2026, hỗ trợ multi-Region replication, caching cho performance).
  • Lợi ích: Bảo mật cao (encryption at rest/transit bằng KMS), audit logs qua CloudTrail, chi phí hợp lý cho low-volume access.

🛠️ Phân tích chi tiết từng phương án

  • ✅ Store the connection string as a secret in AWS Secrets Manager.
    Đúng vì: Đây là dịch vụ chuẩn của AWS cho secrets management. Lambda fetch secret qua AWS SDK (boto3/python, aws-sdk/js) mà không hard-code. Dễ thay đổi qua console/API, hỗ trợ versioning/rotation tự động. Phù hợp DOP-Professional exam (best practice cho config/secrets ở Lambda).

  • ❌ Store the connection string in an IAM user account.
    Sai vì: IAM chỉ quản lý access keys/permissions, không phải nơi lưu trữ data/secrets như connection string. Lưu vào IAM user sẽ expose credentials (không an toàn), không hỗ trợ fetch động từ Lambda, và vi phạm nguyên tắc least privilege. IAM users không dành cho config storage.

  • ❌ Store the connection string in AWS KMS.
    Sai vì: KMS là key management service (tạo/ quản lý encryption keys), không lưu trữ data/secrets trực tiếp (chỉ encrypt/decrypt). Không có API để store/retrieve connection string như Secrets Manager. Sử dụng KMS sai mục đích, không giải quyết yêu cầu thay đổi dễ dàng.

  • ❌ Store the connection string as a Lambda layer.
    Sai vì: Lambda layers dùng để chia sẻ code/libraries (như dependencies), không phải config động. Layers immutable sau publish → thay đổi yêu cầu tạo layer mới + update Lambda → phải modify deployment, trái với yêu cầu "without modifying the Lambda code". Không an toàn cho secrets (public layers có rủi ro).

📘 Tài liệu tham khảo (AWS cập nhật đến 2026)

Hy vọng phân tích này giúp bạn ôn thi hiệu quả! 🚀 Nếu cần thêm ví dụ code, hỏi nhé!

Câu 1327
A developer is building an ecommerce application that uses multiple AWS Lambda functions. Each function performs a specific step in a customer order workflow, such as order processing and inventory management.

The developer must ensure that the Lambda functions run in a specific order.

Which solution will meet this requirement with the LEAST operational overhead?
  1. A Configure an Amazon Simple Queue Service (Amazon SQS) queue to contain messages about each step a function must perform. Configure the Lambda functions to run sequentially based on the order of messages in the SQS queue.
  2. B Configure an Amazon Simple Notification Service (Amazon SNS) topic to contain notifications about each step a function must perform. Subscribe the Lambda functions to the SNS topic. Use subscription filters based on the step each function must perform.
  3. C Configure an AWS Step Functions state machine to invoke the Lambda functions in a specific order.
  4. D Configure Amazon EventBridge Scheduler schedules to invoke the Lambda functions in a specific order.
Xem giải thích

🧩 Giải thích nội dung câu hỏi

Câu hỏi mô tả một lập trình viên đang xây dựng ứng dụng thương mại điện tử (ecommerce) sử dụng nhiều hàm AWS Lambda, mỗi hàm thực hiện một bước cụ thể trong quy trình xử lý đơn hàng của khách hàng, chẳng hạn như xử lý đơn hàng (order processing) và quản lý kho hàng (inventory management). Yêu cầu chính là đảm bảo các hàm Lambda này chạy theo thứ tự cụ thể (specific order), ví dụ: hàm xử lý đơn hàng phải hoàn thành trước khi hàm quản lý kho chạy. Giải pháp phải có ít gánh nặng vận hành nhất (LEAST operational overhead), nghĩa là ưu tiên dịch vụ serverless, được quản lý hoàn toàn bởi AWS, không cần code phức tạp để quản lý thứ tự hoặc xử lý lỗi thủ công. Đây là tình huống điển hình cho orchestration workflow trong AWS, nơi cần điều phối các bước Lambda một cách đáng tin cậy và dễ mở rộng.

✅ Đáp án đúng và lý do lựa chọn

Configure an AWS Step Functions state machine to invoke the Lambda functions in a specific order.

Lý do chọn đáp án này 🛠️: AWS Step Functions là dịch vụ orchestration serverless chuyên dụng để điều phối các workflow phức tạp, hỗ trợ định nghĩa thứ tự thực thi Lambda chính xác qua state machine (ví dụ: sử dụng các state như Task, Parallel, Choice). Nó tự động xử lý retry, error handling, timeout, và visibility qua console/CloudWatch. Least operational overhead vì hoàn toàn managed, không cần code sequencer thủ công, hỗ trợ ASL (Amazon States Language) để vẽ workflow trực quan. Phiên bản mới nhất (2026) tích hợp tốt với Lambda (bao gồm Provisioned Concurrency) và Express Workflows cho high-throughput. Đây là best practice cho order workflow theo AWS Well-Architected Framework.

📋 Phân tích tất cả các phương án

Dưới đây là phân tích chi tiết từng lựa chọn, với giữ nguyên nội dung gốc bằng tiếng Anh. Tôi đánh dấu ✅ đúng hoặc ❌ sai, kèm giải thích rõ ràng:

  • ❌ Configure an Amazon Simple Queue Service (Amazon SQS) queue to contain messages about each step a function must perform. Configure the Lambda functions to run sequentially based on the order of messages in the SQS queue.
    Giải thích sai 🚫: SQS là message queue decoupling tốt, nhưng không đảm bảo thứ tự thực thi tự động. FIFO queue chỉ giữ order messages nhưng Lambda trigger cần code custom (polling, ack messages, dead-letter queue xử lý lỗi) để sequential invoke – dẫn đến operational overhead cao (quản lý visibility timeout, duplicate handling). Không phù hợp cho workflow orchestration phức tạp như order processing.

  • ❌ Configure an Amazon Simple Notification Service (Amazon SNS) topic to contain notifications about each step a function must perform. Subscribe the Lambda functions to the SNS topic. Use subscription filters based on the step each function must perform.
    Giải thích sai 🚫: SNS là pub/sub cho fan-out notifications (at-least-once delivery), không hỗ trợ thứ tự sequential. Subscription filters chỉ lọc message attributes, nhưng các Lambda có thể chạy song song hoặc out-of-order do không có cơ chế orchestrate. Overhead cao vì cần code logic filter và retry thủ công, không lý tưởng cho workflow deterministic.

  • ✅ Configure an AWS Step Functions state machine to invoke the Lambda functions in a specific order.
    Giải thích đúng 🎯: Như đã phân tích ở trên, Step Functions native hỗ trợ sequential execution qua state transitions, visual designer, và tích hợp sâu với Lambda/EventBridge. Least overhead nhờ managed service, metrics tự động, và hỗ trợ ML workflows (2026 updates). Best fit cho ecommerce order flow.

  • ❌ Configure Amazon EventBridge Scheduler schedules to invoke the Lambda functions in a specific order.
    Giải thích sai 🚫: EventBridge Scheduler (trước là CloudWatch Events Scheduler, cập nhật 2024-2026) dùng cho scheduling định kỳ/cron jobs (one-time hoặc recurring), không phải orchestration workflow dynamic. Không hỗ trợ điều kiện giữa các bước (như wait-for-previous), dẫn đến overhead cao nếu hardcode schedules – không linh hoạt cho order processing real-time.

📘 Tài liệu tham khảo

  • AWS Step Functions Documentation: Developer Guide - Workflow Studio (cập nhật 2026: Hỗ trợ Hybrid Workflows và Enhanced Integrations).
  • AWS Well-Architected Framework - Operational Excellence Pillar: Serverless Orchestration Patterns.
  • AWS re:Post & Exam Prep: DOP-C02 blueprint (DevOps Pro cert) nhấn mạnh Step Functions cho Lambda workflows.
  • Blog AWS: "Orchestrating Serverless Workflows with Step Functions" (2025 update với EventBridge Pipes integration).

Hy vọng phân tích này giúp bạn ôn thi hiệu quả! 🚀 Nếu cần ví dụ code ASL, hãy hỏi thêm.

Câu 1328
A developer is building an image-processing application that includes an AWS Lambda function. The Lambda function moves images from one AWS service to another AWS service for image processing. For images that are larger than 2 MB, the Lambda function returns the following error: “Task timed out after 3.01 seconds.”

The developer needs to resolve the error without modifying the Lambda function code.

Which solution will meet these requirements?
  1. A Increase the Lambda function’s timeout value.
  2. B Configure the Lambda function to not move images that are larger than 2 MB.
  3. C Request a concurrency quota increase for the Lambda function.
  4. D Configure provisioned concurrency for the Lambda function.
Xem giải thích

🧩 Phân tích chi tiết nội dung câu hỏi

Câu hỏi xoay quanh một ứng dụng xử lý hình ảnh sử dụng AWS Lambda function để di chuyển hình ảnh từ một dịch vụ AWS sang dịch vụ khác (ví dụ: từ S3 sang một service xử lý hình như Rekognition hoặc ECS).
🚨 Vấn đề chính: Với hình ảnh lớn hơn 2 MB, Lambda function báo lỗi "Task timed out after 3.01 seconds" – nghĩa là hàm bị timeout sau khoảng 3 giây.
📋 Yêu cầu: Giải quyết lỗi mà không được sửa đổi code của Lambda function. Điều này nhấn mạnh cần dùng các cấu hình runtime hoặc service-level mà không chạm vào logic code.
🛠️ Ngữ cảnh AWS Lambda (cập nhật 2026): Lambda có timeout mặc định là 3 giây, tối đa 15 phút. Hình ảnh lớn (>2MB) thường mất thời gian để download/upload qua mạng (S3 GetObject/PutObject), dẫn đến vượt quá timeout mặc định. Giải pháp phải tập trung vào việc mở rộng thời gian thực thi mà không thay đổi code.

✅ Đáp án đúng và lý do lựa chọn

Đáp án đúng: Increase the Lambda function’s timeout value.

Lý do:

  • Lambda timeout mặc định là 3 giây, phù hợp với lỗi "3.01 seconds". Hình lớn cần thời gian truyền dữ liệu (network I/O), nên tăng timeout (qua Console, CLI, CDK/Terraform) sẽ cho phép hàm hoàn thành mà không cần sửa code.
  • Đây là giải pháp trực tiếp, đơn giản, tuân thủ yêu cầu "without modifying the Lambda function code".
  • 📘 Nguồn tham khảo: AWS Lambda Developer Guide (2026) - Configuration: Timeout. Timeout có thể điều chỉnh từ 1 giây đến 900 giây (15 phút).

🔍 Giải thích tất cả các phương án (đúng/sai)

Dưới đây là phân tích từng phương án một cách chi tiết, giữ nguyên văn bản gốc bằng tiếng Anh. Tôi sử dụng ✅ cho đúng và ❌ cho sai, kèm lý do dựa trên kiến thức AWS Lambda mới nhất.

  • ✅ Increase the Lambda function’s timeout value.
    Đúng vì: Như giải thích ở trên, đây là cách trực tiếp giải quyết timeout do I/O chậm với file lớn. Có thể tăng lên 15-30 giây qua AWS Console (Functions > Configuration > General > Timeout) hoặc CLI (aws lambda update-function-configuration --timeout 30). Không ảnh hưởng code, hiệu quả ngay lập tức. 🛠️ Hoàn hảo cho trường hợp này!

  • ❌ Configure the Lambda function to not move images that are larger than 2 MB.
    Sai vì: Phương án này yêu cầu sửa code để thêm logic kiểm tra kích thước file (ví dụ: dùng head_object trên S3 để check Content-Length trước khi move). Vi phạm yêu cầu "without modifying the Lambda function code". Ngoài ra, nó không giải quyết vấn đề mà chỉ né tránh, làm ứng dụng không xử lý đầy đủ hình lớn. 🚫 Không phù hợp!

  • ❌ Request a concurrency quota increase for the Lambda function.
    Sai vì: Concurrency quota kiểm soát số lượng invocation đồng thời (mặc định 1000 per region). Lỗi ở đây là timeout từng invocation riêng lẻ, không phải do hết quota (không có lỗi "throttled"). Tăng quota chỉ giúp scale ngang, không kéo dài thời gian chạy của một task. 📈 Không liên quan đến timeout 3 giây!

  • ❌ Configure provisioned concurrency for the Lambda function.
    Sai vì: Provisioned concurrency giảm cold start latency bằng cách giữ container warm (từ 2021, hỗ trợ tốt hơn với Graviton2/3). Nó cải thiện thời gian khởi động (init duration), nhưng không ảnh hưởng đến timeout của runtime execution. Lỗi vẫn xảy ra nếu I/O vượt 3 giây. 💨 Chỉ hữu ích cho latency cao, không phải timeout!

📚 Tài liệu tham khảo bổ sung (cập nhật 2026)

Hy vọng phân tích này giúp bạn ôn thi AWS Certified DevOps Engineer Professional hiệu quả! 🚀 Nếu cần thêm ví dụ code CLI, cứ hỏi nhé!

Câu 1329
A developer has an application container, an AWS Lambda function, and an Amazon Simple Queue Service (Amazon SQS) queue. The Lambda function uses the SQS queue as an event source. The Lambda function makes a call to a third-party machine learning API when the function is invoked. The response from the third-party API can take up to 60 seconds to return.

The Lambda function's timeout value is currently 65 seconds. The developer has noticed that the Lambda function sometimes processes duplicate messages from the SQS queue.

What should the developer do to ensure that the Lambda function does not process duplicate messages?
  1. A Configure the Lambda function with a larger amount of memory.
  2. B Configure an increase in the Lambda function’s timeout value.
  3. C Configure the SQS queue’s delivery delay value to be greater than the maximum time it takes to call the third-party API.
  4. D Configure the SQS queue’s visibility timeout value to be greater than the maximum time it takes to call the third-party API.
Xem giải thích

🧩 Phân tích chi tiết nội dung câu hỏi

Câu hỏi này xoay quanh vấn đề xử lý tin nhắn trùng lặp (duplicate messages) trong kiến trúc AWS sử dụng Amazon SQS làm event source cho AWS Lambda. Cụ thể:

  • Một lập trình viên có ứng dụng container, hàm Lambda và hàng đợi SQS. Hàm Lambda được kích hoạt bởi SQS (Lambda poll tin nhắn từ SQS).
  • Khi được gọi, Lambda gọi API machine learning bên thứ ba, thời gian phản hồi tối đa 60 giây.
  • Timeout của Lambda hiện tại là 65 giây (đủ để xử lý API).
  • Vấn đề chính: Lambda đôi khi xử lý tin nhắn trùng lặp từ SQS. Lý do gốc rễ là cơ chế visibility timeout của SQS: Khi Lambda poll tin nhắn, nó trở nên "ẩn" (invisible) trong khoảng thời gian visibility timeout (mặc định 30 giây cho SQS Standard). Nếu Lambda chưa xử lý xong và không delete tin nhắn trước khi hết visibility timeout, tin nhắn sẽ visible lại và có thể được poll bởi cùng Lambda instance hoặc instance khác, dẫn đến duplicate processing.

Mục tiêu: Đảm bảo Lambda không xử lý duplicate bằng cách điều chỉnh cấu hình phù hợp, dựa trên phiên bản AWS mới nhất 2026 (Lambda hỗ trợ SQS event source với poll-based invocation, visibility timeout cần >= thời gian xử lý message).

✅ Đáp án đúng và lý do lựa chọn

Đáp án đúng: Configure the SQS queue’s visibility timeout value to be greater than the maximum time it takes to call the third-party API.

Lý do 🛠️:

  • Visibility timeout của SQS quyết định thời gian tin nhắn "ẩn" sau khi được poll. Nếu visibility timeout < thời gian xử lý (API 60s + overhead), tin nhắn visible lại sớm → duplicate.
  • Cần set visibility timeout > 60 giây (ví dụ 70-120 giây, tối đa 12 giờ theo AWS 2026). Lambda timeout 65s đã đủ, nhưng visibility phải lớn hơn để Lambda có thời gian delete message thành công.
  • Điều này ngăn chặn re-processing duplicate, đặc biệt với SQS Standard (không FIFO, có thể duplicate tự nhiên).

📋 Giải thích tất cả các phương án (đúng/sai)

Dưới đây là phân tích từng lựa chọn, giữ nguyên văn bản gốc tiếng Anh. Tôi đánh dấu ✅ đúng hoặc ❌ sai, kèm lý do chi tiết bằng tiếng Việt:

  • ❌ Configure the Lambda function with a larger amount of memory.
    Phương án này sai vì tăng memory chỉ cải thiện performance và concurrency của Lambda (scale theo CPU/memory theo tỷ lệ AWS 2026), giúp xử lý nhanh hơn nhưng không giải quyết duplicate từ SQS. Duplicate do visibility timeout, không liên quan memory. Tăng memory có thể giảm thời gian xử lý API nhưng không ngăn visible lại sớm.

  • ❌ Configure an increase in the Lambda function’s timeout value.
    Phương án này sai vì Lambda timeout đã là 65 giây (>60 giây API), đủ để hoàn thành. Tăng timeout (tối đa 15 phút theo AWS 2026) chỉ tránh timeout error nhưng không ảnh hưởng visibility timeout của SQS. Duplicate xảy ra nếu SQS visible tin nhắn trước khi Lambda delete, dù Lambda chưa timeout.

  • ❌ Configure the SQS queue’s delivery delay value to be greater than the maximum time it takes to call the third-party API.
    Phương án này sai vì delivery delay chỉ trì hoãn giao tin nhắn mới sau khi gửi (mặc định 0 giây, tối đa 15 phút). Nó không liên quan đến visibility sau poll. Delay chỉ ảnh hưởng producer gửi message, không ngăn duplicate khi Lambda poll chậm.

  • ✅ Configure the SQS queue’s visibility timeout value to be greater than the maximum time it takes to call the third-party API.
    Phương án này đúng như đã giải thích ở trên. Set visibility >60 giây đảm bảo Lambda xử lý + delete message trước khi visible lại. Theo best practice AWS, visibility nên = function timeout + buffer (ví dụ 70-90 giây).

📘 Tài liệu tham khảo (AWS cập nhật 2026)

Nếu cần demo code hoặc config Terraform/CloudFormation, hãy cho tôi biết! 🚀

Câu 1330
A company has an application that runs on Amazon EC2 instances. The application needs to use dynamic feature flags that will be shared with other applications. The application must poll on an interval for new feature flag values. The values must be cached when they are retrieved.

Which solution will meet these requirements in the MOST operationally efficient way?
  1. A Store the feature flag values in AWS Secrets Manager. Configure an Amazon ElastiCache node to cache the values by using a lazy loading strategy in the application. Update the application to poll for the values on an interval from ElastiCache.
  2. B Store the feature flag values in an Amazon DynamoDB table. Configure DynamoDB Accelerator (DAX) to cache the values by using a lazy loading strategy in the application. Update the application to poll for the values on an interval from DynamoDB.
  3. C Store the feature flag values in AWS AppConfig. Configure AWS AppConfig Agent on the EC2 instances to poll for the values on an interval. Update the application to retrieve the values from the AppConfig Agent localhost endpoint.
  4. D Store the feature flag values in AWS Systems Manager Parameter Store. Configure the application to poll on an interval. Configure the application to use the AWS SDK to retrieve the values from Parameter Store and to store the values in memory.
Xem giải thích

🧩 Phân tích chi tiết nội dung câu hỏi

Câu hỏi tập trung vào việc triển khai dynamic feature flags (các cờ tính năng động) cho ứng dụng chạy trên Amazon EC2 instances. Các yêu cầu chính bao gồm:

  • Feature flags phải được chia sẻ với các ứng dụng khác (shared across applications).
  • Ứng dụng phải poll (kiểm tra định kỳ theo interval) để lấy giá trị mới.
  • Giá trị phải được cache (lưu tạm) ngay khi retrieve (lấy về).
  • Giải pháp phải là MOST operationally efficient (hiệu quả vận hành cao nhất), nghĩa là giảm thiểu chi phí, quản lý, độ phức tạp, và tận dụng dịch vụ AWS native tốt nhất.

📘 Bối cảnh AWS: Feature flags là công cụ phổ biến trong DevOps để bật/tắt tính năng mà không cần deploy lại code. AWS khuyến nghị sử dụng dịch vụ chuyên biệt như AWS AppConfig cho trường hợp này, vì nó hỗ trợ polling agent, caching local, và tích hợp dễ dàng với EC2 (theo tài liệu AWS cập nhật đến 2026).

✅ Đáp án đúng và lý do lựa chọn

Đáp án đúng: Store the feature flag values in AWS AppConfig. Configure AWS AppConfig Agent on the EC2 instances to poll for the values on an interval. Update the application to retrieve the values from the AppConfig Agent localhost endpoint.

Lý do chọn đáp án này 🛠️:

  • AWS AppConfig là dịch vụ AWS native được thiết kế chuyên biệt cho feature flags và configuration management động, hỗ trợ chia sẻ giữa nhiều ứng dụng/instances.
  • AppConfig Agent (daemon chạy trên EC2) tự động poll interval từ AppConfig service, cache local (trên localhost endpoint), giảm tải API calls và latency. Ứng dụng chỉ cần query endpoint local (http://localhost:2772), rất efficient.
  • Operationally efficient nhất: Không cần code phức tạp, auto-scaling, validation, rollout strategies (gradual deployment), và tích hợp IAM/CloudWatch. Giảm chi phí so với các DB/cache riêng lẻ.
  • Phù hợp kiến thức mới nhất (AWS 2026): AppConfig hỗ trợ free tier polling, enhanced agent với SSE (Server-Sent Events) cho real-time updates nếu cần.

📋 Giải thích tất cả các phương án (đúng/sai)

Dưới đây là phân tích từng lựa chọn, giữ nguyên văn bản gốc tiếng Anh. Tôi đánh dấu ✅ (đúng) hoặc ❌ (sai) và giải thích chi tiết bằng tiếng Việt:

  • ❌ [SAI] Store the feature flag values in AWS Secrets Manager. Configure an Amazon ElastiCache node to cache the values by using a lazy loading strategy in the application. Update the application to poll for the values on an interval from ElastiCache.
    Phân tích sai: Secrets Manager dành cho secrets nhạy cảm (API keys, passwords), không phải feature flags động/chia sẻ. Lazy loading với ElastiCache yêu cầu code phức tạp (app phải implement poll + cache logic), tăng operational overhead (quản lý ElastiCache cluster, scaling). Không efficient bằng agent native.

  • ❌ [SAI] Store the feature flag values in an Amazon DynamoDB table. Configure DynamoDB Accelerator (DAX) to cache the values by using a lazy loading strategy in the application. Update the application to poll for the values on an interval from DynamoDB.
    Phân tích sai: DynamoDB + DAX tốt cho NoSQL data, nhưng feature flags không cần full DB features (queries phức tạp). App phải tự implement poll + lazy loading, tăng code debt và chi phí (DAX cluster riêng). Không hỗ trợ native polling/caching cho flags, kém efficient hơn AppConfig.

  • ✅ [ĐÚNG] Store the feature flag values in AWS AppConfig. Configure AWS AppConfig Agent on the EC2 instances to poll for the values on an interval. Update the application to retrieve the values from the AppConfig Agent localhost endpoint.
    Phân tích đúng (như phần trên): Hoàn hảo match yêu cầu – agent xử lý poll/cache tự động, app chỉ query local. Giảm latency, zero-effort scaling.

  • ❌ [SAI] Store the feature flag values in AWS Systems Manager Parameter Store. Configure the application to poll on an interval. Configure the application to use the AWS SDK to retrieve the values from Parameter Store and to store the values in memory.
    Phân tích sai: Parameter Store phù hợp static params (ít thay đổi), không tối ưu cho dynamic flags (throttling limits cao nếu poll thường xuyên). App phải tự poll + in-memory cache qua SDK, tăng code complexity, no native agent, và kém scalable so với AppConfig.

📚 Tài liệu tham khảo (AWS cập nhật 2026)

  • AWS AppConfig Documentation: AWS AppConfig Feature Flags – Chi tiết agent polling & caching.
  • AWS Well-Architected Framework (DevOps Pillar): Khuyến nghị AppConfig cho config management efficient.
  • Exam Prep DOP-C02: Câu hỏi tương tự trong AWS Certified DevOps Engineer Professional (2024-2026 blueprint).
  • AWS Blogs: "Using AWS AppConfig for Dynamic Configuration" (2023+ updates với agent enhancements).

Giải pháp này giúp tối ưu DevOps lifecycle 🚀! Nếu cần demo code hoặc lab, hãy hỏi thêm.