在规划应用程序设计时,Microsoft Azure中有太多选项可供选择。 Azure本身并没有停滞不前,看起来最近添加了许多选项。我是一个非常优秀的独立开发者,所以我需要一些入口点来选择架构。
该应用程序由下一部分组成:
1。数据库
经典SQL数据库已经使用Azure SQL database
实现。
2。服务器端应用程序。 (需要架构重构)
目前,应用程序是一个.NET C#/ WPF桌面应用程序,托管在经典的Azure Virtual Machine
上,并带有Windows Server。
这是一个始终运行的调度程序,可以逐个执行各种任务。
任务主要是长期运行的工作从Web获取一些数据,CPU接收处理与收到的数据,使用数据库。
感觉就像是一种古老而错误的设计(考虑到天蓝色的特征):
a)应用程序实际上不需要GUI,只需控制调度程序所需的状态。
b)从逻辑上讲,某些任务可以同时执行,其中一些任务必须在启动前等待其他任务完成。现在,所有任务都是逐个执行的,这是由虚拟机性能限制引起的。我认为必须有一种方法可以在更高的抽象级别上实现并行工作和控制结果,而不是桌面应用程序。我想以某种方式将调度逻辑移动到升级。 (也许IaaS-> Paas来到这里?)第3。客户端应用程序。
客户端应用程序。注册用户使用DB。
这里有问题:
在这种情况下应选择哪种服务器端应用程序设计,需要哪些Azure功能?
是否有Azure内置功能来管理注册用户帐户,或者只有将其作为应用程序的一部分来实现?
答案 0 :(得分:2)
您是否正在探索其他存储选项或SQL数据库? 让我们从头开始:
存储:您可以选择 1.存储 - VM的Blob,表,队列和文件存储和磁盘 2. SQL数据库 - 云中的关系数据库服务,基于市场领先的Microsoft SQL Server引擎,具有关键任务功能 3. Document DB - 为现代移动和Web应用程序设计的无架构NoSQL文档数据库服务 4. StorSimple-集成存储解决方案,用于管理本地设备和Microsoft Azure云存储之间的存储任务 5. SQL数据仓库 - 企业级分布式数据库,能够处理PB级的关系数据和非关系数据 6. Redis缓存 - 高吞吐量,一致的低延迟数据访问,可构建快速,可扩展的应用程序 7. Azure搜索 - 用于Web和移动应用程序开发的搜索即服务
日程安排:你可以选择 1.虚拟机 2.云服务(工作者角色):您可以更好地控制VM。您可以在Cloud Service VM上安装自己的软件,也可以远程访问它们。 3.批处理:云规模的作业调度和计算管理 4. Service Fabric:用于为云构建可扩展,可靠且易于管理的应用程序的分布式系统平台 5.应用服务:适用于任何设备的可扩展Web应用,移动应用,API应用和逻辑应用
客户:你可以尝试一下 1.网络应用 2.云服务(Web角色)
使用此链接作为基于功能精美分类的所有Azure服务的一站式商店。从这里,您可以选择各种服务,并根据您的应用程序要求进行调整。 主列表:http://azure.microsoft.com/en-in/documentation/