backendIntermediate

Node.js & Express Mastery

Node.js & Express Mastery

Node.js & Express nâng cao: kiến trúc/middleware, auth JWT/RBAC, kết nối DB (MongoDB/Postgres), queue/email/upload và logging/monitoring. Viết test, tối ưu truy vấn, cache Redis và Docker/CI/CD sẵn sàng production.

4.8 (95 đánh giá)32h👥 210 học viên📚 20 bài học📎 55 tài liệu🌐 Vietnamese
10.000.000
IT
Tạo bởi ITSS Training
🌐 VietnameseIntermediate

Lộ trình học

Buổi 1
Ngày 1-2

Mục tiêu

  • Express.js advanced patterns
  • Middleware architecture
  • Error handling strategies

Nội dung

  • Ôn nhanh kiến trúc Express và định tuyến nâng cao (router theo module, param middleware); tách controller/service rõ trách nhiệm để dễ test và bảo trì.
  • Xây dựng middleware tùy chỉnh cho logging, đo thời gian phản hồi, chuẩn hóa lỗi; quy ước trả về JSON nhất quán giữa các endpoint.
  • Thiết kế error‑handling tập trung, ánh xạ mã lỗi nghiệp vụ sang HTTP status; không rò rỉ stack trên production và có fallback an toàn.
  • Tối ưu request/response: nén, cache headers, ETag/Last‑Modified; dùng pino/morgan cho log cấu trúc giúp truy vết khi sự cố.
  • Bài tập: tách router nhiều module, viết middleware kiểm tra đầu vào chung, mô phỏng lỗi và đánh giá log/latency sau tối ưu.
Buổi 2
Ngày 3-4

Mục tiêu

  • Database optimization
  • Caching strategies
  • Authentication và security

Nội dung

  • Tối ưu kết nối CSDL bằng connection pooling, cấu hình timeout/retry; đo truy vấn chậm, thêm chỉ mục và hạn chế n+1 query hiệu quả.
  • Tích hợp Redis cache với chiến lược key/TTL hợp lý, invalidation chuẩn; so sánh cache theo request và cache theo danh mục dữ liệu.
  • Xác thực bằng JWT, thiết kế refresh‑token rotation, chống replay; lưu token an toàn bằng cookie httpOnly, CORS và SameSite đúng chuẩn.
  • Gia cố bảo mật bằng rate‑limiting, helmet headers, kiểm soát upload; checklist hardening server và audit gói phụ thuộc định kỳ.
Buổi 3
Ngày 5-6

Mục tiêu

  • Microservices architecture
  • Message queues và job processing
  • API documentation

Nội dung

  • Giới thiệu microservices, pattern giao tiếp (request‑reply, event‑driven) và chiến lược chia domain; ưu/nhược so với monolith thực tế.
  • Xây dựng hàng đợi với RabbitMQ/Bull để xử lý job nền, cơ chế retry/backoff và dead‑letter queue; theo dõi tiến trình và cảnh báo lỗi.
  • Sinh tài liệu API bằng Swagger/OpenAPI, version hóa endpoint; tạo client tự động để giảm sai khác hợp đồng với front‑end.
  • Demo service discovery/load balancing ở môi trường dev; bài tập hai dịch vụ giao tiếp qua queue và HTTP với kịch bản nghiệp vụ.
Buổi 4
Ngày 7-8

Mục tiêu

  • Testing và monitoring
  • Deployment và CI/CD
  • Project thực tế

Nội dung

  • Viết unit/integration test với Jest/Supertest, cô lập phụ thuộc bằng mock; đặt ngưỡng coverage và quy ước test để chống regression.
  • Giám sát với Prometheus/Grafana: RED metrics (Rate‑Errors‑Duration), log cấu trúc; alert cơ bản giúp phát hiện sớm sự cố sản xuất.
  • Đóng gói dịch vụ bằng Docker multi‑stage, tối ưu kích thước image; docker‑compose cho dev/test và biến môi trường an toàn.
  • Bài tập cuối: hoàn thiện API production‑ready có test, logging, monitoring; dựng pipeline CI/CD GitHub Actions build‑test‑deploy tự động.