Phần cứng và hệ điều hành
Hệ điều hành và phần cứng server thì không chỉ khác với server mà còn khác với cả fat client. Tính toán thin client chiếm hầu hết các lôgic ứng dụng. Ngoài ra các tài nguyên trên server thì rất cần thiết để thực thi ứng dụng và toàn bộ tài nguyên phần cứng là cần thiết có các tính toán thin client trên server.
Bảng 3.4: Tài nguyên phần cứng cho hai loại kịch bản
Kiến trúc thin client có rất ít các yêu cầu về bộ nhớ. Cùng với sự dịch chuyển các lôgic ứng dụng sang server trung tâm, một phần lôgic ứng dụng có thể chia sẻ cho nhiều nguời dùng.
Các dịch vụ
Điều khiển phiên và đồng bộ hoá: Ứng dụng chạy trên fat server phải hỗ trợ đa
người dùng (multi-user). Ứng dụng Fat client chạy trên môi trường độc lập. Chúng được truy cập bởi người dùng đơn lẻ tại các thời điểm. Trong khi đó các ứng dụng thin client được truy nhập đồng thời bởi một số người dùng. Trong kiến trúc thin client, một người dùng kết nối tới ứng dụng trên server từ xa. Miêu tả một phiên kết nối giữa client và ứng dụng trên server là trong vòng một khung thời gian. Một ứng dụng thin client có thể gửi dịch vụ của nó tới một số người dùng khác. Một người dùng truy cập ứng dụng phải được phép của đối tượng truy cập. Cơ chế thực thi các chức năng này được đề cập đến như là việc điều khiển phiên.
Đồng bộ hóa cũng là một mối quan tâm lớn trong ứng dụng thin client. Một ví dụ minh họa là một số ứng dụng fat client cho phép cấu hình bởi người dùng. Các cấu hình này thường được lưu trữ trong một file hay Windows registry. Có những cách tiếp cận về vấn đề điều khiển phiên và đông bộ hóa:
Hệ điều hành bảo vệ mỗi người dùng một cách tốt nhất. Nó sẽ cung cấp một mẫu riêng cho mỗi một ứng dụng hay yêu cầu dịch vụ. Cách tiếp cận này sẽ làm bớt đi sự khó khăn trong triển khai và phát triển ứng dụng. Người lập trình ứng dụng không quan tâm tới điều khiển phiên và đồng bộ hóa bởi vì hệ điều hành vận dụng tối đa các vấn đề này.
Khung làm việc trên ứng dụng client được dựa trên điều khiển phiên và đồng bộ hóa. Đây là những cách tiếp cận rất thuận lợi từ quan điểm phát triển như quan tâm tới xử lý tài nguyên hệ điều hành như file hay Windows registry.
Tính sẵn sàng cao: So sánh với kiến trúc truyền thống fat client/server, thì kiến
trúc thin client/server phụ thuộc hoàn toàn vào server. Các fat client thì hoạt động độc lập với server. Thậm chí ngay cả khi server bị hỏng, mà ứng dụng fat vẫn có thể chạy trên máy người dùng mặc dù bị hạn chế về chức năng.
Ngược lại thì thin client không thể thực hiện ứng dụng nếu như server không tồn tại hay hỏng bởi vì thin clients phụ thuộc vào server. Để đảm bảo về tính sẵn sàng cao, chúng ta cần hiểu rõ hơn về các khái niệm như sự dư thừa (redundancy) và tính chịu lỗi (failover).