0

我正在使用acts_as_taggable gem,它有一个方法tag_list,它产生一个标签数组,但需要一个SQL 调用。我一直在研究优化,并且很好奇将这个列表作为数组存储在数据库中以防止在我只需要标签名称时需要 SQL 调用是否会很好。我知道数据库中的数组不是好的设计,但它最终会阻止查询?

每次显示程序(标记的内容)时,我都想显示标记名称列表。除了他们的名字,我什么都不需要。

我是否过于热衷于避免使用数据库,或者这对提高网站效率有很大帮助?

4

1 回答 1

1

是的,你太热心了。

如果您在数据库中放置一个数组 - 您仍然需要从数据库中获取它。这两个 sql 调用之间的时间差异可以忽略不计 - 数组反序列化可能会使它变慢。

另外 - Rails 会自动缓存 sql- 查询,所以如果它是相同的,它就不会费心进行 sql 调用。

如果您真的想加快速度 - 为什么不缓存包含标签的页面片段?

于 2013-06-11T03:23:01.323 回答