嵌入式资源与数据库性能

时间:2016-05-11 16:11:22

标签: c# performance embedded-resource globalization resx

我正在研究一个asp mvc应用程序的国际化,标准是要经过“嵌入式资源”从一个名字,一个人可以轻松拥有一个价值。现在我有以下约束:

    来自KEY-NAME的
  1. 我必须有一个VALUE(嵌入式资源(resx)做得好)
  2. 来自VALUE的
  3. 我必须关联KEY-NAME:解决方案存在,但在我看来它会影响性能。该文件未用于此类用途。否?
  4. 实际上,对于给定的KEY-NAME,我有多个VALUE 但至少4:我可以放一个JSON字符串或其他东西,但我想 它会影响性能,我觉得“resx”不是 就像那样使用。
  5. 由于我只对性能感兴趣,我应该继续使用“嵌入式资源”,还是可以在数据库中使用表,在用于选择的两列上有两个索引。 如果我选择使用数据库,是否需要使用“嵌入式资源”完成任何缓存管理,我必须重新实现。

    简要地说,我对使用resx文件或数据库表之间的性能差异一无所知。 为什么每个人都使用resx文件进行国际化?为什么不在数据库中的表? (我们的单一兴趣关注表现

    思考!

1 个答案:

答案 0 :(得分:1)

谈到绩效问题,有一条黄金法则 - 试试看。你永远无法提前预测出更好的表现,特别是在这样的情况下,差异可能很小,很难分辨。

您可以做的最好的事情是设置一些使用这两种方法的代码,并在现实条件下对其进行测试。这是唯一可靠的方式。

我的直觉是resx文件更快,因为数据库访问有其开销,而普通文件访问非常快,但正如我所说,唯一真正的方法来告诉你最好的情况是尝试它。

希望有所帮助。