缓存

* 使用缓存

 1、$("#pageing").html(result);   如果result代表一个视图view,视图中有<script src="~/Scripts/libs/jquery.unobtrusive-ajax.js"></script>,引用有js资源文件,那么在页面每次请求时都会清除缓存,请求服务器,在network中可以看到,耗时; 如果把后面的动态参数去掉,那么就会使用缓存,而不是每次刷新都重新请求服务器,解决方法:

  在jquery.min.js中找到_evalUrl: 添加cache:true, 这样就可以去掉动态参数时间轴了

2、Get请求而且cache:true ,允许缓存时,这样就不会在js资源文件后面自动添加时间轴了

1、http协议

彻底搞懂HTTP协议   https://blog.csdn.net/shiyongyue/article/details/77368539  

深入理解HTTP协议  https://blog.csdn.net/xinghuowuzhao/article/details/79308604

* 区别

https://www.cnblogs.com/andy-zhou/p/5360107.html#_caption_0

1、cookie

   - cookie是由服务器端发送给客户端的,

2、session

 - session 管理用户会话状态

1、什么是状态管理?

  指对同一页或不同页的多个请求维护状态和页信息的过程 ;

  1.1、为什么要进行转态管理?

  Web页是无状态的,不保存任何用户请求信息,而且到服务器的每一往返过程都将销毁并重新创建页,所以超出单个页的生命周期之后,页信息将不存在。 

2、状态管理的作用:

指示用户信息

使得页与页之间、请求与请求之间能够共享信息

更为快速的数据存储和读取

  • 从一个客户到达某个网页开始,到其离开该网页为止的这段时间内,服务器会为该用户分配一个Session,以保存该用户会话时所需要的信息
  • 当用户在页面之间切换时,存储在Session对象中的变量不会被清除,当客户访问网页时,这些变量会一直存在
  • Session状态使用的范围:使用同一个客户端(浏览器实例)访问同一个应用程序的所有页面。
  • 虽然Session的大小没有限制,但是我们千万不能滥用Session。推荐在Session中存储少于100K的数据。
  • Session是在用户第一次访问网站的时候创建的,那么Session是什么时候销毁的呢?

      默认情况下,Session的超时时间(Timeout)是20分钟,用户保持连续20分钟不访问网站,则Session被收回,如果在这20分钟内用户又访问了一次页面,那么20分钟重新计时

3、mode转态模式

对于会话状态存储器,ASP.NET提供了3个选项,通过模式设置和相关的属性对其进行配置:=”[Off|InProc|StateServer|SQLServer] ”

  •InProc(默认):Session存储在IIS进程中(Web服务器内存)
  •StateServer:Session存储在独立的Windows服务进程中(可以不是Web服务器)
  •SqlServer:Session存储在SqlServer数据库的表中(SqlServer服务器)

      InProc模式速度比较快,但是每次重新启动IIS都会导致Session丢失。利用后两种模式,只能保存序列化的对象,但我们可以把Session从Web服务器中独立出来,从而减轻Web服务器的压力,同时减少Session丢失的概率。 三种模式的Session比较

3、cache

原文地址:https://www.cnblogs.com/SmileSunday/p/9259331.html