Với mong muốn các bạn học viên sẽ được “update” công nghệ mới liên tục trong suốt thời gian học, Aptech D5 Bình Thạnh – Aptech Nguyễn Kiệm liên tục tổ chức các chuỗi Talkshow/Workshop công nghệ để bổ trợ thêm kiến thức chuyên ngành cho các bạn học viên.
Vào ngày 22/07/2023 vừa qua, Workshop Phát triển ứng dụng Microservices với kỹ sư phần mềm tại cơ sở Aptech D5 Bình Thạnh. Workshop với sự dẫn dắt chính của anh Võ Thịnh Chuẩn – Solution Architect tại Công ty Smart Loyalty, cùng sự tham gia của thầy Nguyễn Đức Huy – Phó Giám đốc Đào tạo Aptech.
Trong lập trình web hiện nay, hai loại kiến trúc web mà chúng ta thường áp dụng ứng dụng của mình là kiến trúc 1 khối (Monolithic architecture) và kiến trúc microservice (Microservice architecture).
1. Kiến trúc một khối (Monolithic)
Kiến trúc một khối là một kiến trúc của một ứng dụng phần mềm trong đó tất cả các thành phần được tích hợp chặt chẽ và triển khai thành một khối duy nhất. Các thành phần bao gồm giao diện người dùng, logic nghiệp vụ và lớp truy cập cơ sở dữ liệu, tất cả chúng dùng chung một mã code và giao tiếp với nhau bằng cách gọi trực tiếp.
2. Kiến trúc Microservice
Microservice, như tên của nó, đó chính là chia một khối phần mềm thành các service nhỏ hơn, có thể triển khai trên các server khác nhau. Mỗi service sẽ xử lý từng phần công việc và được kết nối với nhau thông qua các giao thức khác nhau, như http, SOA, socket, message queue (Active MQ, Kafka,…) để truyền tải dữ liệu.
Ưu điểm của kiến trúc microservice
- Linh hoạt trong phát triển, triển khai và vận hành (process, technical, deployment,…)
- Khả năng chịu lỗi tốt (mỗi service độc lập với nhau)
- Khả năng chịu tải/chi phí tốt hơn (scale từng service riêng lẻ theo từng mục tiêu nhất định)
- Performance tổng thể (team member, system) sẽ tốt hơn => phụ thuộc vào cách thiết kế và vận hành của team
Nhược điểm của kiến trúc microservice
- Phức tạp (quản lý – kiểm soát – vận hành service, handler error, debug, tính đúng đắn của dữ liệu,…)
- Khó khăn trong giao tiếp giữa các service (Restful, Grpc, Ws,…)
- Độ trễ trong giao tiếp giữa các service cao hơn.
3. Khi nào dùng kiến trúc microservice và monolithic
Đối với Monolithic:
- Độ phức tạp không cao
- Chi phí phát triển và vận hành thấp
- Technical stack của team không đa dạng
- Phù hợp với các ứng dụng vừa và nhỏ, cần phát triển nhanh
Đối với Microservice:
- Khi các yêu cầu nghiệp vụ phức tạp, thường xuyên mở rộng và có thể phân tách thành từng chức năng riêng lẻ.
- Ứng dụng ưu tiên tính ổn định và linh hoạt (khả năng mở rộng, thay đổi công nghệ)
- Phù hợp với các ứng dụng lớn cũng như các công ty lớn (chi phí, nhân lực,…)
Tại Workshop lần này, các bạn còn được hướng dẫn trực tiếp triển khai ứng dụng Store Management (quản lý cửa hàng) theo 2 mô hình monolithic và mô hình Microservice. Kết thúc Workshop, các bạn đã có thêm được cho mình những kiến thức tổng quan về ứng dụng Microservice. Để có thể nắm rõ hơn quy trình hoạt động cũng như ứng dụng công nghệ này vào các dự án sắp tới.
Xem thêm hình ảnh sự kiện tại đây.
Sắp tới đây Aptech tiếp tục có thêm những series Workshop/Talkshow công nghệ để cập nhật những kiến thức mới nhất cho các bạn. Theo dõi các kênh thông tin của Aptech để không bỏ lỡ nhé !!!
Có mặt tại Việt Nam từ năm 1999, Aptech đã và đang đào tạo biết bao thế hệ Lập trình viên tài năng cho ngành CNTT tại Việt Nam. Aptech là địa chỉ học tập uy tín cho các bạn trẻ Việt Nam, từ các bạn học sinh THPT, sinh viên cho đến người đi làm ở tất cả các ngành. Với phương pháp đào tạo từ cơ bản đến nâng cao, Aptech hiện đang đào tạo 2 chuyên ngành chính là Công nghệ phần mềm và Khoa học dữ liệu – Trí tuệ nhân tạo. Sau khi tốt nghiệp, các bạn có thể tự tin làm việc tại nhiều vị trí như: Kỹ sư Lập trình Web – App – Game – Software, chuyên viên Phân Tích Dữ liệu (Data Analyst), chuyên gia Khoa học dữ liệu (Data Scientist),… Xem thông tin chi tiết về chương trình tuyển sinh CNTT của Aptech tại đây: Chuyên ngành Công nghệ phần mềm: https://aptechvietnam.com.vn/laptrinhsunghiep/ Chuyên ngành Khoa học máy tính: https://aptechvietnam.com.vn/khoahocdatascience-ai/ |