2009-09-26 109 views
10

我刚刚将一个我的项目迁移到微软的Azure。在哪里存储使用Azure的用户图片等内容? Blob存储?

但是对于类似于头像上传的功能,我需要写入硬盘上的文件。但这是一个云,所以这是不可能的。 我该如何建立这样的功能呢?我应该使用Blob存储还是有更好的解决方案?

在Blob存储中存储所有网站图像(f.e.布局图像)是否有意义?所以我会为我的静态内容提供一个无Cookie的域名?

+0

blob vs SQL Azure表呢? – 2011-07-28 21:39:53

回答

11

Blob存储绝对是放置像动漫形象的动态图像的地方。虽然你可以在虚拟机上写入磁盘,但是你不能依赖这个存在 - 如果你的应用程序被移动到另一台机器上(这可能是由于许多原因造成的),这个存储将会被擦除。

您可以做的一件事就是将图像存储在blob存储中,并将它们缓存在本地VM磁盘上(使用标准文件IO机制)。通过这种方式,您将获得相当不错的性能,并且可以节省少量存储事务,同时确保您不会存储在易失性存储中。

如果您的静态图像完全是静态的,这些图片仅与您的应用程序捆绑在一起,并且可以像普通文件一样引用。但是,如果您需要更改它们,则需要重新部署应用程序 - 因此只能将此技术用于不需要更改的图像。

0

“在Blob存储中存储所有网站图像(f.e.布局图像)是否有意义?因此,我的静态内容将具有Cookie Cookie?”

是的,我认为是这样 - 这是我现在正在推出的。

5

请注意,有two types of Blobs in Windows Azure:块Blob和页面Blob。块Blob适用于媒体文件服务,而Page Blobs适用于其他工作模式。

还考虑使用Azure Content Distribution Network(CDN)来降低客户端延迟。

Azure还具有与Silverlight Smooth Streaming协同工作的流式传输功能(如果感兴趣,请访问http://blog.smarx.com/posts/smooth-streaming-with-windows-azure-blobs-and-cdn)。