【问题标题】:Where do I store small data items on a web site?我在网站上的什么位置存储小数据项?
【发布时间】:2011-07-22 14:37:32
【问题描述】:

我正在使用 asp.net mvc3 编写一个网站,并且在我的网站中我想要一个用于设置队列容量的页面。此页面在一些用户之间共享。所以我需要将这些数据保存在所有用户都可以访问的地方。我不喜欢将此值存储在数据库中,因为它只是一个数字,我更喜欢保存在另一个地方。
我也尝试存储在文件中,但这也不是一个好主意,因为它需要权限设置。
除了服务器上的文件,还有其他地方可以让我这样做吗?

【问题讨论】:

  • 在数据库中存储数字有问题吗?
  • 如果在应用程序的整个生命周期中拥有该值就足够了,您可以使用具有默认值的静态变量。对于队列长度,这可能就足够了,但我不知道你到底想要达到什么目的。
  • 它是在运行时通过逻辑改变的动态值,还是静态的,一旦应用程序启动就永远不会改变?

标签: asp.net asp.net-mvc


【解决方案1】:

如果你想让它留在某个地方,你将不得不持久化它,无论是平面文件还是数据库或类似的东西。

除此之外,您可以将值缓存在内存中(会话、静态或其他缓存方案),这样您就不会经常从重量级存储中读取它。例如,您可以在应用程序启动时读取它,然后只使用内存中的变量(当它更改时将其写回磁盘)。

【讨论】:

    【解决方案2】:

    只需创建一个包含两列 KeyValue 的表 Settings,并将其重复用于您将来可能需要的其他设置。

    您的数据库是存储数据的好地方 - 即。数据库备份也会备份您的设置。

    替代方法是使用配置管理器。

    【讨论】:

      【解决方案3】:

      在这种情况下,NoSQL 是一个很好的选择,我认为对于这种特殊情况,Redis 更合适,请查看 NuGet 的 Booksleeve

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2013-12-22
        • 2011-04-06
        • 2013-06-21
        • 1970-01-01
        • 1970-01-01
        • 2011-09-07
        • 2017-01-07
        相关资源
        最近更新 更多