繁体   English   中英

我可以在其他EC2服务器上放置视图,模型,控制器吗?

[英]Can I place views, models, controllers on different EC2 server?

我正在YII框架中进行一个非常大的社交网络项目,其中负载平衡是一个非常重要的问题。 我需要的是:我想将所有三个层(模型,视图,控制器)保留在不同的EC2亚马逊服务器上,以便可以高效地完成负载平衡。

在YII中我该怎么做?

有什么帮助吗?

为了实现负载平衡,您不应在3个不同的实例上分离应用程序。

您应该在多台服务器上具有相同的应用程序(具有所有模型,视图和控制器),然后根据每台服务器的CPU和RAM使用情况,负载平衡器将在适当的服务器上重定向最终用户。

我什至不知道单独的应用程序是否可行,如果是,则用户将不得不等待更长的时间:

  • 前端控制器将调用某些模型=>对模型服务器的一次或多次调用=一段时间
  • 前端控制器必须将数据发送到视图=>更多时间

最终,用户将比在已加载的服务器上等待更多!

我强烈推荐Amazon的Elastic Beanstalk服务,因为我正在将其用于我正在开发的项目中,该项目也基于Yii Framework。

我使用的解决方案是将我的应用程序部署在3台服务器上,并通过rsync使它们与部署服务器保持同步。 我的静态内容来自第4个服务器,但这会将您的所有代码放在3个服务器上,作为3个精确的克隆。 Imo这是最好的,因为有了amazone,您可以在需要扩展平衡时只产生更多克隆。

负载平衡意味着您将一部分用户服务在1台服务器上,另一部分用户服务在2nd服务器上,依此类推。.但是,如果拆分模型/控制器/视图,您将不了解负载平衡的含义。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM