Dio la casualidad de que hasta 2020, no me ocupé de las nubes. Cuando finalmente profundicé en este tema, me perdí un poco por la abundancia de servicios ofrecidos en AWS.
Era necesario crear una aplicación con las siguientes características:
- Inicie sesión a través de Facebook o Google.
- La capacidad de descargar y mostrar archivos multimedia.
- Recepción de eventos del servidor en tiempo real.
Este artículo describe los servicios que necesitaba para implementar el proyecto y sentir el proceso.
Arquitectura de la aplicación
servicio web
- - -. AWS Fargate Elastic Beanstalk.
Fargate
PaaS ECS EKS (EKS-Elastic Kubernetes Service, ECS-Elastic Container Service — kubernetes). — (Task), .
Elastic Beanstalk
Fargate. (EC2). -. — , . — . Elastic Beanstalk .
EC2 | Fargate | ||||
---|---|---|---|---|---|
t2.micro | 10% | $0.0134 | 1vCPU,1GB | $0.05167 | 3.85 |
t2.medium | 20% | $0.0536 | 2vCPU,4GB | $0.11356 | 2.12 |
t2.xlarge | 22.5% | $0.2144 | 4vCPU,16GB | $0.268 | 1.25 |
Elastic Beanstalk — . Fargate .
Application Load Balancer
Fargate, Elastic Beanstalk . . , . Fargate Task Definition, Elastic Beanstalk Auto Scaling Group.
Application Load Balancer HTTP. HTTPS, , CloudFront, . ALB HTTP.
.
DynamoDB
NoSql . ( 10–20 ). , .
S3
. . . .
Parameters Store
. .
, , , , . , , - S3.
.
Route53
DNS AWS.
CloudFront
CDN AWS. CloudFront - S3, api- -. Http Https ( S3 bucket ).
AppSync
AppSync — — AWS Amplify. serverless- no-code-. “”, AppSync, AWS, .
Cognito
aws . User Pool c Google, Amazon, Facebook .
DevOps
.
IAM-Identity and Access Management.
CloudFormation, , , SDK. .
:
- CodeCommit — git-, github.
- CodeBuild — . ECR-Elastic Container Repository.
- CodeDeploy — , Fargate Elastic Beanstalk.
- CodePipeline — .
CloudWatch. , , .
, , -, 9 AWS, , — 8 .
AWS, , — , 17 !
Cuando comencé, no pensé que pudiera gustarme. Me resistí. Entonces, por ejemplo, codifiqué el mecanismo de autenticación jwt yo mismo, en lugar de usar Cognito.
Pero cambié de opinión. Aún así, es bueno deshacerse de la carga del código de infraestructura y centrarse en la lógica empresarial. Después de acostumbrarme un poco, comencé a experimentar los sentimientos de un niño en un parque de diversiones. Cada nuevo servicio trae nueva diversión. Me alegro de que este parque aún no se haya explorado por completo. Por mí mismo, tomé la decisión de que estoy aquí por mucho tiempo.