Database 当web应用程序使用多个数据库(如Sitecore)时,如何写入数据库
在Sitecore中,基本上有三个数据库。Database 当web应用程序使用多个数据库(如Sitecore)时,如何写入数据库,database,sitecore,Database,Sitecore,在Sitecore中,基本上有三个数据库。Core、Master和Web数据库 简单地说,Core数据库包含所有Sitecore设置。Master数据库是创作数据库。因此,它包含任何内容的所有版本 然后在Sitecore中,您可以“发布”内容,它会将每个内容的最新版本发布到Web数据库中 因此,假设我有一个带有新闻页面的网站。用户可以编辑网站上的新闻(所以不能通过CMS)。当数据库设置为这样时,它将如何更新 它可能会更新Web数据库,但是当我进入CMS时,我看不到最新的更改,因为CMS从主数据库
Core
、Master
和Web
数据库
简单地说,Core
数据库包含所有Sitecore设置。Master
数据库是创作数据库。因此,它包含任何内容的所有版本
然后在Sitecore中,您可以“发布”内容,它会将每个内容的最新版本发布到Web
数据库中
因此,假设我有一个带有新闻页面的网站。用户可以编辑网站上的新闻(所以不能通过CMS)。当数据库设置为这样时,它将如何更新
它可能会更新Web
数据库,但是当我进入CMS时,我看不到最新的更改,因为CMS从主数据库读取,对吗
那么这是否意味着它应该写两次?一次到Web
数据库,一次到Master
数据库
有人能告诉我这在Sitecore或类似的系统中是如何工作的吗
我之所以想知道这一点,是因为我正在考虑创建一个类似的数据库设置。我只是不知道如何解决这个问题。当您有需要网站访问者更新的项目时,您需要使用SitecoreService SOAP Web服务或创建自己的自定义Web服务,该服务在主实例上运行,并在更新后触发发布。好的,Sitecore有一个发布步骤。当用户在Sitecore中发布时,它会在此时更新Web数据库。如果您想构建一个类似的系统,我只需将项目的所有版本存储在主数据库中,并且仅当用户选择发布时,才将最新版本复制到Web数据库。如果您的站点
-生成大量评论
-持续生成评论
-使用多个内容交付服务器
-要求CMS用户对其进行管理
我不会将评论存储为内容项。
原因是HTML缓存和发布行为
在高容量站点上,您肯定会使用html缓存来实现最佳性能。如果需要发布来显示注释,则需要频繁的发布操作,从而经常清除html缓存。
你不想:-)
DMS实现后的建模是最安全的(不是最便宜的,我现在不推荐Datatables),将内容存储在单独的数据库中,如果事情繁忙,可能会使用队列来防止过载。您也可以使用,但仍必须按照您所说的回拨CMS实例。