Sticky session means that when a request comes into a site from a client all further requests go to the same server initial client request accessed. I believe that session affinity is a synonym for sticky session, but there are different ways of implementing it:
- Send a cookie on the first response and then look for it on subsequent ones. The cookie says which real server to send to. Bad if you have to support cookie-less browsers
- Partition based on the requester’s IP address. Bad if it isn’t static or if many come in through the same proxy.
- If you authenticate users, partition based on user name (it has to be an HTTP supported authentication mode to do this).
- Don’t require state. Let clients hit any server (send state to the client and have them send it back) This is not a sticky session, it’s a way to avoid having to do it.
I would suspect that sticky might refer to the cookie way, and that affinity might refer to #2 and #3 in some contexts, but that’s not how I have seen it used (or use it myself).