Edge Function – Backend ở sát user, nhanh như chớp

2 min read

Trong quá khứ, backend thường được triển khai ở một cụm máy chủ cố định: Singapore, US-East, Frankfurt,… Nhưng người dùng ở xa thì sao?

Đó là lý do Edge Function ra đời: chạy server-side code gần người dùng nhất có thể, từ đó cải thiện tốc độ đáng kể mà không cần thay đổi kiến trúc quá nhiều.

Edge Function là gì?

Edge Function là các hàm backend chạy tại các điểm “rìa” (edge locations) trên toàn cầu – thay vì ở một server trung tâm.

Bạn có thể hình dung:

  • Người dùng ở Hà Nội → gọi server chạy tại edge Singapore
  • Người dùng ở Paris → gọi server tại edge London

Tất cả diễn ra tự động nhờ nhà cung cấp như Vercel, Cloudflare, Netlify, Deno Deploy…

Lợi ích nổi bật

  • Phản hồi siêu nhanh – vì gần người dùng hơn
  • Tự động phân phối toàn cầu
  • Tối ưu cho app realtime, web tương tác cao
  • Không cần DevOps phức tạp
  • Bảo mật cao (sandboxed, isolate function)

Ví dụ thực tế

1. Xác thực người dùng

Giả sử bạn có một API /api/verify-token. Nếu chạy bằng Edge Function:
  • Người dùng ở HCM gọi → Xử lý luôn tại edge Singapore
  • Không cần gửi token đến server tận bên US hay EU
  • Giảm độ trễ đáng kể


2. Redirect theo vị trí
Trong Next.js, tạo middleware tại middleware.ts:

import { NextResponse } from 'next/server';

export function middleware(req: Request) {
  const url = new URL(req.url);
  const country = req.headers.get('x-vercel-ip-country') || 'US';

  if (country === 'VN') {
    url.pathname = '/vi' + url.pathname;
    return NextResponse.redirect(url);
  }

  return NextResponse.next();
}

middleware.ts mặc định chạy tại Edge Layer khi deploy trên Vercel.


Các nền tảng Edge Function phổ biến

Vercel Edge FunctionsDễ dùng với Next.js, hỗ trợ middleware
Cloudflare WorkersCực nhẹ, chạy tại 285+ location trên thế giới
Netlify EdgeHỗ trợ redirect, logic A/B test tại edge
Deno DeployNative ES Module support, rất phù hợp cho JS thuần


Khi nào nên dùng Edge Function?

  • Redirect theo vùng địa lý
  • Middleware xử lý auth đơn giản
  • API realtime (chat, tracking…)


Lưu ý khi dùng Edge

  • Không nên thực hiện các tác vụ nặng như xử lý hình ảnh, truy vấn DB lớn
  • Edge Function thường có giới hạn RAM/CPU/thời gian xử lý (Vercel: 1s–10s)
  • Dữ liệu nên được cache hoặc gọi từ CDN

Kết luận

Edge Function là xu hướng tương lai cho các ứng dụng web hiện đại:

  • Nhanh hơn, gần hơn, mượt hơn
  • Không cần quản lý hạ tầng phức tạp
  • Thân thiện với frontend developer

Nếu bạn đang dùng Next.js + Vercel, Astro, hoặc bất kỳ JAMstack framework nào, hãy thử chuyển một số API sang chạy ở Edge – bạn sẽ thấy sự khác biệt rõ rệt.

Avatar photo

Leave a Reply

Your email address will not be published. Required fields are marked *