首页 > 解决方案 > URI 图像 - 数据库列 v/s 类文件

问题描述

我正在开发一个基于某些逻辑在每个页面上填充不同图像的网络应用程序。有 20,000 张图像以 URI 形式存储在我的数据库中的只读表中。

如果我将 20,000 个 URI 值填充为静态类文件会更好吗?因此,与其将 uri 本身返回到在网页上显示图像的 AJAX 调用,我可以返回图像 id,并且可以从常量 JSON 变量中提取 uri。

我计划在 Google GCP 上部署我的网站,并且想知道是否会通过避免数据传输、从表中提取文本列以及可能的缓存来提高速度。

标签: databaseclassoptimizationyii2

解决方案


将图像数据存储在 JSON 文件中可以提高速度,除非您没有大文件。在 JSON 文件中搜索时,与数据库相比,速度会有所下降,因为为了获得所需的信息,您需要加载整个文件,然后使用循环进行迭代。这意味着您将失去性能。

将图像 url 存储在数据库中是更好的解决方案,因为与静态文件相比,数据越多,性能就越好。此外,您可以索引您的表,这也提高了速度。

所以我的建议,使用数据库而不是 JSON,因为你有更多的数据


推荐阅读