🌍 NodeJS · flashcards
NodeJS Deployment Flashcards
50 question-and-answer cards covering Deployment as it is examined in NodeJS. 24 of them are printed below, taken from across the deck — no signup, no paywall on the preview.
24 sample cards from the Deployment deck
Sampled from the end of the deck, so these are different cards from the ones shown on the syllabus page.
Why are secrets stored as encrypted CI/CD variables rather than in the repository?
To prevent credential leakage in source history. CI systems inject secrets (API keys, tokens) as masked environment variables at runtime, keeping them out of code and logs.
What is Infrastructure as Code (IaC) and how does it relate to deployment pipelines?
IaC manages infrastructure through machine-readable definition files (e.g. Terraform, CloudFormation) instead of manual setup. Pipelines apply these files to provision reproducible, version-controlled environments automatically.
What is Amazon EC2?
Elastic Compute Cloud — AWS's IaaS offering that provides resizable virtual servers (instances) on demand. You manage the OS, runtime, and app; AWS manages the underlying hardware.
What is AWS Elastic Beanstalk?
A PaaS that automatically handles provisioning, load balancing, scaling, and health monitoring for uploaded application code (including Node.js). You deploy code; Beanstalk manages the EC2 infrastructure underneath.
What is AWS Lambda and what pricing model does it use?
Lambda is a serverless, event-driven compute service that runs functions without provisioning servers. You pay only for the number of requests and compute duration (GB-seconds); there is no charge when code isn't running.
What is Amazon S3 primarily used for?
Simple Storage Service — scalable object storage for files (static assets, backups, build artifacts, media). It is not a filesystem or block store; data is stored as objects in buckets accessed via keys.
What is the difference between AWS EC2, ECS, and Lambda for running an app?
EC2 gives full VMs you manage (IaaS). ECS/Fargate runs Docker containers as managed services. Lambda runs stateless functions serverlessly. They trade increasing abstraction for decreasing operational control.
What is an AWS security group?
A virtual stateful firewall attached to instances that controls inbound and outbound traffic by rules (protocol, port, source/destination). Being stateful, return traffic for an allowed inbound request is automatically permitted.
What does an AWS Auto Scaling Group do?
It automatically adjusts the number of EC2 instances up or down based on demand, health checks, and scaling policies, keeping the fleet between a defined minimum and maximum size.
What is Amazon ECR?
Elastic Container Registry — a managed private Docker image registry on AWS used to store, version, and pull container images for services like ECS, EKS, and Lambda.
What role does an AWS Elastic Load Balancer play in deployment?
It distributes incoming traffic across multiple healthy targets (instances/containers) in one or more Availability Zones, improving fault tolerance and enabling zero-downtime rolling and blue-green deployments.
What is Heroku in one sentence?
Heroku is a container-based Platform-as-a-Service (PaaS) that lets developers deploy, run, and scale apps (including Node.js) without managing servers, using a git-push-to-deploy workflow.
What is a dyno in Heroku?
A dyno is a lightweight, isolated Linux container that runs a single command defined in the app; it is Heroku's basic unit of compute. Apps scale by adjusting dyno size and count.
How do you deploy an app to Heroku using Git?
Push to the Heroku remote: git push heroku main. Heroku detects the buildpack, builds a slug, and releases it automatically.
What is the purpose of a Procfile in Heroku?
The Procfile declares the process types and commands Heroku runs, e.g. web: node server.js. The 'web' process type receives external HTTP traffic routed by Heroku.
How must a Node.js app read its port on Heroku, and why?
It must listen on process.env.PORT rather than a hardcoded port, because Heroku dynamically assigns the port and routes external traffic to it. Hardcoding a port causes bind failures.
What is a Heroku buildpack?
A set of scripts that detect an app's language and transform the source into an executable slug by installing dependencies and runtimes (e.g. the Node.js buildpack runs npm install).
How do Heroku dynos handle local file storage?
Dynos have an ephemeral filesystem that is wiped on every restart or deploy (dyno cycling ~every 24h). Persistent data must be kept in add-on databases or object storage like S3, not local files.
What are Heroku config vars used for?
They are environment variables (set via heroku config:set KEY=value or the dashboard) that inject configuration and secrets like DATABASE_URL into the app at runtime, keeping them out of source code.
What is Google Cloud Platform's App Engine?
App Engine is a fully managed PaaS on GCP that runs applications (including Node.js) and auto-scales them without server management. The Standard environment uses managed sandboxes; the Flexible environment runs apps in Docker containers on VMs.
What is Google Cloud Run?
A fully managed serverless platform that runs stateless containers, auto-scaling from zero to many instances based on request load, and billing only for resources used during request handling.
What is the difference between GCP Compute Engine and App Engine?
Compute Engine is IaaS providing configurable virtual machines you manage. App Engine is PaaS that runs your code and handles scaling, patching, and infrastructure for you.
What is Google Kubernetes Engine (GKE)?
GKE is GCP's managed Kubernetes service for deploying, orchestrating, and scaling containerized applications, with Google managing the control plane, upgrades, and node health.
How do App Engine, Cloud Run, and GKE on GCP compare in abstraction and container control?
App Engine (PaaS) offers the most abstraction with least control; Cloud Run runs individual stateless containers serverlessly with moderate control; GKE gives full Kubernetes orchestration and the most control at the cost of more operational overhead.
What this deck covers
The Deployment deck follows the NodeJS Deployment syllabus — 2 chapters and 6 topics — so questions land on material that is genuinely examinable rather than trivia around it. That works out to roughly 25.0 cards per chapter.
Answers are written to be recallable, not just readable — averaging about 194 characters, which is long enough to carry the reasoning and short enough to say out loud.
A deck like this earns its keep on the second and third pass. Read the syllabus first so you know the shape of the subject, then use the cards to find the specific facts that have not stuck.
Deployment flashcards FAQ
How many Deployment flashcards are in this NodeJS deck?
50 cards. This page previews 24 of them, sampled evenly across the deck so you can judge the difficulty before installing anything.
Are these NodeJS flashcards free?
Yes. The preview here is free to read with no signup, and the full 50-card deck is free inside the Examius app.
What do the Deployment cards cover?
They follow the NodeJS Deployment syllabus — 2 chapters and 6 topics — so the questions track what is actually examinable.
How should I use these flashcards?
Read the syllabus first so you know the shape of the subject, then drill the deck. Examius schedules each card with spaced repetition, so cards you keep missing come back sooner and ones you know drift further apart.