Client Server Architecture – Kiến trúc client-server
November 3, 2020Mô hình Client server là một mô hình nổi tiếng trên mạng máy tính, phổ biến và được áp dụng rộng rãi ở trên các trang Web hiện nay.
Ý tưởng của mô hình này như sau: Client (máy khách) sẽ gửi yêu cầu (request) đến Server (máy chủ, cung ứng các dịch vụ cho các máy khách). Server sẽ xử lý dữ liệu và gửi kết quả về cho Client.
– Máy chủ: Đây thường là một mánh tính đặc biệt có tốc độ xử lý lớn và được dùng để phục vụ việc chia sẻ tài nguyên như file ảnh, file HTML, dữ liệu, máy in… cho nhiều máy khách.
– Máy khách: Là cá máy tính nhỏ như desktop hay laptop. Trong mô hình này các máy khách sẽ gửi yêu cầu tới máy chủ để máy chủ thực hiện một nhiệm vụ nào đó như lấy dữ liệu từ database, in ấn, gửi email…
Việc giao tiếp giữa Client với Server phải dựa trên các giao thức chuẩn. Các giao thức chuẩn được sử dụng phổ biến nhất hiện nay là: giao thức TCP/IP, giao thức SNA của IBM, OSI, ISDN, X.25 hay giao thức LAN-to-LAN NetBIOS
Mô hình web client-server là một mô hình nổi tiếng trong mạng máy tính, được áp dụng rất rộng rãi và là mô hình của mọi trang web hiện có. Một mô hình ngược lại là mô hình master-slaver, trong đó máy chủ (đóng vai trò ông chủ) sẽ gửi dữ liệu đến máy con (đóng vai trò nô lệ) bất kể máy con có cần hay không.
Client/Server là mô hình tổng quát nhất, trên thực tế thì một server có thể được nối tới nhiều server khác nhằm làm việc hiệu quả và nhanh hơn. Khi nhận được 1 yêu cầu từ client, server này có thể gửi tiếp yêu cầu vừa nhận được cho server khác ví dụ như database server vì bản thân nó không thể xử lý yêu cầu này được. Máy server có thể thi hành các nhiệm vụ đơn giản hoặc phức tạp.
Ví dụ :
Mail Server : Ở bên phía Client, người dùng soạn thảo Email và sẽ gửi đến Mail Server, phía bên Mail Server sẽ tiếp nhận và lưu trữ, tìm kiếm địa chỉ của mail được gửi đến và gửi đi.
Web Server : Lưu trữ các trang Web. khi người dùng ở phía máy Client nhập địa chỉ của trang web, Client sẽ gửi yêu cầu đến máy chủ Web và máy chủ Web sẽ gửi toàn bộ nội dung của trang web về cho phía Client.
Ưu điểm:
– Client server có khả năng chống quá tải mạng
– Client server đảm bảo toàn vẹn dữ liệu khi có sự cố xảy ra
– Dễ dàng mở rộng hệ thống mạng
– Chỉ cần chung định dạng giao tiếp mà không cần chung nền tảng là có thể hoạt động được
– Client server cho phép tích hợp các kỹ thuật hiện đại như GIS, mô hình thiết kế hướng đối tượng,…
– Với mô hình Client server, người dùng có thể truy cập dữ liệu từ xa, thực hiện các thao tác gửi, nhận file hay tìm kiếm thông tin đơn giản
Nhược điểm:
– Cần bảo trì, bảo dưỡng server thường xuyên.
– Khả năng bảo mật thông tin mạng là một hạn chế nữa của Client server.
Bởi vì, nguyên lý hoạt động của Client server là trao đổi dữ liệu giữa server và client ở 2 khu vực địa lý khác nhau. Trong quá trình trao đổi dữ liệu, khả năng thông tin mạng bị lộ là điều dễ xảy ra.
[…] ← Previous […]
[…] Client Server Architecture – Kiến trúc client-server […]
[…] – Security test [Real Time Communication] – SignalR + https://blog.ntechdevelopers.com/client-server-architecture-kien-truc-client-server/ – Web Sockets [Api Documentation] – Open Api – Async Api – Swagger – […]
[…] Trước khi nói đến middlewares là gì mình đề cập qua một chút về kiến trúc client – server. Đây là một kiến trúc được bắt nguồn từ mạng máy tính sau lan rộng sang phần mềm, đặc biệt là web. Về bản chất nó là một máy client giao tiếp với một máy server để lấy thông tin. Website hiện này cũng dưới dạng hình thức như vậy, trình duyệt web gọi tới máy chủ để lấy dữ liệu và hiển thị dữ liệu đó cho người dùng. Để hiểu thêm về mô hình này bạn có thể đọc lại bài viết trước đó của mình, “Client Server Architecture – Kiến trúc client-server“ […]