我的应用程序通过许多键/值进行配置(例如,假设为30.000)
我想找到这些配置的最佳部署方法,因为我知道我想避免使用DEFINE来重新配置运行时。
我想到了
的选项是什么?
由于 杰罗姆
答案 0 :(得分:2)
好吧,如果内存不是问题,只需将数组序列化为文件即可。绝对没有比这更快的解决方案。您没有SQLite的I / O和库开销,并且您没有memcached的网络开销。
但请记住,内存必须确实不是问题。您将一次将整个30,000个元素数组加载到内存中,而不是使用数据库,您可以根据需要加载它们。
要构建设置,您可以将每个设置放在自己的文件中。
但实际上,您应该使用数据库。这就是他们的目的。我真的怀疑为什么你需要担心30k设置..你可能想重新考虑你的应用程序设计。
答案 1 :(得分:0)
在数据库中怎么样?
使用这样的架构:
| key | value |
您可以拥有以下数据:
| currency | pound |
| timezone | GMT |
这也意味着您可以这样查询:
SELECT * FROM options WHERE key = 'timezone'
甚至可以返回很多选项:
SELECT * FROM options WHERE key IN ('timezone','currency')
这可以在任何类型的数据库中,尤其是SQLite数据库。如果您使用的是PHP之类的语言,则可以使用ADOdb进行数据库抽象,这样您的应用程序就可以在不同的数据库类型之间移植,只需考虑一下您是否担心被绑定到一个数据库。
答案 2 :(得分:0)
如果你想要结构化,我会说使用parse_ini_file函数的ini文件。