是否建议在配置文件中存储某些数据,同时通过数据库中的ID引用它?具体而言,当存储很少或从未更新的信息时。
例如,我的应用程序中的用户可能有不同的角色。由于这些角色几乎没有(或永远不会)更新,是否真的有必要将它们存储在roles
表中并通过users
中的ID引用它们?我也可以在数组中定义角色。这样,每次都不需要调用数据库来获取角色信息(每个页面都需要)。
另一种选择是从数据库中缓存整堆角色信息。不确定这是否比将数组存储在某处更好。
在存储任何未由用户编辑的应用程序相关数据时,可以询问同样的问题。
答案 0 :(得分:1)
另一种选择是从数据库中缓存整堆角色信息。不确定这是否比将数组存储在某处更好。
直到您在应用程序中出现错误,网络故障或停电时间过长。此时,缓存的解决方案将重新读取数据库中的“主”数据并继续搅拌,安全地知道数据受数据库事务和备份机制保护。
如果此类灾难发生“单独阵列”解决方案,它可能会破坏阵列存储或使其与其他数据不一致(无引用完整性)。
最重要的是,集中存储数据意味着所有客户端都可以自动看到更改。您可以通过共享文件夹或FTP等“集中”存储文件,但为什么不使用数据库(如果它已经存在)?