在哪里保存自定义CMS的配置数据?

时间:2010-09-24 19:06:46

标签: data-structures configuration content-management-system

存储网站的不同配置数据有什么好处:

  1. in database
  2. in file
  3. 别处?

1 个答案:

答案 0 :(得分:0)

简短一瞥,暂时忽略了数据库之间的差异(数据库可能是从oracle和mssql的庞然大物到超轻mongodb,memcached等等)

数据库优点:

  • 多用户访问:您可以由不同的用户同时阅读和写作。

  • 用户访问控制:您需要额外的安全层,以确保您可以控制谁访问您的数据(通常,但不经常。有些数据库没有这个)

  • 速度:任何实际操作数据的数据库性能绝对会破坏其他任何内容。

数据库的缺点:

  • 的复杂性。你必须通过与数据库交谈,或者实现一个ORM(一个从你那里抽象出沟通的细节细节的层来)来做更多的工作。

  • 一组额外的安全漏洞,用于监控和保护。

文本文件的优点:

  • 它不会比写入文件更容易存储数据。

文本文件的缺点:

  • 超级不安全:如果你完全错过并且不认为一切通过,这很容易实现。

  • 您的数据完整性为零(即多次写入需要发生时会发生什么?)。除非你存储非常简单的信息(我们说的是简单的配置文件),否则你会遇到需要修改大量文件的情况,甚至可能会定期重写整个文件,这很慢。

  • 性能:磁盘IO很贵。数据库经过超级优化,可以尽可能多地在内存中保存有用的数据。

  • 你怎么找到你需要的东西?你将不得不以某种方式构建你的文件,XML或JSON,你会得到一个处理成本,特别是如果你的数据变大。

我可以继续,但老实说,如果你正在做一个CMS,你可以通过合适的数据库获得更好的效果。

强制性脚注:不要创建CMS。我们有足够的经常被同行评审,并且是安全的,可扩展的和超级的。从头开始创建自己的东西往往只是灾难的一种方法。