Cassandra Native Transport Запросить тюнинг - PullRequest
0 голосов
/ 21 мая 2018

Согласно исследованию для масштабирования Native Transport Request, я настроил следующие параметры, и приложение, кажется, масштабируется хорошо, но я не понимаю следующее,

1) Я настроил native_transport_max_threads: 256 Насколько я понимаю, он обеспечивает параллельную обработку запросов, поэтому он должен быть равен общему числу правильных ядер. Почему по умолчанию он равен 128?

2) Я установил это значение как -Dcassandra.max_queued_native_transport_requests=5192 В чем проблема при увеличении этих значений?

1 Ответ

0 голосов
/ 21 мая 2018

1) Максимальное количество одновременных запросов, которые он может координировать, не обязательно ограничение количества запросов, которые он выполняет.Эта координация включает в себя такие вещи, как ожидание реплики (определяется уровнем согласованности) для возврата данных.Это не активная работа, поэтому нет никаких причин ограничивать количество ядер.

2) Обратное давление в вашем приложении, когда больше, чем ваш координатор настроен для одновременной обработки, применяется в памяти вашего координатора.Затраты здесь - это куча давления и памяти, доступной системе, а также время ожидания в очереди, добавленное к вашей задержке.

По вашему другому вопросу , я думаю, вы, возможно, слишком сосредоточены наэтап NTR, когда проблема вероятна в вашей модели данных / запросах.Если увеличение этой очереди не помогло, вероятно, это не причина.Как правило, единственный сценарий, когда NTR в очереди - это проблема, когда вы отбрасываете МНОГИЕ крошечные запросы одновременно (обычно более одного клиента может сделать в качестве ограничения по умолчанию 1024 на хост по умолчанию).Это практически единственный сценарий, который помогает увеличить предел очереди для сглаживания пиков.Если это не помогает, то используйте прокси-гистограммы / tablehistograms / tablestats, чтобы сузить таблицу и запрос, вызывающий давление.Если это не очевидно, это может быть проблема, связанная с GC, или и то, и другое.

...