Azure可以使用3层应用程序架构吗?

时间:2012-02-23 10:28:17

标签: azure azure-worker-roles 3-tier azure-web-roles

您好我被分配了将现有的3层应用程序(表示层,业务层和数据层)转换为Windows Azure项目的任务。

基本上我所做的是创建Web角色并将表示层放入其中然后我创建了2个单独的类库(分别是业务和数据层)项目,并使用引用将它们链接到表示层。

但是,当我在Azure中部署应用程序时,仅上载了Web角色(表示层):/

My current 3 tier architecture that isnt working properly with azure

有人可以告诉我:

  1. 甚至可以使用具有天蓝色的<3层架构
  2. 如果我在参考项目时犯了错误
  3. 如果无法实现这一点,那就有类似3 Tier的架构。
  4. 谢谢!

3 个答案:

答案 0 :(得分:1)

Azure可以做到这一点。问题是你是逻辑还是物理层级。如果它们是合乎逻辑的,只需将不同的程序集添加到一个Web项目中就很容易,只需将其安装在Web角色中即可。如果它们是物理层,即业务层是WCF服务,这也是可能的,如果您愿意,它可以托管在不同的Web或辅助角色中,甚至可以托管在一个Web角色中。

答案 1 :(得分:1)

关于遗失参考: 您需要为自己添加到项目中的每个引用设置“copy local to true”。这样,所有这些引用都将被打包,并在部署到云时,可以对您的项目进行管理。

关于演示和业务层: - 请记住,如果您的应用程序中有Web和workrole角色,您将获得运行应用程序的两个单独的VM,您可以通过使用内部端点来进行通话。在Windows Azure上运行应用程序时,请考虑为什么需要在两个虚拟机上分离代码(如果需要),因为您确定可以在Web角色中使用Web前端和后台处理代码。工作者角色是只有没有预配置IIS的VM。大多数具有Web前端的非.net应用程序都使用Worker角色作为前端,因此您需要仔细设计应用程序,以便选择Web角色和工作角色中的内容。

答案 2 :(得分:0)

Azure只不过是Windows Server 2008计算机的集合。您可以根据需要部署解决方案。通常,webrole用于Web层(前端),而工作角色用于逻辑(后端)。您的数据库或数据存储是最后一层。