Skip to content
View Rosnaldo's full-sized avatar

Block or report Rosnaldo

Block user

Prevent this user from interacting with your repositories and sending you notifications. Learn more about blocking users.

You must be logged in to block users.

Maximum 250 characters. Please don’t include any personal information such as legal names or email addresses. Markdown is supported. This note will only be visible to you.
Report abuse

Contact GitHub support about this user’s behavior. Learn more about reporting abuse.

Report abuse
Rosnaldo/README.md

Callqueue

Manage customer waiting queue

Redirects each customer to match an available attendant.
Once a match was found, both participants are notified and connected to a video call session.

https://github.com/Rosnaldo/callqueue


Call-Center

Manage session credits

Track and audit call sessions for per-minute credit billing.


https://github.com/Rosnaldo/call-center


My Friends

The project is just a compile setup of everything I have being learning in the process.


Architecture decisions

  • containerized services.
  • keycloak (manage user authentication, registration and sessions).
  • API protected by authentication middleware.
  • DB only accessable via service.
  • nginx redirects domain access to internal services.
  • dockerfiles supports three environments: local, development, and production.
  • frontends are provisioned by cloudfront.
  • special admin frontend for easy UI management.
  • monorepo sharing dependencies between multiple modules.

https://github.com/Rosnaldo/call-center


Two tier VPC

Considerations

• Backend can only be ssh accessed via bastion host.
• Backend allows frontend http requests on port 80.
• Frontend and bastion host inside a public subnet and backend inside a private subnet.
• Nginx redirects frontend requests to Api in a isolated URL.
• Nginx allow https access to frontend on port 443.
• IG allows public subnet to access internet.
• NAT Gateway allows private subnet to access internet.
• Api access DynamoDB via VPC endpoint.

https://github.com/Rosnaldo/aws-labs/tree/main/two-tier/simple


Pdf Generator Microservice

A microservice high scalable to convert HTML into PDF.

Considerations

• The SQS receives a HTML as input.
SQS triggers EventBridge Pipe which then creates ECS Controller.
ECS controller manages the ECS Generate PDF and ECS Merge PDF.
ECS controller pulls SQS and creates ECS Generate PDF instances and wait them to finish the tasks.
• The number of ECS Generate instances depends on the number of PDF pages.
ECS Generate PDF polls SQS messages and uses the HTML to generate PDF using puppetter browser chromium and then stores on S3.
• Once all PDF pages are created ECS Controller creates the ECS Merge PDF.
ECS Merge PDF merges all pages into one final PDF.

https://github.com/Rosnaldo/aws-labs/tree/main/pdf-generator

Popular repositories Loading

  1. my-study my-study Public

    HTML

  2. aws-labs aws-labs Public

    JavaScript

  3. my-friends my-friends Public

    TypeScript

  4. call-center call-center Public

    TypeScript

  5. callqueue callqueue Public

    TypeScript

  6. Rosnaldo Rosnaldo Public