Azure服务总线C#体系结构
问题描述:
我知道Azure服务总线是一个消息传递系统。但是我不明白的是这如何适合CRUD应用场景。可以说我有一个Person类有一些属性/ getter/setter方法。当用户想要创建一个新人时,“程序”将创建一个新的人物对象并将其添加到队列中。 “后端”代码将如何显示。它必须捡起这个请求并将其添加到数据库中,但它现在如何呢?Azure服务总线C#体系结构
答
“后端”代码的外观如何。它必须捡起这个请求并将其添加到数据库中,但它现在如何呢?
当新消息添加到队列中时,您可以创建WebJob或Azure函数来处理队列消息。然后,您可以反序列化消息中的对象并将其添加到数据库。
服务总线队列触发器就像这样。
public class Functions
{
public static void ProcessQueueMessage([ServiceBusTrigger("inputqueue")] string message, TextWriter logger)
{
//deserialize the object from the message and add it to database.
}
}
欲了解更多信息,以下链接供您参考。
它知道这一点,因为你告诉它是如何工作的:)你在队列中添加一条消息,后端拾取消息并处理它。有几种方法可以解决这个问题:对于多种类型的操作,可以有多个队列,一条消息可以包含它应该触发的动作,可以使用-1(或其他任何其他db无效值)的id来指示你想添加实体...有很多选项。 –
另外,您添加到队列中的消息可以是序列化数据。我过去使用过JSON字符串,所以它们也是人类可读的。 “监听”该队列中的消息的“工作人员”将反序列化该对象,并执行其设计的特定作业。 – reckface