Как отслеживать сеанс через несколько веб-приложений, несколько микросервисов

Нет проблем!

В ASP.Net вы будете обрабатывать эту проверку в Javascript. Таким образом, ваш элемент ввода будет объявлен следующим образом:

@Html.TextBoxFor(m => m.MyField)

Затем вы будете использовать Javascript для выполнения проверки путем обработки события keyup.

e.preventDefault () is эквивалент вашего e.Handled в WinForms:

document.getElementById('@Html.IdFor(m => m.MyField)').onkeyup = function (e) {
    if(~[65, 67, 71, 84, 97, 99, 103, 116, 8].indexOf(e.keyCode || e.which)) {
        e.preventDefault();
        return;
    }
};

Удачи!

1
задан Kannaiyan 20 January 2019 в 06:43
поделиться

2 ответа

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

Например, ваше веб-приложение отправляет HTTP-запрос (вызов API REST) ​​первому микросервису (A), который обнаруживает, что у запроса нет идентификатора корреляции (заголовок x-correlationid), и добавляет его, а затем сохраняет эту корреляцию. id в текущий контекст вызова / сеанса и перенаправляет его на все последующие вызовы API другим микросервисам. затем, когда все другие микросервисы будут следовать той же логике, они также будут добавлять / использовать идентификатор корреляции, у вас будет возможность отслеживать запросы по всем микросервисам в системе.

этот шаблон используется многими инструментами APM (мониторинг производительности приложений). и после того, как все ваши журналы агрегированы в одном месте, вы можете отфильтровать ваши запросы по определенному идентификатору корреляции, чтобы увидеть полный след конкретного пользовательского запроса / операции.

0
ответ дан Bishoy 20 January 2019 в 06:43
поделиться

Сам Kubernetes не поддерживает трассировку запросов, но вы можете использовать Istio вместе с Kubernetes, который имеет функцию Distributed Tracing .

Короче говоря, вашему приложению потребуется повторно отправить подключенные заголовки, и Istio обнаружит его, соберет информацию со всех ваших служб и покажет отслеживание ваших запросов.

Кроме того, он поддерживает Mesh, поэтому теоретически ваше приложение может работать немного быстрее и безопаснее (из-за сетевых правил).

Вы можете прочитать об Istio здесь , о трассировке здесь и здесь - инструкция о том, как настроить его в Kubernetes.

0
ответ дан Anton Kostenko 20 January 2019 в 06:43
поделиться
Другие вопросы по тегам:

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