代码之家  ›  专栏  ›  技术社区  ›  Tom

哪个更好?额外的数据库调用或生成的PHP文件?

  •  1
  • Tom  · 技术社区  · 15 年前

    我想在我的所有页面中添加一些与字符串键相关的静态信息。各个PHP页面使用一些由查询字符串过滤的信息。添加这些信息的更好方法是什么?生成一个带有关联数组的100K(如果以后需要更多信息,则更大)PHP文件,或者添加一个带有此信息的其他DB表并查询它?

    如果有大量的页面,哪一个成本更低?加载一个PHP文件或进行额外的db调用?

    4 回复  |  直到 15 年前
        1
  •  2
  •   Dennis Haarbrink    15 年前

    除非它确实是一个瓶颈(包括php文件或查询数据库),否则您应该选择最易于维护的选项。

    我猜这是第二种选择。将其存储在数据库中。

        2
  •  0
  •   RC.    15 年前

    将其存储在数据库中是一个更好的计划。有了数据库,您可以提供更好的数据约束,更容易与其他数据交叉引用,并创建强大的关系。在这个时候你可能需要也可能不需要,但最终这是一个更加灵活的解决方案。

    数据的用途是什么?我想知道你需要的数据是否可以存储在一个会话变量/cookie中,一旦它从数据库中提取出来,这将允许你不必在每个页面的呈现上查询数据库。

        3
  •  0
  •   rojoca    15 年前

    如果您要利用一个PHP文件,那么利用APC或其他操作码缓存将减轻性能问题,因为PHP文件只会在每次文件更改时加载。

    在确保了易维护性和可工作的应用程序之后,如果您需要性能提升,那么普遍接受的做法是将此静态数据缓存在内存中的键/值存储中,例如 memcached . 这将使您能够快速访问静态值(对于大多数请求)。

        4
  •  -2
  •   Your Common Sense    15 年前

    我不认为这些信息是“静态的”。
    对我来说,这只是一个从数据库中获取dome信息的例行调用,还有一些用于组装整个页面的调用。我错过了什么?

    我同意丹尼斯的观点,所有的优化都应该基于真实的需求和分析。否则它的效果可能相反。

    如果您想利用一些缓存,请考虑为整个页面实现条件GET。

    推荐文章