Интеграция производителя Kafka Python с веб-приложением django

Вы не можете придать его (сохраняя ссылочный идентификатор) - это будет небезопасно. Например:

public interface IFruit {}

public class Apple : IFruit {}
public class Banana : IFruit {}

...

List<Apple> apples = new List<Apple>();
List<IFruit> fruit = apples; // Fortunately not allowed
fruit.Add(new Banana());

// Eek - it's a banana!
Apple apple = apples[0];

Теперь вы можете преобразовать List<Apple> в IEnumerable<IFruit> в .NET 4 / C # 4 из-за ковариации, но если вы хотите List<IFruit>, вам придется создайте новый список. Например:

// In .NET 4, using the covariance of IEnumerable<T>
List<IFruit> fruit = apples.ToList<IFruit>();

// In .NET 3.5
List<IFruit> fruit = apples.Cast<IFruit>().ToList();

Но это not то же самое, что и приведение исходного списка, потому что теперь есть два отдельных списка. Это безопасно, но вам нужно понять, что изменения, внесенные в один список , не будут отображаться в другом списке. (Модификации объектов , которые будут отображаться в списках, конечно.)

0
задан cricket_007 18 January 2019 в 20:33
поделиться

1 ответ

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

Но веб-сервер, состоящий из клиента Kafka, ничем не отличается под уровнем HTTP от обычного консольного приложения; Вы принимаете входящий запрос, десериализуете его, затем, при необходимости, анализируете, затем снова сериализуетесь для вывода Kafka, а затем, необязательно, возвращаете что-то пользователю.

Если вы действительно спрашиваете: «Кафка с HTTP-запросами возможна», независимо от языка и платформ, то, конечно, Confluent REST Proxy работает аналогично, только на Java 116]

Что касается отслеживания веб-приложений, я бы посоветовал изучить Divolte Collector

0
ответ дан cricket_007 18 January 2019 в 20:33
поделиться
Другие вопросы по тегам:

Похожие вопросы: