浏览器与服务器之间的数据传递——要帐的模式(cookie)


引用:在做性能测试之前需要知道什么
http://www.cnblogs.com/fnng/archive/2011/11/15/2250445.html




这个是我在给一朋友说浏览器与服务器之间交流时用到的例子,感觉比容易理解,所以拿来分享一下。
   假设:
  1.  A、B、C三个人。
  2.  C欠A钱(这里不考虑多少)
  3.  B是专门要账
   思考:
浏览器与服务器的信息传递次数:
   A对B说,C欠我钱,你帮我去要。B接到指令后就去找C要钱。
   B对C说,给我20块钱。
   C说,没有。
   B对C说,给我10块钱。
   C说,没有。
   B对C说,给我5块钱。
   .........
   最后,B回来对A说,哎呀妈呀,C那丫的忒抠门了,一分钱没有。
  对于A来讲,只是来说,它只是让B问C要钱,具体的B与C之间交互了几次,A是不知道的,它所知道的就是B返回给它的结果,C一分钱没有。
  
   浏览器与服务器传递数据的大小:
   还是上面的过程,A对B说,C欠我钱,你帮我去要。B接到指令后就去找C要钱。
   B对C说,给我20万块钱。
   C说,没问题,没支票,只有1元硬币。
   ..........
   B终于把钱拿回来给A。A很纳闷,怎么去了那么久,B委屈的说,丫的,C给我整了一堆硬币,太重了,路上走的慢,都快累死我了。
   对于A来讲,只是来说,它只是让B问C要钱,谁知道C给的是支票还是硬币。所以,B去要钱消耗的时间就很长。

   所以,要想提高浏览器对服务器的访问速度,应该减少数据传递次数与数据传递的大小。
这样就很自然的引出了浏览器的cookie

   A在C哪里存了5毛钱。
   A对B说,我在C哪里存了5毛钱,你去拿来我看看。B跑去问C要了5毛钱回来给A看。
  过了一会,A又对B说,我在C哪里存了5毛钱,你去拿来我看看。B跑去问C要了5毛钱回来给A看。
  过了一会,A又对B说,我在C哪里存了5毛钱,你去拿来我看看。这次C烦了,对B说,你把钱放自己口袋里吧,等A要的时候,你来问我5毛的人民币有没有改版,没有改版的话,你就直接把口袋里的5毛钱给A看就行了。
  

  在这里A就相当于我们用户,B相当于浏览器,C是服务器。 而cookie就是B的口袋,当然了cookie的用处还很多。比如我们登陆一个系统,提示我们是否保存密码(有的还有期限比如,一个星期或一个月),如果我们保存了,下次再访问登陆时,浏览器就已经帮我们填写好了账户密码或直接帮我们登陆。那这个账户密码就放在我们浏览器的cookie中。

   为什么要说上面的例子呢?因为我们大部分的一部分性能测试是基于B/S架构系统的,理解了浏览器与服务器之间的数据传递,有助于我们理解性能测试。

猜你喜欢

转载自124358959.iteye.com/blog/2210235
今日推荐