gpt4 book ai didi

azure - 如何使用 Azure 服务总线队列作为服务器/客户端场景

转载 作者:行者123 更新时间:2023-12-03 03:10:16 25 4
gpt4 key购买 nike

我正在尝试重写我的服务器/客户端(基于 TCP 的连接)程序以使其使用 Azure 服务器总线队列,但我无法弄清楚如何“组织”来自/发往不同客户端的队列和消息一种阻止它们被彼此阅读的方法。

让我从这个场景开始:1 - 客户端连接到队列并将登录消息(用户名/密码)放入登录队列中。

2 - 服务器读取消息发现其中一个客户端正在尝试登录,它读取消息,检查提供的详细信息并将结果放入 LOG-IN-RESULT 队列中。

3 - 客户端假设从 LOG-IN-RESULT 中读取,但如何保证它正在读取其结果而不是另一个客户端的结果?

抱歉缺少代码,我猜这个问题纯粹是关于结构/原理的。

谢谢

最佳答案

首先,我不能说你们的基于队列的系统适合登录场景。但就您的情况而言,我认为基于 Azure 可以有三种选择。

<强>1。使用订阅查询(不推荐)

Azure 服务总线具有主题和订阅功能。您可以创建查询来接收完全相同的Guid。我没有测试这种情况下的性能,但它的功能如下。

namespaceManager.CreateSubscription("LoginTopic", "LOG-IN-RESULT", new SqlFilter("RequestGuid = '3872-ACD3-38FB-2311-2002'"));

有关订阅的更多信息,请阅读此文档:link

<强>2。使用Azure存储表

Azure Table 提供查询功能,因此您可以立即使用它,如下 Odata 查询。

https://myaccount.table.core.windows.net/LoginTable(PartitionKey='LOG-IN-RESULT',RowKey='3872ACD338FB23112002')

有关 Azure 表的更多信息,请参阅此 link .

<强>3。使用 Azure Sql 或其他 RDBMS。

我想你已经知道了。只需插入并选择即可。

关于azure - 如何使用 Azure 服务总线队列作为服务器/客户端场景,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39329807/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com