作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我想将一条消息推送到 Azure 服务总线中,假设大小为 3 MB。为此,我写道:
QueueInfo queueInfo = new QueueInfo("sq-jcibe-microservice-plm-qa");
long maxSizeInMegabytes = 5120;
queueInfo.setMaxSizeInMegabytes(maxSizeInMegabytes);
service.updateQueue(queueInfo);
service.sendQueueMessage("sq-jcibe-microservice-plm-qa", brokeredMessage);
我遇到以下异常。
com.microsoft.windowsazure.exception.ServiceException: com.sun.jersey.api.client.UniformInterfaceException: PUT https://sb-jcibe-microservice-qa.servicebus.windows.net/sq-jcibe-microservice-plm-qa?api-version=2013-07 returned a response status of 400 Bad Request
Response Body: <Error><Code>400</Code><Detail>SubCode=40000. For a Partitioned Queue, ordering is supported only if RequiresSession is set to true.
Parameter name: SupportOrdering. TrackingId:59bb3ae1-95f9-45e1-8896-d0f6a9ac2be8_G3, SystemTracker:sb-jcibe-microservice-qa.servicebus.windows.net:sq-jcibe-microservice-plm-qa, Timestamp:11/30/2016 4:52:22 PM</Detail></Error>
我不明白这是什么意思以及我应该如何解决这个问题。请帮助我解决这个问题。?
最佳答案
maxSizeInMegabytes
指的是队列中消息的最大总大小,而不是单个消息的大小。标准层的单个消息大小不能超过 256KB,高级层的单个消息大小不能超过 1MB(包括两者的 header )。
如果您希望发送大于 Maxim 消息大小的消息,则必须实现声明检查模式 ( http://www.enterpriseintegrationpatterns.com/patterns/messaging/StoreInLibrary.html ) 或使用为您执行此操作的框架。自己实现意味着将有效负载存储为存储 blob,并且消息将包含 Uri。
关于azure - 如何在azure服务总线中推送最大长度消息,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40894124/
我是一名优秀的程序员,十分优秀!