size - Best practice for sending large messages on ServiceBus -


we need send large messages on servicebus topics. current size around 10mb. our initial take save temporary file in blobstorage , send message reference blob. file compressed save upload time. works fine.

today read article: http://geekswithblogs.net/asmith/archive/2012/04/10/149275.aspx suggestion there split message in smaller chunks , on receiving side aggregate them again.

i can admit "cleaner approach", avoiding roundtrip blobstore. on other hand prefer keep things simple. splitting mechanism introduces increased complexity. mean there must have been reason why didn't include in servicebus beginning ...

has tried splitting approach in real life situation?

are there better patterns?

i wrote blog article while ago, intention implement splitter , aggregator patterns using service bus. found question chance when searching better alternative.

i agree simplest approach may use blob storage store message body, , send reference in message. scenario considering customer project right now.

i remember couple of years ago, there sample code published abstract service bus , storage queues client application, , handle use of blob storage large message bodies when required. (i think cat team @ microsoft, i'm not sure).

i can't find sample quick google search, it's couple of years old, out of date, service bus client library has been improved lot since then.

i have used splitting of messages when message size large, batched telemetry data there no need aggregate messages, , process number of smaller batches on receiving end instead of 1 large message.

another disadvantage of splitter-aggregator approach requires sessions, , therefore session enabled queue or subscription. means messages require sessions, smaller ones, , session id cannot used purpose in implementation.

if not trust code on blog post, written long time ago, , have learned lot since :-).

the blob storage approach way go.

regards,

alan


Comments

Popular posts from this blog

python - mat is not a numerical tuple : openCV error -

c# - MSAA finds controls UI Automation doesn't -

wordpress - .htaccess: RewriteRule: bad flag delimiters -