Ошибки подключения mysql, когда клиент-серверная пропускная способность исчерпывается

Если Вы думаете его загрузка IO, используйте lsof для определения то, что рычаги в локальную файловую систему.

0
задан 2 January 2014 в 20:12
2 ответа

Если соединение действительно насыщено до такой степени, что оно больше не может загружать данные по конвейеру, вы потеряете пакеты. Если достаточно пакетов для одного и того же соединения будет потеряно за короткий период времени, то это соединение, вероятно, будет разорвано из-за известной механики TCP.

Как решить эту проблему ...

Во-первых, очевидное: получить соединение, которое может обрабатывать трафик. Если он перегружен, он перегружен.

Во-вторых, если возможно, вы можете / должны установить выделенное соединение для подключения к базе данных. Разделите трафик, чтобы заполнение одного гигабитного канала не мешало работе другого.

В-третьих, выясните, что на самом деле использует всю полосу пропускания. Если это нежелательный трафик, заблокируйте его. Если он поступает из Интернета в целом, попросите вашего провайдера восходящего потока / полосы пропускания заблокировать его.

0
ответ дан 5 December 2019 в 14:28

Из-за ошибочного соединения с сервером mysql соединение прерывается сервером, вероятно, из-за «плохого рукопожатия». вы увидите эту ошибку, потому что сервер решит больше ничего не записывать в сокет, поскольку он ничего не видел со стороны клиента, и установит флаг «net-> error = 2» (это можно увидеть в функции 'my_real_read 'в net_serv.cc).

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

Тайм-аут соединения MySQL довольно мал. Я считаю, что по умолчанию на 5 секунд вы можете увеличить его в my.cnf с помощью системной переменной "connect_timeout" со значения по умолчанию 5 до 20. Это должно помочь, после того как соединение будет установлено, вы отключитесь по тайм-ауту в насыщенной сети. Установите второй сетевой путь к серверу БД.

0
ответ дан 5 December 2019 в 14:28

Теги

Похожие вопросы