Tôi muốn biết sự khác biệt giữa các phiên dính và không dính. Những gì tôi hiểu sau khi đọc từ internet:
Chú ý : chỉ có đối tượng phiên duy nhất sẽ ở đó.
Phiên không dính : đối tượng phiên cho mỗi nút máy chủ
Tôi muốn biết sự khác biệt giữa các phiên dính và không dính. Những gì tôi hiểu sau khi đọc từ internet:
Chú ý : chỉ có đối tượng phiên duy nhất sẽ ở đó.
Phiên không dính : đối tượng phiên cho mỗi nút máy chủ
Câu trả lời:
Khi trang web của bạn chỉ được phục vụ bởi một máy chủ web, đối với mỗi cặp máy khách-máy chủ, một đối tượng phiên được tạo và lưu lại trong bộ nhớ của máy chủ web. Tất cả các yêu cầu từ máy khách đến máy chủ web này và cập nhật đối tượng phiên này. Nếu một số dữ liệu cần được lưu trữ trong đối tượng phiên trong khoảng thời gian tương tác, thì nó được lưu trữ trong đối tượng phiên này và ở đó miễn là phiên tồn tại.
Tuy nhiên, nếu trang web của bạn được phục vụ bởi nhiều máy chủ web nằm phía sau bộ cân bằng tải, bộ cân bằng tải sẽ quyết định máy chủ web thực tế (vật lý) mà mỗi yêu cầu sẽ đi đến. Ví dụ: nếu có 3 máy chủ web A, B và C phía sau bộ cân bằng tải, có thể www.mywebsite.com/index.jsp được phục vụ từ máy chủ A, www.mywebsite.com/login.jsp được phục vụ từ máy chủ B và www.mywebsite.com/accoutdetails.php được phục vụ từ máy chủ C.
Bây giờ, nếu các yêu cầu được phục vụ từ (vật lý) 3 máy chủ khác nhau, mỗi máy chủ đã tạo một đối tượng phiên cho bạn và vì các đối tượng phiên này nằm trên ba hộp độc lập, không có cách nào trực tiếp để biết có gì trong đối tượng phiên của những thứ còn lại. Để đồng bộ hóa giữa các phiên máy chủ này, bạn có thể phải ghi / đọc dữ liệu phiên thành một lớp chung cho tất cả - như DB. Bây giờ viết và đọc dữ liệu đến / từ một db cho trường hợp sử dụng này có thể không phải là một ý tưởng tốt. Bây giờ, đây là vai trò của phiên dính .
Nếu bộ cân bằng tải được hướng dẫn sử dụng các phiên dính, tất cả các tương tác của bạn sẽ xảy ra với cùng một máy chủ vật lý, ngay cả khi các máy chủ khác có mặt. Do đó, đối tượng phiên của bạn sẽ giống nhau trong toàn bộ tương tác của bạn với trang web này.
Tóm lại, trong trường hợp Phiên dính, tất cả các yêu cầu của bạn sẽ được chuyển đến cùng một máy chủ web vật lý trong khi trong trường hợp trình cân bằng tải không dính có thể chọn bất kỳ máy chủ web nào để phục vụ yêu cầu của bạn.
Ví dụ: bạn có thể đọc về Bộ cân bằng tải đàn hồi của Amazon và các phiên dính tại đây: http://aws.typepad.com/aws/2010/04/new-elastic-load-balANCE-feature-sticky-simes.html
Tôi đã trả lời với một số chi tiết ở đây: https://stackoverflow.com/a/11045462/592477
Hoặc bạn có thể đọc nó ở đó ==>
Khi bạn sử dụng cân bằng tải, điều đó có nghĩa là bạn có một vài trường hợp tomcat và bạn cần chia tải.