Content management system Umbraco中子网站的最大数量
问题:Content management system Umbraco中子网站的最大数量,content-management-system,umbraco,Content Management System,Umbraco,问题: 一些公司有20个站点,希望在单个CMS实例中管理这些站点。 有许多可能的解决方案,但我正在调查的一个是一个具有20个子网站的Umbraco实例。 我只有Sitecore和Sharepoint的经验(在这些数量上)。 现在我的问题是,;在Umbraco(最新版本)中如何执行此操作? 有人有过这种数量级的实际操作经验吗? 我个人在Umbraco上最多只能在低流量到中等流量的网站上创建3个子网站。在Umbraco界面本身中,网站越大、越复杂,通常执行速度越慢。我这样说纯粹是因为随着场地结
一些公司有20个站点,希望在单个CMS实例中管理这些站点。
有许多可能的解决方案,但我正在调查的一个是一个具有20个子网站的Umbraco实例。
我只有Sitecore和Sharepoint的经验(在这些数量上)。
现在我的问题是,;在Umbraco(最新版本)中如何执行此操作?
有人有过这种数量级的实际操作经验吗?
我个人在Umbraco上最多只能在低流量到中等流量的网站上创建3个子网站。在Umbraco界面本身中,网站越大、越复杂,通常执行速度越慢。我这样说纯粹是因为随着场地结构的增长,项目的复杂性可能会增加。情况并非总是如此,但我建立了一个多领域、多站点的站点,每个站点都有多种语言,虽然发布的站点表现良好,但界面往往表现不佳。话虽如此,我还是想回去检查和修改我的代码 对数据库的点击是最严重的违规行为。通常,发布的内容不必进行任何db调用,因为所有publisjed内容都是缓存的。但是,当您创建宏、用户控件、视图、数据类型以查询Umbraco API以检索
文档
、内容
、内容类型
、文档类型
或媒体
对象时,您正在访问数据库
如果您在经常调用的代码(例如HttpModule)中执行此操作,那么无论是在发布的站点还是在后台,您的性能都会受到影响。显然,有时这是不可避免的,因此您必须小心,实现一些缓存是非常宝贵的
我还应该指出,目前的Umbraco v6处于测试阶段,并对API进行了大量修改。虽然这不会减轻我们作为开发人员所犯的编码错误,但它会使API比以前更加光滑 我自己也在努力解决这个问题。我在一个Umbraco安装中有大约12个子网站,所以没有您那么多,但其中一个有一个产品部分,其中有数千个产品的单独页面,所以总页面相当多 性能对我来说很好,但这里有几件事需要记住:
最后,我不认为一个安装了20个子网站(每个子网站有100页)的Umbraco与一个安装了2000页的站点的性能会有太大的不同,但在查询/获取内容时必须小心(通过razor/xslt查询),以及维护带来的好处是否真实。我目前正在运行一个带有+800个站点和+20000个内容节点的Umbraco安装,而Umbraco一直运行良好,直到大约200个站点和5000个节点,之后我们开始在一些特定的后台任务中体验奇怪的行为。例如,更改多个节点使用的doctype可能会导致一些不必要的前端效果,如缺少内容等(请参阅此处的更多信息)
但是我们已经修改了Umbraco的一些源代码,以便能够处理更多的节点和站点,并且到目前为止它运行得很顺利。因此,我不知道“限制”是什么(目前)我现在通常尽量避免在剃须刀中执行任何非基本查询。我使用MVC模型,将树上的大多数查询委托给服务层。我使用的核心服务是根据请求缓存特定节点查询,例如检索所有根节点、基于当前节点的根节点、按id划分的节点祖先等。这样,具有许多相关功能(如新闻)的页面就不必重新查询同一个节点或分支。很奇怪,为什么要运行这么多子站点?我的项目相当简单,组织有16个分部,希望有一个登录来管理所有分部,但对我来说,+800个站点似乎太多了……我们有许多针对特定行业的“类似”站点,我们在所有站点上使用100多个模块,包括doctype、dll、js、宏、,等等。由于我们处于一个竞争非常激烈的行业,高度关注最终产品的价格,因此将其作为单独的Umbraco安装是不可管理的,也不符合成本效益的。我的估计是,如果再进行一些核心优化,我们可以在当前服务器上处理大约4000个站点,DB和Umbraco的服务器负载不是问题。