Sự khác biệt giữa mối quan hệ phiên và phiên dính?


Câu trả lời:


82

Tôi đã thấy những thuật ngữ này được sử dụng thay thế cho nhau, nhưng có nhiều cách khác nhau để thực hiện nó:

  1. Gửi một cookie trên phản hồi đầu tiên và sau đó tìm kiếm nó trên những phản hồi tiếp theo. Các cookie cho biết máy chủ thực sự để gửi đến.
    Thật tệ nếu bạn phải hỗ trợ các trình duyệt không có cookie
  2. Phân vùng dựa trên địa chỉ IP của người yêu cầu.
    Xấu nếu nó không tĩnh hoặc nếu nhiều người truy cập qua cùng một proxy.
  3. Nếu bạn xác thực người dùng, phân vùng dựa trên tên người dùng (nó phải là chế độ xác thực được hỗ trợ HTTP để thực hiện việc này).
  4. Đừng yêu cầu nhà nước.
    Để khách hàng truy cập bất kỳ máy chủ nào (gửi trạng thái cho khách hàng và yêu cầu họ gửi lại)
    Đây không phải là một phiên dính, đó là một cách để tránh phải làm điều đó.

Tôi nghi ngờ rằng dính có thể đề cập đến cách cookie và mối quan hệ đó có thể đề cập đến # 2 và # 3 trong một số bối cảnh, nhưng đó không phải là cách tôi đã thấy nó được sử dụng (hoặc tự sử dụng nó)


6
Nếu một yêu cầu bị ràng buộc với một máy chủ vật lý, điều gì xảy ra nếu máy chủ đó bị lỗi? Có một chiến lược để sử dụng cookie để chứa một máy chủ không thành công?
raffian

2
Nếu máy chủ bị lỗi, ứng dụng bị lỗi - có thể bạn cần phải đăng nhập lại. Có thể bạn đã mất dữ liệu. Thông thường, bộ cân bằng tải chọn một máy chủ khác và bạn tiếp tục, nhưng một số trạng thái bị mất. Nếu điều này là không thể chấp nhận, thì bạn cần phải đưa trạng thái đến DB hoặc các máy chủ khác càng nhanh càng tốt hoặc có một chiến lược phi trạng thái.
Lou Franco

FWIW Heroku gọi họ là ngược lại. Phiên Afifinity dựa trên cookie và nó không hỗ trợ dính. devcenter.heroku.com/articles/session-affinity
RandallB

39

Vì tôi luôn nghe các thuật ngữ được sử dụng trong kịch bản cân bằng tải, chúng có thể thay thế cho nhau. Cả hai đều có nghĩa là một khi phiên bắt đầu, cùng một máy chủ sẽ phục vụ tất cả các yêu cầu cho phiên đó.


21

Phiên dính có nghĩa là khi một yêu cầu đến một trang web từ một máy khách, tất cả các yêu cầu tiếp theo sẽ đến cùng một yêu cầu máy khách ban đầu của máy chủ được truy cập. Tôi tin rằng mối quan hệ phiên là một từ đồng nghĩa với phiên dính.


13

Họ giống nhau.

Cả hai đều có nghĩa là khi đến bộ cân bằng tải, yêu cầu sẽ được chuyển đến máy chủ phục vụ yêu cầu đầu tiên (và có phiên).


11

Phiên dính có nghĩa là định tuyến các yêu cầu của phiên cụ thể đến cùng một máy vật lý đã phục vụ yêu cầu đầu tiên cho phiên đó.


3

Bài viết này làm rõ câu hỏi cho tôi và thảo luận về các loại cân bằng tải khác.

Suy nghĩ của Dave: Sự kiên trì của bộ cân bằng tải (phiên dính)


6
Dường như không còn nữa, nhưng có một bản sao trong máy Wayback
Martin McN Khoa

12
Đây là lý do tại sao bạn không chỉ đăng liên kết mà không có lời giải thích
Juan Mendes

Nhận thấy rằng nội dung của liên kết trên (hiện không còn khả dụng) đã được chuyển sang archive.li/SG4fA Về cơ bản, nó liệt kê các loại tồn tại khác nhau được hỗ trợ bởi bộ cân bằng tải F5.
aveek

0

Chúng là từ đồng nghĩa. Không có sự khác biệt nào cả

Phiên dính / Phiên có mối quan hệ:

Mối quan hệ / Độ dính / Liên hệ giữa phiên người dùng và, máy chủ gửi yêu cầu người dùng được giữ lại.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.