Azure架构设计

Azure架构设计,azure,azure-storage-blobs,Azure,Azure Storage Blobs,我是Azure新手,对blob存储有点困惑。我需要客户端通过FTP/SFTP访问以推拉文件(XML、CSV、EDI等)。推送的文件由.net应用程序读入并写入数据库。据我所知,我们将使用VM角色创建FTP/SFTP服务器,使用worker角色执行.net代码,使用SQL存储数据库,使用Blob存储文件 首先,我的假设正确吗?其次,VM角色可以附加存储blob以写入和读取文件,工作角色也可以附加到同一存储blob以读取和写入文件 样本: 客户端通过FTP将xml文件推送到VM。VM将XML文件写入

我是Azure新手,对blob存储有点困惑。我需要客户端通过FTP/SFTP访问以推拉文件(XML、CSV、EDI等)。推送的文件由.net应用程序读入并写入数据库。据我所知,我们将使用VM角色创建FTP/SFTP服务器,使用worker角色执行.net代码,使用SQL存储数据库,使用Blob存储文件

首先,我的假设正确吗?其次,VM角色可以附加存储blob以写入和读取文件,工作角色也可以附加到同一存储blob以读取和写入文件

样本:

客户端通过FTP将xml文件推送到VM。VM将XML文件写入存储器。辅助角色读取文件、处理文件并将内容写入数据库

我的想法是正确的还是我错过了机会


感谢你,因为Azure有一系列的服务,所以你有一些选择。Azure需要记住的一件重要事情是,您的工作者角色(即未安装IIS的Windows Server 2008)非常灵活,因此您可以使用它们做很多事情,包括编写自己的FTP服务器,并能够通过工作者角色虚拟机托管它。(在CodePlex上)解决方案就是一个例子

此外,您可以使用web角色(与工作者角色相同,但启用了IIS)来执行相同的操作-因此,您可以使用IIS而不是滚动您自己的FTP服务器。在Azure中可以在ITQ上找到。 我建议做一些进一步的阅读,以确定哪一个是两个更好的选择。还要考虑您的需求,因为这可能会影响您的方法,即扩展、带宽、成本、首选部署模型等

就存储文件而言,您当然可以使用Blob存储。如果您的系统中不需要关系数据库,那么您可以完全跳过使用SQLAzure(在这种情况下,上面提到的web角色解决方案将不会有多大用处)——但这又取决于您的特定需求


这是一个很好的知识来源,特别是如果您刚开始学习的话,那么一定要花时间阅读一些相关文档。

谢谢Bern,我们之所以认为VM是因为我们需要承载多个协议(SFTP、FTP、FTPS、HTTPS),并且目前使用第三方服务器来实现这一点,而不是使用我们自己的服务器。不过我还不清楚,VM角色是否可以与某种文件对象对话,这是否是一个存储博客,等等,而worker角色也可以?我需要一个所有角色都可以访问和读写的文件的中央存储库。无论是直接从VM装载还是编写.net应用程序来处理从本地到存储对象的传输,我们都在想。您好@user2136241-是的,blob存储API非常灵活,您可以将blob存储用作各种文件系统(blob=文件/blob容器=文件夹)。如果您有时间,请花点时间阅读Azure上的这篇文章:它可能会让您对blob存储有一个更全面的概述。