zoukankan      html  css  js  c++  java
  • 2013/11/22工作随笔-缓存是放在Model层还是放在Controller层

    web网站的典型代码框架就是MVC架构,Model层负责数据获取,Controller层负责逻辑控制,View层则负责展示。

    一般数据获取是去mysql中获取数据

    但是这里有个问题,我们不会每次请求都去mysql中获取,当并发量大的时候,我们希望mysql前面有层缓存做着。

    这层缓存可能是redis,memcache,File等,但是这个逻辑代码是放在Controller中好还是Model中好呢?

    放在Controller中:

    好处:可以单个Controller进行控制,每个controller中有各自对数据的键,以及缓存时间等。

    不好处:每个controller需要写一份几乎一模一样的代码,很繁琐。即使你写一个公共的方法,那也要在各个地方写上这个公共方法,属于重复工作了。

    放在Model中:

    好处:统一管理,复用性高,controller层不需要理会数据是从缓存中获取还是从mysql中获取,controller完全解放出来了。

    不好处:没法对单个controller进行控制了,controller失去了对缓存的控制权。

    观点:

    我强烈建议放在Model中,因为一般的web是不会controller对缓存这层做直接控制的。

  • 相关阅读:
    IOS整体代码复习一
    IOS复习UIActionSheet&UIAlertView
    IOS复习Plist文件的读取和写入
    IOS复习UITextfield&UILabel
    iOS中判断两个圆是否重叠
    iOS指针回调函数
    ios函数指针
    iOS分区
    ios指针第二天
    iOS指针第一天
  • 原文地址:https://www.cnblogs.com/yjf512/p/3438215.html
Copyright © 2011-2022 走看看