Обновление кеша блокировки IgniteJAVA

Программисты JAVA общаются здесь
Ответить Пред. темаСлед. тема
Anonymous
 Обновление кеша блокировки Ignite

Сообщение Anonymous »

У меня проблема с Ignite
поэтому начните с настройки
Сервер (узл кластера 4)
ресурсы для 1 узла
< ul>
[*]12 процессоров (48 кластеров)
[*]32 ГБ ОЗУ

Конфигурация Ignite (не по умолчанию)
  • режим сервера (без клиента, только сервер)
  • activeJobs = 500
  • publicPoolSize = 500
  • waitJobs = 500
  • messageExpireTime = 3000
  • PersistenceEnabled = false
  • PeerClassLoadingEnabled = true
  • DefaultDataRegionConfiguration.InitialSize = 134217728
  • DefaultDataRegionConfiguration.allocatedMemory = 3221225472

    Конфигурация кэша
  • Атомное
  • реплицированное
приложение
  • spring boot 2.4.5
  • ignite 2.12
  • java 8
  • kafka 2.2 .8.РЕЛИЗ
Приложение работает следующим образом: клиент (сайт или CRM) отправляет запрос на балансировщик, затем балансировщик отправляет на один (случайный) узел, затем создает задание, затем выполняет задание и отправляет ответ клиенту (когда проблема актуальна, время для ответ клиенту не увеличивается)
Итак, перейдем к проблеме.
У меня мало кешей (15), загружайте кеш из БД при запуске кластера и обновить данные из Kafka.
11 кешей обновляются с помощью ignite.dataStreamer
4 с помощью обычного @KafkaListener, потому что мне нужно прослушивать 2 таблицы, но эти таблицы распределяют данные по 4 кешам для большей скорости, когда мне нужно получить данные из кеш (я получаю данные по ключу, а не по запросу). А @KafkaListener работает на 1 узле
и теперь иногда у меня возникают БОЛЬШИЕ проблемы (!!!). В обычном случае я читаю и обновляю запись кэша 1,5 тыс. (MAX_POLL_RECORDS_CONFIG) за 0,1 мс - 5 секунд, но иногда она сломана и не может прочитать ее быстро. Он прочитал 1,5 КБ, начал читать следующие 1,5 КБ и делал это так медленно... затем Кафка начал ребалансировку и повторил это снова... Эта проблема не зависит от подсчета записей в Кафке, потому что он может прочитать 1 миллион записей за 5 минут и прочитать 50 тыс. за 4 часа. Но эта проблема может решиться сама собой без моего участия, через несколько часов она начнет работать нормально
Я не уверен, на что мне следует обратить внимание. Потому что, возможно, это ресурсы (малая вероятность), или архитектура, или версии, или конфигурации. Помогите пожалуйста найти верный путь, ибо на тестовом стенде проблема НЕ ПОВТОРЯЕТСЯ! (плакать)
что я еще пробовал?
  • оптимизировать код
  • изменить конфигурации
  • изменить ОЗУ на сервере
  • поднять другой кластер, создать полный кластер копирования и подключиться подтолкнуть Кафку к обновлению данных, равному производству, но без запроса от клиентов. Запрос от клиента AVG 30 об/с, ответ 75 мс. Проблема не повторяется
на следующих экранах для понимания (если нужно, у меня есть запись полета)
на последних экранах с плохой работой я останавливаю KafkaListener на 4 узлах, загрузите кеш из БД и снова запустите KafkaListener, и он запустится нормально
  • хорошая работа
    Изображение
    Изображение
    Изображение
  • плохая работа
Изображение
[img]https://i.sstatic.net /jtSGJWVF.png[/img]
Изображение
  • перед загрузкой кэш
    2024-11-12 12:46:56.202 Метод UpdateOrCreate завершает 493219071 размер 1500 время 2024-11-12T12:46:56.202
    2024-11-12 12:46:56.203 Метод UpdateOrCreate 493219071 завершен к 11
    2024-11 -12 12:46:56.203 Завершение ProcessStockDetailMessage StockDetailListener 493219071 время 2024-11-12T12:46:56.203
    2024-11-12 12:46:56.203 ProcessStockDetailMessage StockDetailListener 493219071 завершено 11
    2024-11-12 12:46:56.216 ProcessStockDetailMessage start StockDetailListener 777503849 время 2024-11-12T12:46:56.216
    2024-11-12 12:46:56.721 Запуск метода UpdateOrCreate 777503849 размер 1500 время 2024-11-12T12:46:56.721
    2024-11-12 12:50:29.701 [kafka-coordinator-heartbeat-thread | PriceServiceCommonConsumerFactory] AbstractCoordinator — попытка контрольного сигнала не удалась, так как группа выполняет повторную балансировку
    2024-11-12 12:50:44.768 [kafka-coordinator-heartbeat-thread | PriceServiceCommonConsumerFactory] AbstractCoordinator — попытка контрольного сигнала не удалась, так как группа перебалансируется
    2024-11-12 12:52:43.033 Завершение метода UpdateOrCreate 777503849 размер 1500 время 2024-11-12T12:52:43.033< /p>
    2024-11-12 12:52:43.033 Метод UpdateOrCreate 777503849 завершен на 346
    2024-11-12 12:52:43.033 ProcessStockDetailMessage завершает StockDetailListener 777503849 time 2024-11-12T12:52:43.033
    2024-11-12 12:52:43.034 ProcessStockDetailMessage StockDetailListener 777503849 завершено 346

    после загрузки кеша
    2024-11-12 14:08:41.222 ProcessStockDetailMessage start StockDetailListener 1575333558 время 2024-11-12T14:08:41.222
    2024-11-12 14:08:41.363 Запуск метода UpdateOrCreate 1575333558 размер 411 время 2024-11-12T14:08:41.363
    2024-11-12 14:08:43.113 Метод UpdateOrCreate завершает 1575333558 размер 411 время 2024-11-12T14:08:43.113
    2024-11-12 14:08:43.113 Метод UpdateOrCreate 1575333558 завершен к 1
    2024-11 -12 14:08:43.113 Завершение ProcessStockDetailMessage StockDetailListener 1575333558 время 2024-11-12T14:08:43.113
    2024-11-12 14:08:43.113 ProcessStockDetailMessage StockDetailListener 1575333558 завершено на 1
    2024-11-12 14:08:43.282 ProcessStockDetailMessage start StockDetailListener 433660022 время 2024-11-12T14:08:43.282
    2024-11-12 14:08:43.776 Запуск метода UpdateOrCreate 433660022 размер 1500 раз 2024-11-12T14:08:43.776
    2024-11-12 14:08:48.900 Метод UpdateOrCreate завершает 433660022 размер 1500 раз 2024-11-12T14:08:48.900
    2024-11-12 14:08:48.900 Метод UpdateOrCreate 433660022 завершен к 5
    2024-11 -12 14:08:48.900 Завершение ProcessStockDetailMessage StockDetailListener 433660022 время 12.11.2024T14:08:48.900
    12.11.2024 14:08:48.900 ProcessStockDetailMessage StockDetailListener 433660022 завершено 5


Подробнее здесь: https://stackoverflow.com/questions/791 ... che-update
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «JAVA»