Theo kiến trúc ba tầng, một ứng dụng được chia thành ba tầng tách biệt nhau về mặt logic. Tầng đầu tiên là tầng trình diễn thường bao gồm các giao diện đồ họa. Tầng thứ hai, còn được gọi là tầng trung gian hay tầng tác nghiệp. | Theo kiến trúc ba tầng một ứng dụng được chia thành ba tầng tách biệt nhau về mặt logic. Tầng đầu tiên là tầng trình diễn thường bao gồm các giao diện đồ họa. Tầng thứ hai còn được gọi là tầng trung gian hay tầng tác nghiệp. Tầng thứ ba chứa dữ liệu cần cho ứng dụng. Tầng thứ ba về cơ bản là chương trình thực hiện các lời gọi hàm để tìm kiếm dữ liệu cần thiết. Tầng trình diễn nhận dữ liệu và định dạng nó để hiển thị. Sự tách biệt giữa chức năng xử lý với giao diện đã tạo nên sự linh hoạt cho việc thiết kế ứng dụng. Nhiều giao diện người dùng đưỢc xây dựng và triển khai mà không làm thay đổi logic ứng dụng. Tầng thứ ba chứa dữ liệu cần thiết cho ứng dụng. Dữ liệu này có thể bao gồm bất kỳ nguồn thông tin nào bao gồm cơ sở dữ liệu như Oracale SQL Server hoặc tài liệu XML. . Kiến trúc n-tầng Kiến trúc n-tầng được chia thành các tầng như sau Tầng giao diện người dùng quản lý tương tác của người dùng với ứng dụng Tầng logic trình diễn Xác định cách thức hiển thị giao diện người dùng và các yêu cầu của người dùng được quản lý như thế nào. Tầng logic tác nghiệp Mô hình hóa các quy tắc tác nghiệp Tầng các dịch vụ hạ tầng Cung cấp một chức năng bổ trợ cần thiết cho ứng dụng như các thành phần truyền thông điệp hỗ trợ giao tác . 3. Mô hình truyền tin socket Server Client Hình Sưu tầm bởi 122 Sưu tầm bởi http Khi lập trình ta cần quan tâm đến chế độ bị phong tỏa vì nó có thể dẫn đến tình huống một tiến trình nào đó sẽ rơi vào vòng lặp vô hạn của quá trình gửi hoặc nhận. Trong chương 1 chúng ta đã biết hai giao thức TCP và UDP là các giao thức tầng giao vận để truyền dữ liệu. Mỗi giao thức có những ưu và nhược điểm riêng. Chẳng hạn giao thức TCP có độ tin cậy truyền tin cao nhưng tốc độ truyền tin bị hạn chế do phải có giai đoạn thiết lập và giải phóng liên kết khi truyền tin khi gói tin có lỗi hay bị thất lạc thì giao thức TCP phải có trách nhiệm truyền lại .Ngược lại giao thức UDP có tốc độ truyền tin rất nhanh vì nó chỉ có một cơ chế truyền tin rất đơn