zoukankan      html  css  js  c++  java
  • 谈谈MVC项目中的缓存功能设计的相关问题

      本文收集一些关于项目中为什么需要使用缓存功能,以及怎么使用等,在实际开发中对缓存的设计的考虑

      为什么需要讨论缓存呢?

      缓存是一个中大型系统所必须考虑的问题。为了避免每次请求都去访问后台的资源(例如数据库),我们一般会考虑将一些更新不是很频繁的,可以重用的数据,通过一定的方式临时地保存起来,后续的请求根据情况可以直接访问这些保存起来的数据。这种机制就是所谓的缓存机制。

      根据缓存的位置不同,可以区分为:

      1、客户端缓存(缓存在用户的客户端,例如浏览器)

      2、服务器断货(缓存在服务器中,可以缓存在内存中,也可以缓存在文件里,并且还可以进一步区分为本地缓存和分布式缓存两种)

    应该说,缓存的设计是一门较为复杂的学问,主要考虑的问题包括:

      1、要不要缓存?

      2、要缓存哪些数据?

      3、要缓存多少数据?

      4、要缓存多久?

      5、如何更新缓存(手动还是自动)

      6、将缓存放在哪里?

    本文就针对上面的问题考虑一下在实际项目中,如何使用缓存功能。

    常用的缓存功能支持表现在如下几个方面:

    1、可以直接在Controller 上面 定义输出缓存(页面缓存?控件缓存?)

    2、通过缓存策略 的方法,灵活定义缓存的设置(新功能)

    3、支持缓存依赖,以便当外部资源发生变化时得到通知,并且更新缓存

    4、支持使用缓存API, 还支持一些第三方的缓存方案(例如分布式缓存)

    对于常用的MVC 框架来说,假设有一个实体类 员工,我们可以对员工 增删改查

    1、使用输出缓存

    比如,我们有

    参考链接:谈谈MVC项目中的缓存功能设计的相关问题

  • 相关阅读:
    h264 流、帧结构
    H264 帧结构分析、帧判断
    sigaction
    sigaction 用法实例
    sigaction函数的使用
    linux c 之signal 和sigaction区别
    linux 信号signal和sigaction理解
    Hamcrest使用
    Junit4中的新断言assertThat的使用方法
    Hamcrest Tutorial
  • 原文地址:https://www.cnblogs.com/panie2015/p/6138702.html
Copyright © 2011-2022 走看看