Cookie、 Session和 Cache分析和总结.docx

  1. 1、本文档共2页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多

Cookie、Session、Cache

[前景提要]在做性能测试时用LoadRunner 自动录制角本时会出现记录Cookie的代码,在调整脚本要做关联而这通常必须要做关联的是一个叫作Sessionid的东东,而在Run脚本时又会有是否使用Cache的选项。让我对Cookie,Session和Cache充满的疑问。只有了解它们的工作机制和不同,我们才能判断出它们对于性能测试的影响。于是乎就有了下面这篇文章了~~~

一、中文译名

Cookie:小饼干?偶用尽所有的方法都没有找到其中文译名,就连偶一直非常信任的金山词霸对其也只是一段解释而非译名。(如果哪位高人能译出,请一定要告知金山公司让他们去更新词库)

Session:会话

Cache:高速缓冲存储器

二、工作机制

Cookie:采用的是客户端保存信息的方案。Session:采用服务器端保存信息的方案。

Cache:利用缓存SRAM 来“静态”的保存写入信息的方案。

如果上面的“专业”解释你还是不能明白,那我们就来“通俗”的解释它们吧!

Cookie客户端的机制就是用户访问站点时,Web服务器发送给该用户的不仅仅是一个页面,还有一个包含日期和时间的Cookie。用户的浏览器在获得页面的同时还得到了这个Cookie,并且将它保存在用户硬盘上的某个文件夹中。

Cookie是一段文本信息,你可以在你的电脑硬盘中找到许多这种文件,它们通常存放在C:\DocumentsandSettings用\户名\Cookies(早于Win2000以前的系统则会存放在c:\windows\Cookies)。

那么Web服务器通过Cookie究竟写下了些什么呢?它们用有什么作用呢?

这些就要看Web服务器的code如何写的了,不过你可以不必担心,服务器在Cookie里写下的信息只是为了你下次访问该站点时节约时间或提供一些特定的服务(绝非病毒或是其它可疑滴东东)。而且某些信息数据是加密的(例如密码等),当然也可以通过设置浏览器让它不记录下Cookie。

应用举例:一些要求用户登录的站点则可以通过Cookie来确定您是否已经登录过,这样您就不必每次都输入登录信息;一些站点的投票功能可以简单地利用Cookie作为布尔值,表示您的浏览器是否已经参与了投票,从而避免您重复投票。

Session服务端的机制是将用户的请求信息放在服务器端来保存信息,服务器使用一种类似于散列表的结构来保存信息。当程序需要为某个客户端的请求创建一个session的时候,服务器首先检查这个客户端的请求里是否已包含了一个session标识-称为sessionid,如果已包含一个sessionid则说明以前已经为此客户端创建过session,服务器就按照sessionid把这个session检索出来使用。

保存这个sessionid的方式可以采用cookie,这样在交互过程中浏览器可以自动的按照规则把这个标识发送给服务器。由于cookie可以被人为的禁止,必须有其他机制以便在cookie被禁止时仍然能够把sessionid传递回服务器。经常被使用的一种技术叫做URL重写,就是把sessionid直接附加在URL路径的后面。

这就好像是我们去某些商店去买东西,如果你已是该店的会员,那么商店会给你一张会员卡,下次你再次光顾这家店时只要出示你的会员卡就可以享受订制的服务了。

由于session只认id不认人,因此不同的浏览器,不同的窗口打开方式以及不同的cookie存储方式都

会对它的识别产生影响,这时就容易出现了我们常说的session混乱了。

还是以上面会员店为例,如忘带会员卡或是会员卡上的照片已经是你好几年前的样子店员无法辨认,

商店会重新给你办理一张会员卡。而此时其实你已经有两张会员卡了(sessioni)d正好这两张卡的服务范

围不一样(一张是普通卡,一张是VIP卡),当你再次去商店你任意的给了商店一张卡,这样你得到的服务有可能根本不是你想要的。

当然如果程序写的好是可以避免这种混乱的情况,有时还可以是跨应用程序的session共享。

Cache“静态”机制跟比起以上两种方式就特殊一些。为什么说它是“静态”,是因为它是有程序写入到SRAM里的,除非是重新写入数据或关闭电源,否则写入的数据是会保持不变的。

由于CPU的存取数据速度比从内存和硬盘中存取数据的速度要快得多,从内存和硬盘中存取数据时会使CPU等待,影响计算机的速度。SRAM的存取速度比其它内存和硬盘都要快,所以它被用作电脑的高速缓存。

有了高速缓存,可以先把数据预写到其中,需要时直

文档评论(0)

hao187 + 关注
官方认证
内容提供者

该用户很懒,什么也没介绍

认证主体武汉豪锦宏商务信息咨询服务有限公司
IP属地上海
统一社会信用代码/组织机构代码
91420100MA4F3KHG8Q

1亿VIP精品文档

相关文档