For investors
股价:
5.36 美元 %For investors
股价:
5.36 美元 %认真做教育 专心促就业
什么是会话?什么是会话保持?俗话说的好:知其然,才能知其所以然!所谓会话就是:session,主要存储在服务器端,用来识别用户的身份,在浏览器中向服务端发送请求的时候,不是http协议就是https协议,而两种协议在发送请求的时候,都是基于http协议,http协议又是无状态的,也就是stateless,在每次用户发送请求过去的时候,这都是一次新的连接,服务端是不会认识你是谁的。
那么怎么让服务端来识别客户端谁是谁呢?这个问题昆明达内小编认为这个问题值得大家考虑,其实也就有cookie,cookie好像没有中文翻译,cookie主要存储在客户端,一般是保存在某个特定路径的文件之中,从而在每次发送请求的时候,都会附加上这个cookie信息,服务端得到这个信息之后,就会判定你是哪个用户等信息,cookie主要就是找到服务端的session信息,从而用来追踪用户。
在生产环境中,只要涉及到负载均衡的地方,我们就需要考虑会话保持,否则假如一个应用程序是需要登录的,那么会频繁的需要登录。
负载均衡主要分为硬件负载均衡F5,CITRIX等,nginx负载均衡,apache负载均衡,无论是硬件负载均衡或者是软件负载均衡都会有一个会话保持的选项,在需要进行会话保持的时候,在每一个环节都需要进行会话保持,也就是硬件负载均衡要选择会话保持,在软件负载均衡也要进行会话保持。
生产环境使用的过时的(第一种):
在中间件的选择上面,apache和webspare在逐渐淘汰,在使用此种架构的时候,F5会使用会话保持,nginx也使用的是ip_hash进行会话保持。此种架构的最大的优势是部署比较简单,在进行部署的时候只要将java程序的war包放置到具体的目录即可进行部署,在进行自动化发布的时候,进行部署是非常简单的事,因为集群中各个机器是独立的,一个机器出问题,不会影响其他的机器;缺点就是在部署的时候,需要在每个主机上进行放置相同的war包,并且配置要保持一直;在需要会话保持的场景中,如果一台主机down,那么就会导致所有的会话丢失。
生产环境使用的过时的架构(第二种):
扫码加入0元7天试听课程报名!