узлы кассандры не отвечают из-за большого числа запросов Native-Transport-Requests - PullRequest
0 голосов
/ 06 сентября 2018

Это уже второй раз, когда я пишу об этой проблеме.

Каждые пару дней мы отмечаем большое количество ACTIVE "Native-Transport-Requests" (около 100-200) в выводе "nodetool tpstats". Это происходит случайным образом на паре узлов в одном DC (у нас есть 6 узлов). Когда это происходит, приложение работает медленно.

Мы начали замечать вышеупомянутую проблему после развертывания новых микро-сервисов в производстве.

Мы развернули те же микросервисы в другом производственном кластере, но у них нет описанной выше проблемы.

мы используем версию Apache Cassandra 2.2.8.

Вот настройки, которые у нас уже есть в кластере.

В файле Cassandra.yaml у нас есть native_transport_max_threads: 1024 . В Cassandra-env.sh файле мы имеем JVM_OPTS = "$ JVM_OPTS -da -server -Djava.io.tmpdir = / data1 / tmp -Dcassandra.max_queued_native_transport_requests = 4096

Когда я проверяю количество входящих соединений с помощью команды ниже на всех узлах

netstat -tupawn | grep 9042 | grep УСТАНОВЛЕНО | wc -l

Я вижу более 1131 соединения на узел.

у нас нет высоких GC пауз. Я вижу, что пауза GC ниже 400 мс на всех узлах.

  1. Теперь я должен увеличить native_transport_max_threads до 1200? потому что у нас есть 1131 соединение на узел? и max_queued_native_transport_requests для 5192?

  2. В другом кластере у нас есть native_transport_max_threads: 512, а число входящих CQL-соединений больше 5000+, но мы не видим описанную выше проблему в этом кластере.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...