Azure Blob存储:地理复制 [英] Azure Blob Storage: Replicating Geographically

查看:77
本文介绍了Azure Blob存储:地理复制的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在West Europe区域中有一个主要的Blob存储,其中包含通过同一区域中的we应用程序访问的用户上传文件.例如,如果您位于East US区域,则会遇到高延迟.

I have a primary blob storage in West Europe region that contains user uploaded files accessed through a we application within the same region. This suffers from high latency, say if you're in East US region.

因此,我将应用程序的另一个实例添加到美国东部地区,并使用流量管理器根据性能在两个实例之间路由.现在,美国东部地区的用户正在与自己所在地区的应用程序实例进行对话.

So I add another instance of the application to the East US region, and use traffic manager to route between the two instances based on performance. Users in the East US region now talk to the application instance in their own region.

问题在于,现在美国东部实例正在与西欧的Blob存储区进行通信,因此应用程序遭受了延迟的困扰.我可以为西欧blob存储打开地理冗余,但这基本上只是为了备份,而不是性能,因为我无法选择要复制到哪个区域.

The problem is, now the East US instance is talking to the blob store in West Europe, so the application suffers from the latency. I can turn on geo-redundancy for the West Europe blob store, but this is basically just for backup, not performance, as I can't pick which region to replicate to.

我不能使用CDN,因为正在访问的文件是用户的私有文件,并且当用户与应用程序进行交互时,我仅为每个URL生成共享访问签名. (CDN仅用于公共商店.

I can't use a CDN, since the files being access are the users private files, and I only generated Shared Access Signatures for each URL when the user interacts with the application. (CDNs are just for public stores).

因此,如何将blob存储从一个区域复制到我选择的另一个区域?理想情况下,这将是两种方式,就像我可以对SQL同步所做的那样.理想的最终结果是,美国东部实例与一家位于美国东部的blob商店进行对话,并且这些blob与西欧的主要对象保持同步.

So, how to replicate a blob store from one region to another of my choosing? Ideally this would be two way, like I could do for SQL-Sync. The ideal end result is the East US instance talks to a East US based blob store, with the blobs in sync with the West Europe primary.

推荐答案

Azure中没有内置机制来促进区域之间的Blob同步(除配对区域之间的地理复制外).您需要在您的应用程序中实现此功能.这该怎么做?这是主观的,可能会引起热烈的讨论(加上StackOverflow并不是征求意见的地方).

There's no built-in mechanism in Azure to facilitate blob sync'ing between regions (aside from geo-replication between paired regions). You'd need to implement this in your app. How to do this? That's subjective and would probably invite a lively discussion (plus StackOverflow isn't a place to solicit opinions).

这就是说……从目标的角度来看,在Azure中,作为内置启用码最接近的是Service Bus,因为它支持pub/sub.这样一来,您就可以发布与存储内容有关的消息,然后让代表每个所需区域的订阅者从其自己的订阅者队列中消费这些消息并写入特定于区域的Blob存储.

That said... from an objective standpoint, the closest you'd find as a built-in enabler, in Azure, would be Service Bus, as it supports pub/sub. This would allow you to publish messages related to storing content, and then have subscribers representing each desired region consuming these messages from their own subscriber queue and writing to region-specific blob storage.

这篇关于Azure Blob存储:地理复制的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆