【问题标题】:PHP: Hold in memory? or query DB?PHP:保留在内存中?或查询数据库?
【发布时间】:2015-05-11 03:35:50
【问题描述】:

这是一个设计问题。我有一个不变的查找表。它将有大约 1000 行。它可能每隔几个月更改一次。

我是否应该将它保存在内存中,让每个 PHP 应用程序实例在加载时从数据库中“加载一次”并从内存中提供服务?还是我应该每次使用数据库时都查询它?

如果使用这种查找是“每秒一百万次交易”的事情,那么它在内存中就很简单了。但事实并非如此——这可能每秒只被调用几次,可能是 5 或 6 次......但现在不会了。

你会怎么做?

【问题讨论】:

  • 'load it up once' from the DB when it load and serve it from memory这对lookup table that doesn't change更有意义
  • 考虑多 Web 服务器实例 + 负载均衡器架构——将这些信息加载到 Redis 或 memcached 之类的东西中并将所有 Web 服务器实例指向那里是否有意义?
  • 我仍然希望在不更改 PHP 代码的情况下偶尔更改此数据。
  • 听起来像是一份工作:php.net/manual/en/book.memcache.php
  • 您可以尝试一些缓存机制,如 Redis 或 Memcached,它们“加载一次数据并从内存中提供数据”。

标签: php


【解决方案1】:

我希望这个链接对你有用 它的工作方式与 memcached 不同;在 memcached 中,您可以访问各种语言(c、python 等)的数据,而 APC 仅适用于 PHP。

How can I store data in RAM memory using PHP?

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2019-12-05
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-08-06
    • 1970-01-01
    相关资源
    最近更新 更多