Время от времени вот такое окно: "Удалённый хост принудительно разорвал существующее подключение," выдаёт Quik.
Если у вас наблюдаются проблемы с обрывами соединения к серверам брокера, то следуем инструкции ниже.
Конечно, это танцы с бубном и так быть не должно. Я надеюсь, что описанное ниже решение проблемы будет носить исключительно временный характер.
Подобная "незадача" возникает в случае, когда сервер брокера не может дождаться ответа от терминала клиента и отключает его принудительно. За время возникновения данной проблемы я в буквальном смысле изнасиловал своего провайдера (даже двух!), техническую поддержку разработчика терминала Quik и как закономерный итог - пришёл к технической поддержке своего брокера. То есть мы будем говорить не о проблемах провайдера или разработки. Речь пойдёт именно об обрыве подключения, под которыми следует понимать следующее:
после подключения к серверам брокера терминал Quik без каких-либо настроек загружает котировки и работает исправно. После загрузки файла конфигураций с настроенными графиками и индикаторами, терминал клиента на несколько секунд зависает и потом выдаёт сообщение: "Удалённый хост принудительно разорвал существующее подключение quik."
Особенно обидно, когда такое происходит при наличии позиции 🙁
При этом нет возможности ни закрыть позицию, ни переставить стоп. Терминал зависает и в диспетчере задач Windows появляется статус "Не отвечает."
Итак, что в таких случаях делать?
Повторюсь, описанные меры являются определённым танцем с бубном. Сейчас очень плотно общаюсь с технической поддержкой своего брокера и надеюсь, это принесёт свои плоды. Для реализации данного решения требуется, чтобы все акции были разнесены по разным закладкам, то есть графики Сбербанка, Газпрома, Алросы, Роснефти, фьючерсы, опционы и другие инструменты должны находиться на отдельных закладках.
Шаг 0. Настройка соединения
Отключаем автоматическое восстановление соединения. Иначе обрывы и зависания нам не дадут покоя.
Меню Система -> Соединения
Шаг 1. Настройка потока котировок
Обратите внимание на количество используемых инструментов и установите получение котировок только по открытым пользователем таблицам. Это существенно снизит поток получаемой информации с серверов брокера.
Из документации Quik`a:
Исходя из настроек открытых пользователем таблиц» – получать новые значения только по тем инструментам и их параметрам, которые отображаются в открытых пользователем таблицах программы. Если признак включен, то с сервера принимаются параметры по всем инструментам, отображаемым в следующих окнах и таблицах
Меню "Система->Заказ данных->Поток котировок"
Давим кнопку "Установить настройки по открытым таблицам"
...и получаем котировки только по нужным нам инструментам. Давим "Да"
Шаг 1.1 Сохранение изменений
Сохраняем конфигурацию Quik`a в используемый файл.wnd.
Шаг 2. Очистка служебных файлов
Закрываем терминал Quik и удаляем файлы с расширением.dat в корне папки Quik. У меня там хранился 21 файл, у кого-то это число может быть как больше, так и меньше.
Список файлов с расширением.dat папки Quik
Шаг 2.1 Добавление строки -clear
Для очистки служебных файлов с расширениями.log и.dat при каждом запуске терминала добавляем к ярлыку Quik`a строку -clear.
Заходим в свойства ярлыка Quik Параметр позволяет очистить служебные файлы. Давим на "Ок"
Наличие параметра -clear несколько ускоряет загрузку терминала Quik. Однако, после обновления программы параметр -clear придётся заново добавлять к ярлыку файла info.exe. Также это не спасёт после автоматического перезапуска программы.
Заходим в меню "Основные настройки"
Установка признака "На локальной машине." Давим на ОК.
Шаг 2.2 Запуск после внесённых изменений
Запускаем терминал Quik`a, загружаем используемую конфигурацию и пробуем подключиться. Если не помогло, то следуем инструкции далее.
Шаг 3. А если не помогло, то ищем "толстого"
Теперь сохраняем закладку самого "жирного" инструмента в отдельный файл:
Шаг 4. Удаление закладок
Удаляем ранее сохранённую закладку с самым "жирным" инструментом. В моём случае это закладка с графиками акций "Сбербанка."
Удаление закладки с "жирным" инструментом
Шаг 5. Подключение
Подключаемся к серверу брокера и авторизуемся. Если картина не изменилась удаляем закладку с менее "жирным" инструментом и так до тех пор, пока соединение не будет установлено стабильно.
Шаг 6. Сохранение конфигурации со стабильным соединением
После того, как соединение установлено и не разрывается, сохраняем полученный файл конфигураций под другим именем. Например, your_bunny_wrote.wnd.
После установки стабильного подключения к серверу брокера производим обратные действия. Загружаем сохранённые закладки:
Выбираем закладку и давим "Открыть"
Начинаем в обратном порядке - с наименее "жирного" и двигаемся к наиболее "толстому" инструменту. На секунду терминал подвисает, но после этого разрисовывает нужные нам графики. Вуаля!
Повторяем шаг 7 до тех пор, пока не загрузим удалённые закладки всех необходимых инструментов. Благо у меня он один и обрыв соединения происходит только при сохранении в основной файл.wnd закладки с графиками Сбербанка. Хотя их там всего 5 штук.
Перед каждым закрытием терминала Quik сохраняем закладку в отдельный файл, повторяя шаг 3 для каждого "жирного" инструмента.
Мы не знаем, на каком моменте у Quik`а возникнет желание оборвать соединение. Это возможно после очередного сохранения и загрузки файла. Поэтому рекомендую иметь два таких файла, например Сбербанк и Сбербанк_new, сохраняя изменения по очереди то в один, то в другой файл. Таким методом мы уменьшим вероятность потери данных занесённых на основной график инструмента.
Данная ошибка с кодом 10054, критического характера, проявляется у пользователей в момент проведения записи. Чаще всего встречается у старых релизов 1С 8.2.
Скриншот ошибки 10054:
Вообще, появление этой ошибки, говорит о том, что происходит неожиданное для разработчика сервера 1С действие:
- приходит некорректный запрос;
- некоректные данные;
- запрос вызывающий большую выборку, с которой он не может встретится;
- частный случай: номер документа был больше, чем длина заданная в нумераторе;
- проверьте работу при отключенных антивирусах или firewall-е
Исправление:
Заключается в локализации проблемы, насколько это возможно:
- определении вида документа,
- регистра, с которым происходит ошибка,
- пользователя,
- компьютера.
Затем делается копия базы (средствами 1С или СУБД).
Если перезапуск сервера, решает проблему, продолжаете наблюдение. Добавьте скрипт рестарта службы ночью в нерабочее время.
Если перезапуск циклический проверьте не настроен ли у вас автоматический перезапуск в свойствах кластера:
Проводится тестирование и исправление с пересчетом итогов и реиндексацией таблиц.
Поднимается прежняя копия базы, в которой проблема наблюдается, сверяются находятся отличия, возможно это натолкнет на причину.
Если решить проблему не удается, следующим шагом будет настройка и анализ технологического журнала.
Что может выяснится в процессе:
Если нагрузка на сервер, на грани 100%, рассмотрите вариант разделения сервера базы данных и сервера 1С, обычно это замедляет, но стабилизирует работу (в 8.3 есть механизм общей памяти, который ускоряет взаимодействие сервера и).
- Добавьте память на сервер, если это возможно.
- Возможным решением, будет замена сервера на 64 битный, но для начала проверьте работоспособность у знакомых, где он стоит.
- Не помешает такая же проверка и на 32 битной, чтобы понять ошибка в данных или конкретном сервере.
- Выгрузка с загрузкой может устранить проявление.
- Крайней мерой рассмотрите перенос данных через конвертацию данных или догрузка данных в рабочую копию (длительная процедура)
Проверьте журналы Windows на предмет системных ошибок:
- в работе сети
- оборудования
- приложения
- перезапустите роутеры,свитчи (редко, но бывает проблемы именно в них)
Если проблема не решена в короткое время, возможно вам потребуется помощь сертифицированных администраторов или экспертов 1С.
Дорогие друзья, сегодня мы с вами поговорим о такой ошибке, как окно со следующим сообщением в 1С: «Удалённый хост принудительно разорвал существующее соединение». Такая проблема часто сопровождается и кодом, который может помочь программистам быстрее идентифицировать причину неполадки. Чаще всего она возникает у клиентов с большим числом сотрудников, подключённых к серверу.
Причиной же ошибки в большинстве случаев служит перезапуск рабочего процесса. А, собственно, причин такого поведения может быть немаленькое количество. Чаще всего это происходит из-за обычного перезапуска по расписанию. Из-за увеличения файла rphost, следствием которого является уменьшение скорости работы, администраторы пытаются исправить это с помощью перезапуска рабочих процессов. А следствием этого служит отключение пользователей, так как появляется дополнительная нагрузка на сервер .
Команда разработчиков программного продукта 1С сам же рекомендует использовать только один рабочий процесс, если подключено около 100 пользователей. Если вы не можете решить проблему , то попробуйте воспользоваться некоторыми способами решений. Итак, давайте узнаем, что делать, если возникает ошибка «Удалённый хост принудительно разорвал существующее соединение».