Tech Used - nuthanc/microservice GitHub Wiki

Technologies used

  • NextJS: For server-side rendering
  • TypeScript: To add types so that we get properties beforehand and proper validation can be done
  • NATS-Streaming Server: Event bus so that events can be published to it, listened from it
    • Queue Groups: So that only 1 of the many replicas receive the event
    • Subscription options: For sending events from the start and many other options
    • Heart-beat: Health check to see if the servers are alive
    • Ack: Resend events till Services Ack
  • Redis: In-memory database, used primarily for Jobs(in our case from Bull js)
  • JWT: Need to learn more about this
  • Middlewares for Error Handling
  • Common library: By publishing as npm package
  • Kubernetes: For deployment
  • Ingress-Nginx: To route based on URL
  • Skaffold: For automating Deployment Creation and Deletion as well as File Syncing