Полезна ли асинхронная функция в случае разрушения пула буферов? - PullRequest
1 голос
/ 02 мая 2019

Я делаю проект в Apache Flink, где мне нужно вызвать несколько API, чтобы достичь своей цели.Результат каждого API необходим для работы следующего API.Также, как я делаю это на KeyedStream, тот же поток будет применим для нескольких данных одновременно.

ниже копать.может объяснить сценарий

                   /------API1---API2----
   KeyedStream ----|------API1---API2----
                   \------API1---API2----

Поскольку я делаю все это, я получаю исключение, говорящее "Буферный пул уничтожен" после того, как задание какое-то время выполняется.Это связано с вызовом API, мне нужно использовать асинхронную функцию?Пожалуйста, предложите.Заранее спасибо.

1 Ответ

0 голосов
/ 02 мая 2019

несколько вещей, которые обычно нужны, чтобы помочь ответить на вопросы о Флинке ...

  1. Какую версию вы используете?
  2. Как у вас это работает (из IDE, кластера YARN, автономных и т. Д.)?
  3. Что такое полная трассировка стека для исключения?
  4. (часто) Можете ли вы поделиться своим кодом?

Но на высоком уровне упомянутое вами сообщение «буферный пул уничтожен» не является основной причиной аварийного переключения, это всего лишь побочный продукт Flink, пытающийся завершить рабочий процесс после возникновения ошибки. Поэтому вам нужно копаться глубже в журналах (как правило, журналы диспетчера задач находятся там, где вы будете искать в первую очередь).

...