Giới thiệu API Gateway có thể dùng trên Cloudflare Workers
(github.com/day1swhan)Giới thiệu một API Gateway có thể dùng ngay chỉ với một cú "tách" trong những môi trường như Cloudflare Workers, nơi không thể sử dụng npm.
Trong quá trình vận hành một máy chủ API bằng Workers, tôi xử lý request bằng câu lệnh Switch đến mức phát bực nên đã tạo ra một API Gateway theo phong cách Express.js.
Những ai từng dùng Express.js sẽ thấy quen thuộc với việc hỗ trợ middleware và error handler; ngoài ra, các thành phần thường cần trong môi trường vận hành như URL Params, QueryString và Cookie cũng được parse sẵn mặc định để không cần dùng middleware riêng.
Ngoài ra, API còn hỗ trợ các tính năng sau.
-
Context API: nếu dùng hàm waitUntil, có thể xử lý bất đồng bộ các tác vụ như DB PutItem để trả về phản hồi không blocking cho người dùng.
-
Binding API: có thể sử dụng các dịch vụ của Cloudflare như R2, KV Store.
Mẹo thêm)
- Gói miễn phí của Workers giới hạn CPU time ở mức 10ms.
- Tuy nhiên, thời gian dùng cho các tác vụ I/O với dịch vụ bên ngoài như Fetch sẽ không bị tính.
- Phần lớn request không đòi hỏi CPU intensive thì chỉ cần 1~2ms là đủ.
8 bình luận
Bổ sung) Với những ai tò mò về nguyên lý hoạt động bên trong, mình khuyên nên đọc bài viết quá trình phát triển.
Trước hết... xin cổ vũ nhé. Cố lên!!!
honohay đấy..Tôi cũng đã thử dùng
honorồi.. làm rất tốt..Cảm ơn ạ haha, đúng là có vẻ quan trọng thật khi giữ thói quen tìm kiếm trước rồi mới tự nổi nóng và bắt tay làm.. haha
Trước đây dùng hono cũng khá tiện
Cái này cũng thú vị đấy
Cảm ơn nhé haha
Tôi cũng khuyên bạn nên tìm hiểu thử framework tương tự là https://hono.dev/.
Nhà phát triển thậm chí còn trực thuộc Cloudflare nữa.
Ồ... cảm ơn nhé haha
Đây là cách sử dụng worker cơ bản và các trường hợp ứng dụng.