问题标签 [azure-queues]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
azure - Azure 存储浏览客户端软件选项
据我所知,这些是唯一可用于浏览 Azure 表存储、队列和 Blob 的客户端:
- Visual Studio Server Explorer:这很棒,但我们需要独立软件(用于测试人员、分析师等)
- Cerebrata Azure Explorer:每个许可证 125 美元。我们目前还负担不起。
- CloudXplorer:每个许可证 50 美元。我们目前还负担不起。
- TableXplorer:免费但非常有限(也没有队列或 blob 存储)
- Azure Storage Explorer 4:很多人建议这样做,但我发现它写得非常糟糕。
- Azure 存储资源管理器 5:仍处于预览阶段。
还有其他我不知道的客户吗?
azure-storage - 天蓝色存储队列消息实时时间
我是否理解正确,在 Windows Azure 队列存储中,消息最多可以存在 7 天?
7 天后该消息会发生什么情况?
如果您在 7 天内阅读了一次并且不删除该邮件,会发生什么情况?我的意思是您从队列中读取消息并将可见性超时设置为 1 分钟。在您阅读消息(不删除它)并且 1 分钟超时可见性到期后会发生什么?我知道队列已经回来并且可用,但是该消息的 7 天 TTL 会发生什么情况,它是从那一点更新到 7 天,还是自消息创建以来完全是 7 天?
c# - Azure 本地开发队列连接字符串
我使用 VS 2013 中的 QueueWorkerRole 模板创建了一个新的 WorkerRole,它创建的代码如下所示:
我遇到的问题是正确设置 Microsoft.ServiceBus.ConnectionString 以便它可以与在模拟器中运行的本地开发队列一起使用。默认情况下,它是这样设置的:
而且我猜当我有一个托管服务要连接时这会很好,但我只是在本地尝试一些东西并且无法连接它。
我尝试了“UseDevelopmentStorage=True”,并尝试使用在查看存储模拟器 UI“127.0.0.1:10001”时找到的地址以及使用标准格式的本地模拟器:http://www。 connectionstrings.com/windows-azure/ (DefaultEndpointsProtocol=https;AccountName=devstoreaccount1; AccountKey=Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==;) 但我没有运气。
有时我在 Compute Emulator UI 中看到“服务总线连接字符串包含无效属性”,有时我收到无法连接的错误。
谢谢。
c# - Windows Azure QueueClient 推荐缓存?
刚刚创建了一个新的工作角色来处理来自队列的消息。默认示例包括开头的以下代码:
谁能详细说明该演示附带的评论?
asp.net-mvc - Scalable SignalR + Azure - SignalR 放在哪里,我应该使用 Azure 队列吗?
我正在开发一个具有各种类型通知的应用程序。通知示例:
- 已创建消息
- 已提交清单
- 上市批准
我想将所有这些都与 SignalR 联系起来,以便任何连接的客户端都能实时获得更新。
就架构而言 - 现在应用程序完全位于托管在 Azure 网站上的单个解决方案中。这些通知类型中的每一个的触发器都存在于此应用程序中。
当触发器被触发时,我想告诉 signalR,“嘿,将此消息发送给以下客户端”以及用户 ID 列表。我假设可以根据 userId 识别连接的客户端......并且我假设send message to clients
应该在 Web 应用程序之外执行该过程,以免减慢 MVC 应用程序或冒丢失数据的风险异步调用中断。第一个问题——这些假设是否正确?
假设是这样,这意味着我需要一个专门的网络/工作者角色来向客户发送消息。我可以将消息从我的 Web 应用程序直接传递到这个进程,但是如果进程终止会发生什么?弹性问题让我相信传递消息的正确方法是通过某种队列。第二个问题——这是一个有效的思路吗?
假设是这样,这意味着我可以使用一个好的 ol' Azure SQL 数据库作为队列,但似乎有一些专门的(可能更便宜的)服务来处理消息队列,例如:
http://www.windowsazure.com/en-us/develop/net/how-to-guides/queue-service/
第三个问题:这应该用作signalR的排队机制吗? 我有兴趣在未来使用 Redis 进行缓存...... Redis 会比队列服务更好还是更差?
最后一个问题:
我试图在这里说明我提出的架构:
我在这里最不清楚的是 MVC 应用程序如何知道何时排队,或者 SignalR 进程如何知道何时广播。MVC 应用程序是否应该盲目排队,而不关心连接的客户端?这似乎在队列上引入了大量浪费的空间,并在工作角色中浪费了周期,因为只有极少数的客户端会被连接。
我能想到的唯一其他方法是以某种方式让 MVC 应用程序可以看到 SignalR 进程,以查看客户端是否已连接......如果是,则 Enqueue。不过,这让我感到不舒服,因为这意味着我必须为每个被触发的触发器点击图表上的红线,这 - 即使完成异步 - 让我担心性能和可靠性。
对于可扩展的高性能 SignalR 消息广播,推荐的架构是什么? 性能是重中之重,其次是成本。
奖金问题:
- 如果某些消息的优先级高于其他消息怎么办?是否应该使用两个队列,其中一个总是在另一个之前被检查?
azure - 使用 Azure 服务总线的基于消息类型的路由
使用 Azure 服务总线实现基于强类型消息的路由的最简单方法是什么。
假设我们只有一个消费者并且正在使用服务总线队列,是更容易为每种消息类型(在我们的例子中,事件消息)创建一个队列,还是简单地为所有消息创建一个队列并处理消费者的路由?
如果我们有多个消费者并且想要进行发布-订阅消息传递,我们应该为每个消息类型创建一个主题,每个消息类型为每个消费者创建一个订阅,还是只为所有消息创建一个主题,然后处理消费者上的路由?
c# - NServiceBus 在 Azure 中创建队列失败
我的 NServiceBus 项目将不再从 Azure 队列中读取。
我删除了它们,因为可能有一些消息卡住了,但现在它将不再创建队列。注意:用于自行自动创建队列的完全相同的代码和凭据。相反,我得到:
40400: 未找到端点..
在 Microsoft.ServiceBus.Messaging.Sbmp.SbmpMessageSender.EndSendCommand(IAsyncResult 结果) 在 Microsoft.ServiceBus.Messaging.Sbmp.SbmpMessageSender.OnEndSend(IAsyncResult 结果) 在 Microsoft.ServiceBus.Messaging.Sbmp.SbmpMessageSender.OnSend(TrackingContext trackingContext, IEnumerable
1 messages, TimeSpan timeout) at Microsoft.ServiceBus.Messaging.MessageSender.Send(TrackingContext trackingContext, IEnumerable
1 条消息,TimeSpan 超时)在 Microsoft.ServiceBus.Messaging.QueueClient.Send(BrokeredMessage 消息)在 NServiceBus.Unicast.Queuing.Azure.ServiceBus.AzureServiceBusMessageQueue.Send(字节)的 Microsoft.ServiceBus.Messaging.MessageSender.Send(BrokeredMessage 消息) [] rawMessage,QueueClient 发件人)在 c:\TeamCity\buildAgent\work\nsb.master_7\src\azure\Queueing\NServiceBus.Unicast.Queuing.AppFabric\AzureServiceBusMessageQueue.cs:NServiceBus.Unicast.Queuing.Azure 的第 179 行。 ServiceBus.AzureServiceBusMessageQueue.Send(TransportMessage message, Address address) in c:\TeamCity\buildAgent\work\nsb.master_7\src\azure\Queueing\NServiceBus.Unicast.Queuing.AppFabric\AzureServiceBusMessageQueue.cs:NServiceBus.Unicast 的第 160 行.UnicastBus.SendSubscribeMessageWithRetries(地址目的地,TransportMessage subscriptionMessage, String messageType, Int32 retriesCount) in c:\TeamCity\buildAgent\work\nsb.master_7\src\unicast\NServiceBus.Unicast\UnicastBus.cs:NServiceBus.Unicast.UnicastBus.<>c_ 的第 476 行c:\TeamCity\buildAgent\work\nsb.master_7\src\unicast\NServiceBus.Unicast\UnicastBus.cs 中的DisplayClass8.b _7(对象状态):System.Threading.ExecutionContext.RunInternal(ExecutionContext executionContext,ContextCallback 回调的第 433 行, 对象状态, Boolean preserveSyncCtx) 在 System.Threading.ExecutionContext.Run(ExecutionContext executionContext, ContextCallback callback, Object state, Boolean preserveSyncCtx) 在 System.Threading.QueueUserWorkItemCallback.System.Threading.IThreadPoolWorkItem.ExecuteWorkItem() 在 System.Threading.ThreadPoolWorkQueue 。派遣()
我的配置如下:
windows-store-apps - 设备离线时向用户设备发送 Toast 通知
当用户设备离线或暂时失去连接或锁定时,我向用户设备应用程序发送 toast 通知。用户设备在线后没有收到 toast 通知。设备连接后如何接收 toast 通知。
我使用此代码发送通知
请帮助我。设备连接后如何接收 toast 通知。
c# - 无法在 Azure 队列中添加超过 32 条消息
我尝试在 Azure 队列中添加 50 条消息,但似乎只有前 32 条消息排队。
按照文档,我创建了一个这样的队列:
然后我将消息添加到队列中:
我从服务器资源管理器-> Windows Azure-> Storeage-> 队列打开队列以检查里面的内容,但只出现前 32 个。
我错过了什么?
nservicebus - Nservicebus msmq 使用网关到 azure 队列
使用 Bus.SendToQueues 时出现错误,问题结束时出现详细错误。
我有一个使用存储帐户和密钥设置的天蓝色队列,我正在尝试使用 Bus.SendToSites 让使用 msmq 的本地服务总线处理程序向天蓝色站点发送消息。
试图让网关运行,按照: http: //support.nservicebus.com/customer/portal/articles/859548-the-gateway-and-multi-site-distribution,我正在使用这个配置:
App.config:(我是否正确设置了站点?)
处理程序:
在运行时,我得到以下信息:
error: Failed to send message to address: 分发者的数据地址,用作此端点发送的消息的返回地址..gateway@HFORTE
内部异常:{“格式名称无效。”}
Stacktrace: 在 System.Messaging.MessageQueue.StaleSafeSendMessage(MQPROPS 属性,ITransaction 事务)在 System.Messaging.MessageQueue.StaleSafeSendMessage(MQPROPS 属性,IntPtr 事务)在 System.Messaging.MessageQueue 的 System.Messaging.MessageQueue.MQCacheableInfo.get_WriteHandle() .SendInternal(Object obj, MessageQueueTransaction internalTransaction, MessageQueueTransactionType transactionType) at System.Messaging.MessageQueue.Send(Object obj, MessageQueueTransactionType transactionType) at NServiceBus.Transports.Msmq.MsmqMessageSender.Send(TransportMessage message, Address address) in :line 0
我看到传输是 MSMQ - 这是问题所在,MSMQ 和 Azure 是不同的传输协议,如果是,如何解决?