Database i18n性能:resx与数据库?

Database i18n性能:resx与数据库?,database,performance,asp.net-mvc-3,internationalization,resx,Database,Performance,Asp.net Mvc 3,Internationalization,Resx,问题: 我在问自己是否应该使用.resx文件或数据库来本地化我的ASP.NET MVC 3应用程序 无论如何,我都使用数据库,因此数据访问层不需要额外的工作 我知道我两者都能做到,但我有点担心表现 用额外的翻译工作加载数据库是一个好主意,而这可以由Web服务器完成吗 还是读取.resx文件比使用数据库慢得多 另外,在我看来,.resx文件方式有点不灵活。 您可以假设db和web服务器在同一台机器上运行。 您还可以假设Linux系统使用nginx作为Web服务器,mono通过fastcgi和经过调

问题:

我在问自己是否应该使用.resx文件或数据库来本地化我的ASP.NET MVC 3应用程序

无论如何,我都使用数据库,因此数据访问层不需要额外的工作

我知道我两者都能做到,但我有点担心表现

用额外的翻译工作加载数据库是一个好主意,而这可以由Web服务器完成吗
还是读取.resx文件比使用数据库慢得多

另外,在我看来,.resx文件方式有点不灵活。
您可以假设db和web服务器在同一台机器上运行。

您还可以假设Linux系统使用nginx作为Web服务器,mono通过fastcgi和经过调优的PostGreSQL服务器。

创建一个将资源从数据库中取出并生成resx文件的应用程序不需要花费太多精力。从而为您提供了数据库的灵活性和易维护性以及resx的性能

我最近在我的MVC网站上使用了这项技术,这里有一些关于这个主题的问题,其中一些问题我也用解决方案回答了自己


创建一个将资源从数据库中取出并生成resx文件的应用程序并不需要太多努力。从而为您提供了数据库的灵活性和易维护性以及resx的性能

我最近在我的MVC网站上使用了这项技术,这里有一些关于这个主题的问题,其中一些问题我也用解决方案回答了自己


无论哪种方式,都要使用适当的数据结构将它们缓存在内存中。将其加载到脚本中很重要,不必再次加载它们更重要,快速查找数据最重要

根据您要做的事情,一个简单的HashMap应该可以非常快速地查找字符串。确保将所有内容都存储在服务器的内存(RAM)中


i18n的性能分为两类:加载和搜索。只需限制加载次数,并使用快速查找。绝对不要每次调用i18n模块、数据库或文件时都重新加载文件。

无论如何,都要使用适当的数据结构将它们缓存在内存中。将其加载到脚本中很重要,不必再次加载它们更重要,快速查找数据最重要

根据您要做的事情,一个简单的HashMap应该可以非常快速地查找字符串。确保将所有内容都存储在服务器的内存(RAM)中

i18n的性能分为两类:加载和搜索。只需限制加载次数,并使用快速查找。绝对不要为每次调用i18n模块、数据库或文件重新加载文件