使用windows azure时的开发差异

ank*_*kur 3 asp.net cloud asp.net-mvc azure

我的问题有两个部分,我知道它们是基本部分,但是无法清除想法,所以发布这个.

我们计划在windows azure上构建一个新的应用程序.在阅读了一些关于云的文章后,我在云上构建了一个示例应用程序,它执行CRUD等基本操作.

  1. 所以我想知道在使用azure app时你们所感受到的所有根本区别.我使用MVC作为框架构建了应用程序.在使用MVC和使用MVC的云应用程序在普通Web应用程序中编写代码方面,我没有太大的区别.构建云应用程序时的待办事项是什么?

  2. 我们计划聘请一些有使用Windows azure经验的人,市场上有几个猎头用大量的简历轰炸你.虽然人们没有在窗户上工作,但他们刚刚收到了简历.如何评估候选人判断他在云计算方面的潜力.任何提示都会有所帮助.

Dav*_*gon 6

1.基本差异

Windows Azure可以在ASP.NET中正常运行.考虑到虚拟机是Windows Server 2008 R2/SP2,您无法做到.本地应用程序与Windows Azure应用程序之间的巨大差异是关于这些VM的行为方式,Windows Azure如何管理SLA和可用性,底层guest虚拟机和主机操作系统维护是如何完成的等等.想到的一些事情:

  • 负载均衡.无法将流量定向到一组Web或辅助角色实例中的特定VM实例(除非您构建自己的请求路由器).所以你需要计划无国籍状态
  • 会话管理.与第一点相关.无法使用inproc,需要使用Cache,表存储或SQL提供程序,这些都可以提供无缝的会话体验.
  • 服务.Windows Azure提供身份管理,缓存,流量管理器(跨数据中心的负载平衡),CDN(blob的边缘缓存),blob存储,表存储(无模式,NoSQL)等.您需要仔细查看这些服务,看看它们最适合您的应用.例如:表存储每个帐户可以扩展到100TB,并且每GB成本非常低,但是程序员需要学习一种新的内容持久性方式,特别是如果它们习惯于SQL Server.
  • 部署.您需要了解如何维护您的应用,监控,扩展,升级.
  • 可用性.您需要了解Windows Azure如何管理您的操作系统(除非您使用的是您管理的虚拟机),如何处理故障(例如硬件故障)
  • 安全.Windows Azure SQL数据库安全性与SQL Server安全性不同.

2.面试

建筑技能至关重要.可以更轻松地学习编程技巧,尤其是使用Windows Azure培训套件或一些好书.在面试Windows Azure项目的候选人时,这里只是我要询问的一些快速列表.经验丰富的Windows Azure开发人员将能够处理其中的大部分.

  • 描述将任务组合(或分离)到相同(或单独)角色的场景
  • 解释如何监控和扩展应用程序
  • 了解升级应用程序的各个方面
  • 了解如何安装和运行第三方工具和替代(非.NET)语言
  • 建筑师的成本与性能与可用性
  • 了解存储解决方案(SQL,第三方SQL和NoSQL,blob/tables /队列)
  • 了解Windows Azure队列与服务总线队列的优缺点
  • SQL Server和Windows Azure SQL数据库之间的差异,包括联合,安全性,瞬态错误,跨数据库查询和事务
  • 了解Content Delivery Network边缘缓存的功能(和限制)

  • 我想你刚刚编写了下一个Azure认证;)+1来自我的建筑技能,很棒的答案. (2认同)