Каждая проблема имеет решение. Единственная трудность заключается в том, чтобы его найти.
Эвви Неф


В этой статье расскажу о проблеме, с которой столкнулся в Июне 2015 . Проблема состояла в том, что в одно и тоже время, стали происходить пропажи соединения с терминалом Jforex . На решение этой проблемы было потрачено 2,5 месяца .

Каким образом происходило решение этой проблемы и как были выявлены причины . Будут подробно описаны мной сегодня . По крайней мере, кто-то сохранит кучу времени при наличии подобной проблемы .

Поиск решения проблемы напоминал мне блуждание по лабиринту . Но, до того момента пока не было найдено решение.. Как , оказалось была основная причина и несколько второстепенных на качество соединения и загрузку канала связи . Итак, обо всем по порядку .


Пропажа коннекта

В начале Мая 2015 года был сменен интернет провайдер . Стал использоваться интернет провайдер предоставляющий спутниковый интернет . Главной особенностью данного провайдера пинг от 700 до 820 мл секунд.
Пропажа соединения наблюдалась в основном во временном отрезке с 10-25 и 10-40 . Интересным моментом ,оказалось после данного ценового отрезка в основном свзяь не пропадала .

Протоколирование логов указывало на разрыв со стороны удаленного хостинга .( Конечно, как впоследствии оказалось, удаленный хостинг был не причем )



09:25:55.840 ERROR com.dukascopy.dds4.transport.client.b - Exception caught
java.io.IOException: Удаленный хост принудительно разорвал существующее подключение

09:33:37.609 WARN com.dukascopy.dds2.greed.a.b - DISCONNECTED : [EXCEPTION_CAUGHT]
09:33:40.608 INFO com.dukascopy.dds2.greed.a.b - Sleeping for reconnect : 0
09:33:40.601 ERROR com.dukascopy.dds4.transport.client.b - Exception caught
java.io.IOException: Удаленный хост принудительно разорвал существующее подключение .


Так все это выглядило у меня на рабочем столе

  • Disconnect Jforex

Обрыв соединения .


Обновления чартов



Мной были написаны письма как в тех поддержку Dukascopy ( Ребятам респект а именно Нормунду ,Вадиму ,Александру и другим с которыми общался все время поиска решения проблемы ) так и в тех поддержку спутниковой связи . Было отправлено более 200 писем . Да , уж простите меня ребята за назойливость .

Тех поддержка Dukascopy, ответила что причина скорее всего в плохом качестве инета из-за высокого пинга . Тех поддержка спутниковой связи , ответила что причина скорее всего в удаленном хостинге . Со стороны обоих тех поддержек было все логично , но не решало для меня проблему почему идут обрывы связи .

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

Тех поддержка спутниковой связи пинговала модем установленный у меня и также не наблюдала проблем в канале связи .

Со своей стороны, искал ответ почему идет обрыв строго в определенном временном отрезке. Охотно допускаю, обе службы тех поддержки, не очень рады были моей назойливости .Так как, допускаю с их стороны проблема была очевидно .Как показало продолжение поиска путей решения проблемы . Все выдвигали неверные предположения насчет обрыва связи .


  • Интернет


  • GWXUX.EXE

В начале июля 2015 года появилось окошечко с предложением обновится до виндоус 10 , несмотря на то что у меня обновления были отключены . Фоновые обновления работали + помощник перехода до Windows 10 процесс (GWXUX.EXE) .

В тоже время также были установлены обновления KB3080149 и KB3075249 средство сбора телеметрии в Windows 7/8/8.1 (собирающие информацию о пользователе) .И тут сопоставив время когда начились проблемы со связью, оказалось что они как раз пришлись на появления помощник перехода до Windows 10 и средств сбора телеметрии .

Так как фоновые обновления Windows иногда полностью занимают канал ( в моем случае это был спутниковый канал), ОС Windows идут в высоком приоритете, причем было замечено, что даже если устанавливать конкретное время на проведение обновлений, вероятность загрузки канала при появлении нового обновления (вне установленного времени) остается .

Загруженность канала выявил с помощью программы TCPView для Windows

TCPView для Windows программа выводит на экран списки конечных точек всех установленных в системе соединений по протоколам TCP и UDP








  • Обновление

В случае разрешения на обновление виндоус(если даже стои не загружать а уведомлять ) + фоновая интеллектуальная служба передачи(BITS) нагружают svhost.exe до 50 % забивая канал ( в данном случае спутниковый интернет чуствителен к таким нагрузкам , как впрочем и любой другой ) . Это оказалось еще не все , Microsoft Security Essentials грузил от 20 до 30% svhost.exe .



После того, как были отключены службы обновление и фоновая интеллектуальная служба передачи(BITS ) +плюс удален Microsoft Security Essentials . Впервые с серередины июня месяца пропажи соединения с терминалами в период между 10-25 и 10-40 прекратились .

Как оказалось всему виной работа фоновых обновлений несмотря на то, что они были отключены как я думал и обновлялся комп только на выходных, оказалось это не так.

  • Отключаем службы

Какие службы мной отключены .


JFOREX PLATFORM

Программа Process Explorer для Windows список активных процессов



Нагрузка до запуска


Нагрузка после запуска


  • Загрузка процессора
  • Используется памяти


Второй причиной пропажи коннекта является загрузка процесса и памяти на более чем 95 % .






Критическое значение.



Как только идет достижение критических значений, возрастает вероятность обрыва соединения и обновления чартов .





  • Выделить для java больше оперативной памяти.

Ппрописываем сколько собрались задействовать операционной памяти . Для х32-битных систем предел 1024m Пуск-Мой компьютер – Панель управления – Java Control Panel – Java - жмем Viev – в панеле Java Runtime Environment Settings – строка Runtime Parameters –вводим выбранные Вами значения -Xms512m -Xms1024m -Xms2048m -Xms3072m

И не забываем нажать "Оk" и "Apply прежде чем закрыть Java Control Panel .

FX Marketplace Platform Жмем Advanced settings и выбираем необходимый Вам размер памяти.



  • Температура

Нагревание процессора свыше 75 градусов цельсия может привести к обрыву соединения .

Программа позволяющая следить за температурой

http://www.piriform.com/speccy





Вот таким образом, все сложилось в один пазл и удалось определить причины обрыва соединения . Мне на это понадобилось около 2.5 месяцев .






Вывод

Вы наблюдаете у себя обрывы соединения с торговым терминалом !?


1.Проверьте не забивают ли службы обновления ,фоновая интеллектуальная служба и средства телеметрии Ваш канал связи .

2.Проверить загрузку процессора и сколько используется памяти .

3.Проверить температуру процессора .

4.Проверьте работу торгового терминала через
VPS .








С уважением Skif.
Translate to English Show original