Nano Hash - криптовалюты, майнинг, программирование

Как лучше всего отслеживать сообщения служебной шины Azure по нескольким очередям / темам

Например:

  1. Сообщение добавлено в тему из приложения .net
  2. 2 подписки на тему будут условно добавлять сообщения в очередь (Очередь A, Очередь B, ...)
  3. Каждая очередь из шага 2 будет иметь соответствующие функции, которые берут сообщение и создают из него новое, а затем добавляют его в очередь Z
  4. Другая функция подписывается на Queue Z и отправляет сообщение через SendGrid (или другого провайдера).
  5. Другая функция - это HTTP-триггер, в который Sendgrid отправляет все результаты (приняты, доставлены, открыты и т. Д.)

На шаге 4 мы можем добавить настраиваемые свойства, и я думаю, что именно здесь нам нужно получить некий уникальный идентификатор, который вернется как часть ответа, который мы получим на шаге 5.

Конечная цель - иметь возможность просматривать данные, полученные на шаге 5, и связывать их с сообщением, созданным на шаге 1. Как лучше всего связать шаги 1, 2 и 3, чтобы на шаге 4 можно было добавить уникальный идентификатор?


Ответы:


1

Я не уверен на 100%, но, судя по тому, что вы описали, я считаю, что вы пытаетесь реализовать что-то похожее на шаблон Fan out фреймворка Durable Functions:

введите описание изображения здесь

https://docs.microsoft.com/en-us/azure/azure-functions/durable/durable-functions-cloud-backup?tabs=csharp

02.07.2020
  • В вашем примере я бы хотел связать сообщения в очереди слева от F2 с сообщениями в очереди справа от F2. Я мог добавить настраиваемое свойство в F1, а затем убедиться, что другие функции передают это, но это звучит в лучшем случае сомнительно. 02.07.2020
  • Я не вижу другого пути, вам нужно как-то соотнести вещи, если вы это имели в виду 02.07.2020
  • Извините, я не понимаю, как это решение позволяет решить проблему, я что-то упустил? 02.07.2020
  • Я понял, что Z придется ждать выполнения каждой функции с шага 2, поэтому Z в приведенном выше примере будет f3. 02.07.2020
  • Новые материалы

    Кластеризация: более глубокий взгляд
    Кластеризация — это метод обучения без учителя, в котором мы пытаемся найти группы в наборе данных на основе некоторых известных или неизвестных свойств, которые могут существовать. Независимо от..

    Как написать эффективное резюме
    Предложения по дизайну и макету, чтобы представить себя профессионально Вам не позвонили на собеседование после того, как вы несколько раз подали заявку на работу своей мечты? У вас может..

    Частный метод Python: улучшение инкапсуляции и безопасности
    Введение Python — универсальный и мощный язык программирования, известный своей простотой и удобством использования. Одной из ключевых особенностей, отличающих Python от других языков, является..

    Как я автоматизирую тестирование с помощью Jest
    Шутка для победы, когда дело касается автоматизации тестирования Одной очень важной частью разработки программного обеспечения является автоматизация тестирования, поскольку она создает..

    Работа с векторными символическими архитектурами, часть 4 (искусственный интеллект)
    Hyperseed: неконтролируемое обучение с векторными символическими архитектурами (arXiv) Автор: Евгений Осипов , Сачин Кахавала , Диланта Хапутантри , Тимал Кемпития , Дасвин Де Сильва ,..

    Понимание расстояния Вассерштейна: мощная метрика в машинном обучении
    В обширной области машинного обучения часто возникает необходимость сравнивать и измерять различия между распределениями вероятностей. Традиционные метрики расстояния, такие как евклидово..

    Обеспечение масштабируемости LLM: облачный анализ с помощью AWS Fargate и Copilot
    В динамичной области искусственного интеллекта все большее распространение получают модели больших языков (LLM). Они жизненно важны для различных приложений, таких как интеллектуальные..