Building High-Performance APIs with Node.js
Jason Nguyen
Instructor
Course preview
Khóa học tập trung vào xây dựng API hiệu năng cao bằng Node.js. Bạn sẽ học cách sử dụng clustering, caching, database tối ưu, load testing và profiling để đảm bảo API chịu được tải lớn.
Course description
Khóa học tập trung vào xây dựng API hiệu năng cao bằng Node.js. Bạn sẽ học cách sử dụng clustering, caching, database tối ưu, load testing và profiling để đảm bảo API chịu được tải lớn.
What you will learn
- Cluster và scaling Node.js.
- Caching layer với Redis/Memcached.
- Database indexing và query optimization.
- Profiling và debugging hiệu năng.
- Load testing với k6/Artillery.
Course content
6 chapter • 42 lesson • 0 minutes
Thiết kế endpoints và protocol.
REST vs GraphQL vs gRPC
Học về rest vs graphql vs grpc
Stateless vs stateful
Học về stateless vs stateful
Versioning API
Học về versioning api
Error handling best practice
Học về error handling best practice
API contracts
Học về api contracts
Documentation (Swagger/OpenAPI)
Học về documentation (swagger/openapi)
Exercise: design endpoint set
Học về exercise: design endpoint set
Event loop, async và memory.
Understanding the event loop
Học về understanding the event loop
Async patterns and pitfalls
Học về async patterns and pitfalls
Memory leaks and profiling
Học về memory leaks and profiling
Garbage collector tuning
Học về garbage collector tuning
CPU-bound vs I/O-bound tasks
Học về cpu-bound vs i/o-bound tasks
Worker threads and clustering
Học về worker threads and clustering
Exercise: profile sample API
Học về exercise: profile sample api
Redis, indexing, query plans.
Introduction to caching
Học về introduction to caching
Redis essentials
Học về redis essentials
Cache invalidation strategies
Học về cache invalidation strategies
SQL indexing and explain plans
Học về sql indexing and explain plans
NoSQL optimization
Học về nosql optimization
ORM vs raw queries
Học về orm vs raw queries
Exercise: add cache to endpoint
Học về exercise: add cache to endpoint
k6, Artillery, Prometheus.
Setting up load tests
Học về setting up load tests
Interpreting results
Học về interpreting results
Prometheus metrics
Học về prometheus metrics
Logging performance data
Học về logging performance data
Alerting on thresholds
Học về alerting on thresholds
Auto-scaling strategies
Học về auto-scaling strategies
Exercise: run stress test
Học về exercise: run stress test
Protecting your API.
Authentication middleware
Học về authentication middleware
JWT best practices
Học về jwt best practices
Rate limiting strategies
Học về rate limiting strategies
DDoS protection basics
Học về ddos protection basics
CORS and CSRF
Học về cors and csrf
Input validation
Học về input validation
Exercise: secure endpoint
Học về exercise: secure endpoint
Docker, Kubernetes and serverless.
Containerizing your API
Học về containerizing your api
Orchestrating with K8s
Học về orchestrating with k8s
Serverless options
Học về serverless options
CI/CD pipelines for APIs
Học về ci/cd pipelines for apis
Zero-downtime deployments
Học về zero-downtime deployments
Monitoring in production
Học về monitoring in production
Final project: optimize real API
Học về final project: optimize real api
Course preview
Khóa học tập trung vào xây dựng API hiệu năng cao bằng Node.js. Bạn sẽ học cách sử dụng clustering, caching, database tối ưu, load testing và profiling để đảm bảo API chịu được tải lớn.