Thực trạng ứng dụng kiến trúc microservices hiện nay

Một phần của tài liệu (LUẬN văn THẠC sĩ) phát triển phần mềm dựa trên microservices (Trang 21 - 24)

Chương 1. Tổng quan về kiến trúc microservices

1.6. Thực trạng ứng dụng kiến trúc microservices hiện nay

Kiến trúc microservices đang là một trong những chủ đề hấp dẫn nhất trong lĩnh vực công nghệ phần mềm hiện nay. Tuy nó còn khá mới nhưng kiến trúc microservices đã được nhiều các công ty lớn đang áp dụng cho việc xây dựng hệ thống, điển hình như Netflix, Ebay, Amazon, Twitter, Paypal, Gilt, Soundcloud

Nền tảng ban đầu được lựa chọn để các nhà phát triển tại Amazone xây dựng hệ thống là kiến trúc monolithic trên ngôn ngữ C++ nhưng cùng với sự phát triển ngày một phình to ra của hệ thống, Amazone quyết định đổi sang sử dụng

Java và Scala, nhưng điều đó cũng không cải thiện được nhiều. Cuối cùng Amazone sử dụng microservices cho hệ thống của họ. Theo thống kê mới nhất từ Amazone thì hiện nay đang có 100-150 microservice đang được sử dụng trong hệ thống của họ (8).

Twitter là một mạng xã hội lớn có số lượng người dùng đứng thứ hai trên thế giới2, ban đầu Twitter được Jack Dorsey và các đồng nghiệp của mình lựa chọn monolithic và Rails để xây dựng và phát triển hệ thống. Cũng giống như Amazone, khi số lượng người dùng Twitter tăng quá nhanh, Twitter chuyển qua sử dụng JS/Rails/Scala, nhưng càng ngày càng xuất hiện nhiều vấn đề trong hệ thống của Twitter. Việc số lượng người dùng tăng nhanh, công nghệ đòi hỏi cần được nâng cấp, thay đổi, Twitter cần một công nghệ mới để giải quyết các khó khăn của họ và kiến trúc microservices đã được mạng xã hội lớn thứ hai trên thế giới này lựa chọn. Hiện tại Twitter vẫn đang trong quá trình phát triển hệ thống dựa trên kiến trúc microservices.

Netflix có lẽ là công ty sớm nhất sử dụng kiến trúc microservices cho hệ thống của mình (2011). Hàng năm có hàng triệu người dùng truy cập vào hệ thống của Netflix để xem các video, truyền hình trực tuyến của họ. Vì vậy hệ thống của Netflix phải đảm bảo xử lý hàng triệu truy vấn xem, tạo video mỗi ngày và kiến trúc monolithic hiện tại của Netflix đã không còn phù hợp nữa.

Reed Hastings và các kỹ sư tại Netflix đã có một quyết định đột phá là phải tái cấu trúc lại kiến trúc của họ. Kế hoạch của họ là phải tạo ra các dịch vụ riêng biệt để xử lý, thu thập và cung cấp các dữ liệu cho các truy vấn của người dùng để thời gian đáp ứng cho người dùng là nhanh nhất. Ngoài ra khi chia nhỏ thành các dịch vụ như vậy thì các chức năng của hệ thống sẽ dễ dàng được phát triển, kiểm thử, gỡ lỗi và triển khai. Tính đến nay Netflix đã có hơn 600 microservice chạy trong hệ thống microservices của họ (9).

Từ những ví dụ về phát triển microservices tại các công ty hàng đầu về công nghệ ở trên chúng ta có thể thấy kiến trúc microservices đang là kiểu kiến trúc mà các nhà phát triển phần mềm đang hướng tới. Hiện nay kiến trúc microservices cũng đang là kiểu kiến trúc dành được nhiều sự chú ý và quan tâm của các nhà nghiên cứu và phát triển phần mềm, nó cũng đang được dự đoán là kiểu kiến trúc dành cho tương lai khi mà các sản phẩm phầm mềm hướng dịch vụ đang ngày càng phổ biến.

Ở chương 1 tôi đã trình bày các kiến thức cơ bản về kiến trúc microservices, các đặc điểm, mẫu thiết kế và lợi ích nó mang lại cho ngành phát triển phần

2http://www.statista.com/statistics/272014/global-social-networks-ranked-by-number-of-users/

(LUAN.van.THAC.si).phat.trien.phan.mem.dua.tren.microservices(LUAN.van.THAC.si).phat.trien.phan.mem.dua.tren.microservices(LUAN.van.THAC.si).phat.trien.phan.mem.dua.tren.microservices(LUAN.van.THAC.si).phat.trien.phan.mem.dua.tren.microservices(LUAN.van.THAC.si).phat.trien.phan.mem.dua.tren.microservices(LUAN.van.THAC.si).phat.trien.phan.mem.dua.tren.microservices(LUAN.van.THAC.si).phat.trien.phan.mem.dua.tren.microservices(LUAN.van.THAC.si).phat.trien.phan.mem.dua.tren.microservices

mềm, cũng như tình hình áp dụng microservices hiện nay trong việc xây dựng và phát triển phần mềm. Trong chương tiếp theo tôi sẽ trình bày quá trình xây dựng một hệ thống trên microservices và áp dụng vào xây dựng ứng dụng SOML.

Một phần của tài liệu (LUẬN văn THẠC sĩ) phát triển phần mềm dựa trên microservices (Trang 21 - 24)

Tải bản đầy đủ (PDF)

(55 trang)