我刚刚将我的一个项目迁移到了Microsoft的azure。
但是对于类似于头像上传的功能,我需要对硬盘上的文件进行写访问。但这是一片云,所以这是不可能的。 我怎样才能构建这样的功能呢?我应该使用Blob存储还是有更好的解决方案?
将所有网站图像(f.e. layout images)存储在Blob存储中是否有意义?那么我的静态内容会有一个不含Cookie的域名吗?
答案 0 :(得分:11)
Blob存储绝对是放置像头像这样的动态图像的地方。虽然您可以写入将要运行的VM上的磁盘,但您不能依赖它来存在 - 如果您的应用程序被移到另一台机器(这可能由于多种原因而发生),此存储将会被删除。
您可以做的一件事是将图像存储在blob存储中,并将它们缓存在本地VM磁盘上(使用标准文件IO机制)。通过这种方式,您可以获得相当不错的性能,并且可以节省一些存储事务,同时仍然确保您不会存储在易失性存储中。
如果你的静态图像是完全静态的,那么它们只是与你的应用程序捆绑在一起,可以像普通文件一样被引用。但是,如果您需要更改它们,则需要重新部署应用程序 - 因此只能将此技术用于不需要更改的图像。
答案 1 :(得分:5)
请注意有two types of Blobs in Windows Azure:阻止Blob和Page Blob。块Blob适用于媒体文件服务,而Page Blob则针对其他工作模式进行了优化。
还可以考虑使用Azure Content Distribution Network(CDN)来降低客户端的延迟。
Azure还具有与Silverlight Smooth Streaming(http://blog.smarx.com/posts/smooth-streaming-with-windows-azure-blobs-and-cdn)协同工作的流媒体功能。> p>
答案 2 :(得分:0)
“将所有网站图像(例如布局图像)存储在Blob存储中是否有意义?所以我的静态内容会有一个无Cookie的域名吗?”
是的,我想是的 - 这就是我现在正在推出的。