وب سایت تخصصی شرکت فرین
دسته بندی دوره ها

Deploy Spring Boot services to AWS ECS Fargate with AWS CDK

سرفصل های دوره

Create microservices with AWS ECS, AWS CDK V2, Spring Boot V3 in Java 21. Learn to use SNS, SQS, DynamoDB, S3,AWS SDK V2


1. Introduction
  • 1. Course presentation
  • 2. ECommerce backend project presentation
  • 3. AWS concepts
  • 4.1 01 Preparing AWS account.pdf
  • 4. Preparing then AWS account
  • 5.1 02 Preparing development environment.pdf
  • 5. Preparing the development environment

  • 2. AWS CloudFormation introduction
  • 1. AWS CloudFormation introduction
  • 2. Analyzing stacks, events, resources and properties
  • 3. Stacks.html
  • 4. Deleting a stack

  • 3. Creating the infrastructure project with AWS CDK
  • 1. AWS Cloud Development Kit introduction
  • 2.1 03 Creating IAM user.pdf
  • 2. Creating the AWS IAM user to be used by the AWS CDK
  • 3. Creating the infrastructure project with AWS CDK
  • 4. Analyzing the CDK project structure
  • 5. AWS CDK.html

  • 4. Creating the first Spring Boot project ProductsService
  • 1. Spring Boot introduction
  • 2. The first Spring Boot microservice ProductsService
  • 3. Creating the ProductsService Spring Boot project
  • 4. Preparing the IntelliJ IDEA
  • 5. Executing the application for the first time
  • 6. Creating the first controller
  • 7. Creating the Dockerfile
  • 8. Generating the Docker image
  • 9.1 S04 ECommerceECS CDK.zip
  • 9.2 S04 productsservice.zip
  • 9. Running the Docker image locally

  • 5. Creating the AWS ECR image repository with AWS CDK
  • 1. AWS ECR introduction
  • 2. Creating the first CloudFormation stack in the CDK project
  • 3. Creating the AWS ECR repository with AWS CDK
  • 4. Organizing the stack in the CDK project
  • 5. Bootstrapping the AWS account
  • 6. Deploying the stack with its ECR repository
  • 7.1 S05 ECommerceECS CDK.zip
  • 7.2 S05 productsservice.zip
  • 7. Pushing the ProductsService Docker image to the AWS ECR repository

  • 6. Creating the AWS VPC with AWS CDK
  • 1. AWS VPC introduction
  • 2. Multiple Availability Zones
  • 3. Security Groups
  • 4. Subnets
  • 5. Internet Gateway
  • 6. NAT Gateway
  • 7. Without NAT Gateway
  • 8. With NAT Gateway
  • 9. AWS PrivateLink
  • 10. Creating the AWS VPC with AWS CDK
  • 11. Organizing the stacks
  • 12. Deploying the AWS VPC
  • 13. Analyzing the created AWS VPC resources using AWS console
  • 14. [OPTIONAL] - Destroying the infrastructure to save costs

  • 7. Creating the AWS ECS cluster with AWS CDK
  • 1. AWS ECS concepts, including clusters, task definitions and services.
  • 2. vCPU and Memory allocation
  • 3. AWS ECS task definition
  • 4. AWS ECS task
  • 5. AWS ECS service
  • 6. AWS ECS Auto Scaling
  • 7. AWS ECS Multi Availability Zones
  • 8. Creating the AWS ECS cluster with AWS CDK
  • 9. Organizing the stacks
  • 10. Deploying the ECS Cluster with AWS CDK
  • 11. Analyzing the created AWS ECS cluster using the AWS console

  • 8. Creating the AWS ECS infrastructure to hold the services
  • 1. AWS Application Load Balancer introduction and the ECS integration strategy
  • 2. Target Group
  • 3. Health Check mechanism
  • 4. Security Group
  • 5. Creating the stack to hold the resources to be shared with other stacks
  • 6. Creating the AWS Network Load Balancer using AWS CDK
  • 7. Creating the AWS VPC Link with AWS CDK
  • 8. Creating the AWS Application Load Balancer with AWS CDK
  • 9. Organizing the stacks
  • 10. Deploying the new stack
  • 11.1 S08 ECommerceECS CDK.zip
  • 11.2 S08 productsservice.zip
  • 11. Analyzing the create AWS resources using the AWS console

  • 9. Creating the ECS service with AWS CDK
  • 1. Strategy to create the ECS service and the remaining resources
  • 2. Creating the new stack for the ProductsService
  • 3. Creating the ECS task definition
  • 4. Creating the service log driver
  • 5. Adding the service container to the task definition
  • 6. Adding a new listener to the AWS Application Load Balancer
  • 7. Creating the AWS Fargate service
  • 8. [OPTIONAL] - Assigning public IP addresses to the instances
  • 9. Configuring the AWS ALB target group and the health check mechanism
  • 10. Configuring the AWS Network Load Balancer
  • 11.1 S09 ECommerceECS CDK.zip
  • 11.2 S09 productsservice.zip
  • 11. Organizing the stacks
  • 12. Deploying the created resources and the ProductsServices
  • 13. [IMPORTANT] - ECS troubleshooting
  • 14. Analyzing the created resources using AWS console
  • 15. [OPTIONAL] - Destroying the infrastructure to save costs

  • 10. Creating the AWS API Gateway with AWS CDK
  • 1. Introduction to AWS API Gateway
  • 2. Integration between API Gateway and AWS ECS services through AWS VPC Link
  • 3. Creating the new stack for the API Gateway resources
  • 4. Creating the API Gateway resource
  • 5. Creating the products resource and its first method
  • 6.1 S10 ECommerceECS CDK.zip
  • 6.2 S10 productsservice.zip
  • 6. Organizing the stacks
  • 7. Testing the integration between the API Gateway and the AWS ECS service

  • 11. Creating the AWS DynamoDB products table with AWS CDK
  • 1. Introduction to AWS DynamoDB tables
  • 2. Basic Concepts about Aws Dynamo DB tables
  • 3. Creating the AWS DynamoDB table with AWS CDK
  • 4. Granting permission to ProductsService to access the DynamoDB table
  • 5. Creating the REST operation to create new products
  • 6. Creating the REST operation to update a product by its id
  • 7. Creating the REST operation to get a product by its id
  • 8. Creating the REST operation to delete a product by its id
  • 9. Adding the AWS SDK dependencies to ProductsService project
  • 10. Creating the products model to represent it in the new DDB table
  • 11. Creating the DynamoDB configuration class
  • 12. Creating the product repository
  • 13. Creating the method to find all products
  • 14. Creating the method to find a product by its id, using the primary key
  • 15. Creating the method to create a new product
  • 16. Creating the method to delete a product
  • 17. Creating the method to update a product
  • 18. Creating the product DTO
  • 19. Creating the operation to get all products
  • 20. Creating the operation to get a product by its id
  • 21. Creating the operation to create a new product
  • 22. Creating the operation to delete a product
  • 23. Creating the operation to update a product
  • 24. Executing the deployment to test the implementation
  • 25. Using CloudWatch Logs to analyze and fix exceptions in our Products Service
  • 26. Adding a new field to the products model
  • 27.1 S11 ECommerceECS CDK.zip
  • 27.2 S11 productsservice.zip
  • 27. Testing the implementation

  • 12. Instrumenting AWS ECS services with AWS X-Ray
  • 1. Introduction to AWS X-Ray
  • 2. Preparing the ProductsService Spring Boot project to use the AWS X-Ray
  • 3. Creating the sampling rules file
  • 4. Creating the X-Ray inspector
  • 5. Adding the X-Ray interceptor to the DynamoDB client
  • 6. Instrumenting the products controller
  • 7. Adding a X-Ray container sidecar to the ProductsServices task definition
  • 8.1 S12 ECommerceECS CDK.zip
  • 8.2 S12 productsservice.zip
  • 8. Testing the implementation

  • 13. Generating AWS API Gateway logs
  • 1. Setting up the AWS API Gateway resource to generate logs to AWS CloudWatch Logs
  • 2.1 log4j2.zip
  • 2. Controlling the application log level and its format
  • 3. Capturing the unique request id from AWS API Gateway with an interceptor
  • 4. Creating the interceptor configuration
  • 5. Generating logs in the products context
  • 6. Forwarding the unique request identifier using the AWS API Gateway
  • 7. Testing the implementation

  • 14. Spring Boot controller advice with exception handlers
  • 1. Strategy to capture exceptions with exception handlers
  • 2. Creating an enum to represent the errors
  • 3. Creating a custom exception
  • 4. Creating the error response DTO
  • 5. Creating the products exception handler
  • 6. Changing the products controller operations to use the custom exception
  • 7.1 S14 productsservice.zip
  • 7. Testing the implementation

  • 15. AWS API Gateway request body validation
  • 1. AWS API Gateway request body validation concepts and why they should be used
  • 2. Creating the product request validator and its model
  • 3. Adding the product validator to the operation to create a product
  • 4.1 S15 ECommerceECS CDK.zip
  • 4. Testing the implementation and analyzing the AWS API Gateway resource

  • 16. AWS DynamoDB queries using Global Secondary Indexes
  • 1. AWS DynamoDB Global Secondary Index concepts
  • 2. AWS DynamoDB read and write capacity units
  • 3. Strategy to use GSI in the products DynamoDB table
  • 4. Creating the GSI into the products table using AWS CDK
  • 5. Using the DynamoDbSecondaryPartitionKey annotation
  • 6. Adding the product code as a non-required parameter in the API Gateway resource
  • 7. Creating a method to check if a products code exists
  • 8. Getting a product by its code
  • 9. Updating the creation and updating methods to check the products code first
  • 10.1 S16 ECommerceECS CDK.zip
  • 10.2 S16 productsservice.zip
  • 10. Testing implementation with AWS X-Ray

  • 17. Publishing product events with AWS SNS topics
  • 1. AWS SNS topics concepts
  • 2. Strategy to use AWS SNS topics in ProductsService
  • 3. Permission to access a SNS topic
  • 4. Integration between SNS topic and SQS queues
  • 5. Creating the AWS SNS topic using AWS CDK
  • 6. Granting permission to ProductsService to publish messages to the SNS topic
  • 7. Creating the product event models
  • 8. Creating the SNS topic client using the AWS SDK
  • 9. Creating the events publisher service, using the created SNS client
  • 10. Creating the method to public product events
  • 11. Publishing the product deletion event
  • 12. Publishing the product updating event
  • 13. Publishing the product creation event, in an asynchronous way.
  • 14. Testing the implementation
  • 15. Creating the product failure event models
  • 16. Creating the method to publish the product failure event
  • 17. Publishing the product failure event
  • 18.1 S17 ECommerceECS CDK.zip
  • 18.2 S17 productsservice.zip
  • 18. Testing the implementation

  • 18. Creating the AuditService Spring Boot project
  • 1. The AuditService strategy
  • 2. Creating the AuditService Spring Boot project
  • 3. Creating the Dockerfile
  • 4. Preparing the build.gradle file
  • 5. Creating the configuration files
  • 6. Creating the DynamoDB client configuration class
  • 7. Creating the X-Ray client configuration classes
  • 8. Creating a new ECR repository
  • 9. Uploading the first AuditService Docker image
  • 10. Creating the AuditService stack with its main resources
  • 11. Organizing the stack and deploying it
  • 12.1 S18 auditservice.zip
  • 12.2 S18 ECommerceECS CDK.zip
  • 12. Analyzing the created infrastructure
  • 13. [OPTIONAL] - Destroying the infrastructure to save costs

  • 19. Consuming AWS SQS messages
  • 1. AWS SQS queues concepts
  • 2. Product events strategy using AWS SQS queues
  • 3. Dead-letter Queue strategy
  • 4. Creating the AWS SQS product events queue and its DLQ with AWS CDK
  • 5. Subscribing the AWS SQS product events queue to the AWS SNS topic
  • 6. Granting permission to AuditService to consume messages from the AWS SQS queue
  • 7. Creating the AWS SQS client configuration class
  • 8. Creating the event models to represent the messages
  • 9. Creating the product models to represent its events
  • 10. Creating the product event consumer
  • 11. Creating the method to consume product events
  • 12. Testing the implementation
  • 13.1 S19 auditservice.zip
  • 13.2 S19 ECommerceECS CDK.zip
  • 13. Testing the AWS SQS DLQ in action

  • 20. AWS SNS subscription filter
  • 1. AWS SNS subscription filter concepts
  • 2. Adding a subscription filter to the product events queue subscription
  • 3. Creating the product failure events queue, subscribing it with a filter
  • 4. Creating the product failure event consumer
  • 5. Creating the method to consume product failure messages
  • 6.1 S20 auditservice.zip
  • 6.2 S20 ECommerceECS CDK.zip
  • 6. Testing the implementation

  • 21. Composite primary key - persisting product events in a single DDB table
  • 1. The events AWS DynamoDB table strategy
  • 2. Creating the events DDB table with AWS CDK
  • 3. Creating the product event model
  • 4. Creating the product event repository
  • 5. Creating the method to persist product events
  • 6. Persisting the product events from its consumer
  • 7. Creating the product failure event model
  • 8. Creating the product failure event repository
  • 9. Creating the method to persist product failure events
  • 10. Persisting the product failure events from its consumer
  • 11.1 S21 auditservice.zip
  • 11.2 S21 ECommerceECS CDK.zip
  • 11. Testing the implementation

  • 22. AWS X-Ray and AWS SQS integration
  • 1. Challenges to use AWS X-Ray while consuming messages from AWS SQS queues
  • 2. Capture AWS X-Ray segments in product events consumer
  • 3. Capture AWS X-Ray segments in product failure events consumer
  • 4.1 S22 auditservice.zip
  • 4. Testing the implementation and checking AWS X-Ray traces from queue consumers

  • 23. AWS ECS services with auto scaling
  • 1. Auto scaling strategy in the ProductsService and AuditServices
  • 2. Enabling the auto scaling in the ProductsService and in the AuditService
  • 3. Deploying the changes and analyzing the configuration in the ECS console
  • 4. Preparing the load test tools
  • 5.1 S23 ECommerceECS CDK.zip
  • 5. Analyzing the load test effects

  • 24. AWS DynamoDB provisioned mode with auto scaling
  • 1. AWS DynamoDB provisioned mode with auto scaling concepts
  • 2. Analyzing the previous load test, in terms of the DynamoDB table metrics
  • 3. Enabling the auto scaling in the products DDB table
  • 4.1 S24 ECommerceECS CDK.zip
  • 4. Testing and analyzing the impacts on DDB tables, ECS services and SQS queues

  • 25. AWS DynamoDB table in on demand mode
  • 1. AWS DynamoDB table in on demand mode concepts
  • 2. Enabling the on demand mode in the products DDB table
  • 3. Testing and analyzing the impacts on DDB tables, ECS services and SQS queues
  • 4. Enabling the on demand mode in the events DDB table
  • 5.1 S25 ECommerceECS CDK.zip
  • 5. Testing and analyzing the impacts on DDB tables, ECS services and SQS queues

  • 26. Queries on DynamoDB tables using composite keys
  • 1. Strategy of using composite primary keys for queries
  • 2. Creating the product event DTO for the events API
  • 3. Adding the method to query products by event type, with pagination
  • 4. Adding the method to query products by event type and time range, and pagination
  • 5. Creating the product events controller
  • 6. Instrumenting the composite primary key query operations using AWS X-Ray
  • 7. Creating the product events resource in the API Gateway
  • 8.1 S26 auditservice.zip
  • 8.2 S26 ECommerceECS CDK.zip
  • 8. Testing the implementation

  • 27. Creating the InvoicesService Spring Boot project
  • 1. The InvoicesService strategy
  • 2. Creating the InvoicesService Spring Boot project
  • 3. Preparing the Dockerfile and the build.gradle file
  • 4. Creating the configuration files
  • 5. Creating the DynamoDB client configuration class
  • 6. Creating the X-Ray client configuration classes
  • 7. Creating a new ECR repository
  • 8. Uploading the first InvoicesService Docker image
  • 9. Creating the InvoicesService stack with its main resources
  • 10. Organizing the stack and deploying it
  • 11. Analyzing the created infrastructure
  • 12.1 S27 ECommerceECS CDK.zip
  • 12.2 S27 invoicesservice.zip
  • 12. [OPTIONAL] - Destroying the infrastructure to save costs

  • 28. Event-based file processing with AWS S3
  • 1. AWS S3 introduction
  • 2. Strategy to process file using the AWS S3 bucket
  • 3. Creating the invoices DynamoDB table
  • 4. Creating the AWS S3 bucket with the AWS CDK
  • 5. Creating the AWS SQS queue to receive the notification from the AWS S3 bucket
  • 6. Configuring the S3 bucket event notification to this queue
  • 7. Creating the invoice resource in the AWS API Gateway
  • 8. Creating the operation to check the invoice file transaction
  • 9. Creating the operation to get all invoices from a customer email
  • 10. Checking the created infrastructure
  • 11. Creating the S3 client configuration class
  • 12. Creating the pre-signed URL response model
  • 13. Creating the invoices service
  • 14. Creating the method to generate the pre-signed URL to access the AWS S3 bucket
  • 15. Creating the invoice file transaction model
  • 16. Creating the invoice file transaction repository
  • 17. Creating the method to persist an invoice file transaction
  • 18. Creating the method to update an invoice file transaction
  • 19. Creating the method to get an invoice file transaction
  • 20. Creating the request intercetor
  • 21. Configuring the request interceptor
  • 22. Creating the invoices controller
  • 23. Creating the operation to generate the pre-signed URL
  • 24.1 invoice file 01.txt
  • 24. Testing the implementation
  • 25. Creating the S3 invoice notification consumer
  • 26. Creating the method to delete SQS messages
  • 27. Creating the method to consume SQS messages
  • 28. Creating the method to process the S3 event notification records
  • 29. Testing the implementation
  • 30. Creating the invoice file DTO
  • 31. Creating the invoice transaction model
  • 32. Creating the invoice transaction repository
  • 33. Creating the method to persist an invoice transaction
  • 34. Creating the invoice model
  • 35. Creating the invoice repository
  • 36. Creating the method to persist an invoice
  • 37. Creating the method to get all invoices from a customer by his email
  • 38. Creating the method to process an invoice
  • 39. Testing the implementation
  • 40. Creating the method to check an invoice file transaction by its transactionId
  • 41. Creating the invoice DTO to be used by the new API
  • 42. Creating the operation to get all invoices from a customer, using his email
  • 43. Testing the implementation
  • 44.1 invoice file 02.txt
  • 44. Testing with an invalid invoice file
  • 45.1 invoice file 03.txt
  • 45.2 S28 ECommerceECS CDK.zip
  • 45.3 S28 invoicesservice.zip
  • 45. Testing the AWS S3 bucket lifecycle rule

  • 29. AWS CloudWatch Alarms
  • 1. Strategy to generate alarms based on application logs
  • 2. Creating the AWS CloudWatch alarm to monitor the application error log
  • 3. Strategy to generate alarms based on infrastructure parameters
  • 4. Creating the alarm to monitor the number of throttled events from the events DDB
  • 5. Testing the alarm based on application logs
  • 6.1 S29 ECommerceECS CDK.zip
  • 6.2 S29 productsservice.zip
  • 6. Testing the alarm based on infrastructure parameter

  • 30. AWS Cost Explorer
  • 1. AWS Cost Explorer concepts
  • 2. Analyzing the AWS Cost Explorer graphs and reports

  • 31. Conclusion
  • 1. Thank you!
  • 53,700 تومان
    بیش از یک محصول به صورت دانلودی میخواهید؟ محصول را به سبد خرید اضافه کنید.
    خرید دانلودی فوری

    در این روش نیاز به افزودن محصول به سبد خرید و تکمیل اطلاعات نیست و شما پس از وارد کردن ایمیل خود و طی کردن مراحل پرداخت لینک های دریافت محصولات را در ایمیل خود دریافت خواهید کرد.

    ایمیل شما:
    تولید کننده:
    مدرس:
    شناسه: 35775
    حجم: 10487 مگابایت
    مدت زمان: 1449 دقیقه
    تاریخ انتشار: 25 اردیبهشت 1403
    طراحی سایت و خدمات سئو

    53,700 تومان
    افزودن به سبد خرید