一、概要:
现如今随着Web网络继续为企业提供一种经济的销售他们商品和服务的方式,我们仍将会看到更多基于Web应用的投资。Web的一个内部特征,和当我们设计、维护其web基础架构时企业所面临的一个最常见的技术问题,就是用户浏览器和web服务器间的一种无状态交互。这种无状态交互对于随机访问页面或点击超链接时可能是非常好的,然而,就像在线银行和电子商务一样还是有许多web应用需要了解在网站上用户的交互和当前状态。无法妥善地进行存储和访问安全认证,或添加、删除的列可能被放置在虚拟购物车里,可能导致灾难性的后果。
就像我们所知道的cookie一样,然而,Cookie是Web服务器发送给Web浏览器的体积很小的纯文本信息,以文本文件的形式存放在用户的计算机中,这些Cookie一般用于保存用户的访问状态,当用户再次访问同一个网站时会将这些Cookie信息发送回服务器,使得服务器能够恢复用户上一次的访问状态。使用Cookie的根本目的是为了在用户访问期间实现不同页面之间的数据传输,以解决HTTP无状态的问题。Cookie技术能够增强网站的服务功能,为用户带来方便。但是Cookie还有许多限制和不足,针对Cookie技术的局限性,就提出了会话(Session)的概念,并将会话技术集成在语言中。会话是指用户访问Web服务器期间存放在Web服务器上的所有与用户访问状态有关的信息。每次新创建的会话都有一个唯一的标识串,称为会话ID,会话ID被保存在Web服务器中,其它会话信息都在会话ID的索引下进行保存和读取。一次会话从创建到被删除的时间称为会话生存期,会话生存期的长短由会话管理机制决定。Cookie与会话的不同之处在于:Cookie将用户访问的状态信息通过Web浏览器存放在用户计算机中,而会话通过会话管理机制存放在Web服务器中。
在本节中,我们将探讨MySQL和MySQL集群如何使用一种经济有效、高性能、开源的以数据为中心的会话(session)管理解决方案。