Могу ли я использовать igniteQueue в другой функции cache.invoke ()?
В точной функции Ignite Service A:
cacheA.invoke(record){ // do process to record
igniteQueue.put(processed_record);
}
В точной функции Ignite Service B:
saved_processed_record = igniteQueue.take();
Он работает плавно, когда TPS низкий, но когда я работаю с высоким TPS, иногда в журнале появляется сообщение «Возможное голодание в полосатом пуле»,
Смотрите мой предыдущий пост:
Служба Ignite зависает при удалении кэша вызовов в процессоре вызова другого кэша «Возможное голодание в чередующемся пуле»?
Похоже, что я использую igniteQueue в cache.invoke также не правильно по сравнению с использованием ignite cache в cache.invoke?
Так что, если я не могу использовать очередь зажигания в cache.invoke (), есть ли лучший способ сделать это? Я пытаюсь использовать другую очередь сообщений (kafka или redis) вместо воспламенения очереди в кэше, но мы знаем, что Ignite говорит, что это также очередь сообщений, использование kafka в invite ignite кажется очень странным, как я могу использовать чистый ignite для достижения этой цели?