12/08/2018, 18:24

Xin chào Serverless, chúng ta làm quen với nhau nhé?

Xin chào tất cả các bạn, hôm nay chúng ta sẽ cùng nhau đi tìm hiểu về khái niệm "Không Máy Chủ" Serverless là gì nhé. Những nội dung có trong bài này: 1. Giới thiệu Serverless Computing và Serverless Architectures. 2. Ưu - Nhược điểm của Serverless. 3. Những nhà cung cấp ...

Xin chào tất cả các bạn, hôm nay chúng ta sẽ cùng nhau đi tìm hiểu về khái niệm "Không Máy Chủ" Serverless là gì nhé.

Những nội dung có trong bài này:

1. Giới thiệu Serverless Computing và Serverless Architectures.

2. Ưu - Nhược điểm của Serverless.

3. Những nhà cung cấp dịch vụ Serverless Cloud Computing nổi tiếng.

– Bài viết cũng đồng thời được Post trên trang blog cá nhân: Series Amazon AWS

1. Giới thiệu Serverless Computing và Serverless Architectures

" Serverless Computing là một mô hình thực thi điện toán đám mây mà trong đó các nhà cung cấp đám mây sẽ quản lý động việc phân bổ tài nguyên máy, giá cả của mô hình này dựa trên số lượng tài nguyên thực tế mà ứng dụng sử dụng thay vì phải trả trước một khoản nhất định trong một khoảng thời gian. Đoạn này mình đọc hiểu từ Wikipedia."

Ngoài ra, một Serverless Computing cũng có thể được hiểu là cách mà chúng ta xây dựng lên các ứng dụng khả dụng, sẵn sàng lắng nghe và phản ứng lại với các sự kiện được đưa ra bởi các dịch vụ (services).

"Còn Serverless Architectures là một kiến trúc được xây dựng dựa trên ý tưởng của Serverless Computing, nói chung 2 thằng này chúng ta có thể và nên gộp lại là một cho đỡ hại não, chỉ một từ thôi: Serverless."

Đi vào ví dụ thực tế: Serverless được dùng để chỉ hai khái niệm mô hình dịch vụ khác nhau đó là:

  • BaaS - Backend as a Service:

"Ở mô hình này, phần lớn code logic của chúng ta sẽ chuyển về xử lý ở phía Frontend. Còn Backend thì sử dụng các API có sẵn của bên thứ ba."

Ví dụ như bạn muốn viết một ứng dụng dự báo thời tiết, nhưng bạn lại không có những dụng cụ cần thiết như là máy đo đạc, vệ tinh...để lấy dữ liệu rồi viết code xử lý chúng. Lúc này bạn sẽ cần lấy dữ liệu thời tiết từ các API được Public bởi các nhà cung cấp bên thứ ba như Google Weather API chẳng hạn. Và từ những dữ liệu đó, bạn sẽ xử lý logic hiển thị...vv ở phía Frontend.

  • FaaS - Function as a Service:

Mô hình này thì chúng ta lại không sử dụng các API có sẵn từ bên thứ ba như ở BaaS, mà chúng ta sẽ tự viết các API cho mục đích của mình, và triển khai chúng lên Server. Nhưng thay vì triển khai theo mô hình client-server thông thường là phải thuê Server rồi deploy code lên đó, thì chúng ta lại deploy code dưới dạng các Function (Function as a Service) và các function này có thể gọi dưới dạng RestAPI.

Với mô hình FaaS này, chúng ta sẽ chỉ cần viết code thôi, không cần quan tâm việc server và code được lưu trữ ở đâu, các nhà cung cấp Cloud Computing bên thứ ba sẽ tự quản lý phần này.

Một điểm nữa là chúng ta chỉ phải trả tiền dựa trên tài nguyên thực tế sử dụng, chứ không phải trả trước một khoản tiền cố định cho một khoảng thời gian cụ thể như việc thuê server ở mô hình client-server mà mình nói ở trên.

Đến đây chắc các bạn cũng có thể hình dung ra được rồi, Serverless - dịch ra tiếng Việt là "Không có máy chủ", nhưng thực chất thì nó không đúng theo nghĩa đen đâu nhé, không có máy chủ thì làm sao mà chạy được ứng dụng             </div>
            
            <div class=

0