与文件系统相比,使用数据库存储配置信息的优缺点是什么

Gew*_*hen 5 java xml sql configuration-files relational-database

假设您的任务是编写必须以某种格式存储配置信息的Web应用程序.与将信息存储在文件中相比,将这些配置信息存储在关系数据库中有什么好处和缺点?配置选项可以包括但不限于数据保留设置和与外部系统接口的设置(例如,IP地址,端口,用户名,密码).

Luc*_*olt 4

这是优点和缺点的总结

文件的优点:

  1. 快速访问配置数据。(假设没有缓存)
  2. 每个服务器可以进行不同的配置(在负载平衡的情况下)
  3. 您已经需要一个数据库凭据文件,以便所有内容都可以存储在一个位置。

文件的缺点:

  1. 负载平衡环境中的配置很困难。
  2. 在开发中添加设置时,最记得将它们移至生产中每台服务器上的文件中。
  3. 如果您想编写控制面板以在运行时更改设置,则配置必须可由网络服务器写入。由于计时问题和/或锁定,在控制面板中操作文件很麻烦。

数据库的优点:

  1. 负载均衡器可以跨集群共享配置
  2. 远程检查设置或更改设置非常容易,例如在 phpMyAdmin 或直接 sql 客户端中。
  3. 控制面板开发变得简单。
  4. 可以通过在 memcached 或内存中的哈希中缓存配置来减轻性能影响。
  5. 程序员比 IT 人员更有可能控制设置,或者至少可以通过控制面板进行控制。

数据库的缺点:

  1. 如果您连续获取设置,性能可能会很慢。
  2. 如果您不提供工具,系统管理员管理产品可能比管理文件更困难。他们可能不是 sql 专家。
  3. 集群更让人痛苦。

这取决于个人喜好以及任何当前或未来可能提供简单配置的要求。