Медвежий угол в 30 км от МКАД
Есть много мест куда не дотянулась качественная связь даже в ближайшем Подмосковье, для теста возьмем модем Yota, подключенный к ноутбуку через USB. В точке тестирования прием на две-три палки, но именно Yota здесь держит интернет связь лучше чем МТС. Задержка по ping 30-40 мс до www.mos.ru и периодически бывают request timeout . В общем ничего хорошего, даже в соотношение сигнал шум лезть не хочется.
Пробуем ресурс с RDP сеансом до него 50 мс по проводам – значит общая задержка по мобильному каналу будет 80-90 мс по мобильному каналу. Работает в целом удовлетворительно
Далее попробуем ресурс с RDP сеансом, до которого 150 мс по проводам – значит общая задержка по мобильному каналу будет 180 – 190 мс. Работает крайне медленно, с постоянными разрывами связи
Очевидно, что в последнем случае у нас всего четыре альтернативы
- Тонкий клиент по TCP (соединение напрямую к кластеру 1С) 
- Тонкий клиент по HTTP\HTTPS (сейчас практически безальтернативно через Apache) 
- Веб клиент (сейчас практически безальтернативно через Apache) 
- Репликация на уровне 1С управление распределенными базами данных – работа с локальной базой для удаленных офисов. 
Если у Вас есть VPN (виртуальная частная сеть) Вы можете использовать любой вариант, если без VPN то только протокол HTTPS с необходимым уровнем безопасности.
В нашем случае VPN есть, проверим работу Тонкого клиента с ресурсом до которого ping будет 190-210 мс по мобильной связи с периодическими Request time out. В качестве теста используем простой код на циклическое открытие форм. По сути это запрос к субд, передача данных через кластер 1С, веб сервер, и открытие формы на клиенте.
Замеры = Новый Массив;
	ОбщееВремя = 0;  
	Для каждого ТекДок Из МассивДокументов Цикл
		ПараметрыФормыДокумента = Новый Структура;
		ПараметрыФормыДокумента.Вставить("Ключ", ТекДок);
		ВремяНачала = ТекущаяУниверсальнаяДатаВМиллисекундах();
		ФормаДокумента = ОткрытьФорму("Документ.СУУ_СделкаСырье.Форма.ФормаДокумента", ПараметрыФормыДокумента);  
		ПараметрыФормыРегистра = Новый Структура;
		СтруктураОтбора = Новый Структура;
		СтруктураОтбора.Вставить("Регистратор", ТекДок);
		ПараметрыФормыРегистра.Вставить("Отбор", СтруктураОтбора);
		ОткрытьФорму("РегистрБухгалтерии.Хозрасчетный.ФормаСписка", ПараметрыФормыРегистра, ФормаДокумента, , ФормаДокумента.Окно, , , );//РежимОткрытияОкнаФормы.
		ФормаДокумента.Закрыть();
		ТекущийЗамер = ТекущаяУниверсальнаяДатаВМиллисекундах() - ВремяНачала;
		ОбщееВремя = ОбщееВремя + ТекущийЗамер;
		Замеры.Добавить(ТекущийЗамер);
	КонецЦикла;
Странный выбор между TCP или HTTP
Посмотрим результаты
Первое что бросается в глаза это разница открытия форм по проводам и беспроводной связи.
Казалось бы в первом случае задержка тоже немалая 150- 160 мс , но за счет стабильности (отсутствия Request timeout) результаты отличаются в разы - 1 секунда против 4-9 секунд на открытие формы.
Вывод 1. Важна не столько задержка в канале, а сколько стабильность (отсутствие Request timeout по ping) в канале.
Второе что видно – это преимущество работы по TCP против HTTP в плане скорости. Это объяснимо – поскольку промежуточное звено в виде веб сервера дает свою задержку. Просто посмотрите на архитектуру
Работа через веб сервер
Работа через кластер 1с

Вывод 2 На стабильных линиях связи по VPN протокол TCP в общем случае обеспечивает лучшую скорость в режиме Тонкого клиента.
 Тут нужно дать оговорку, на моем  стенде Apache 2.4 на Linux установлен с настройками  по-умолчанию.
 Возможно тонким тюнингом, расположением его на сервере с более высокой тактовой частотой и подобными мероприятиями можно нивелировать различие. Может кто-нибудь уже знает ответ?
 С точки зрения настроек все устроено просто.
 В apache httpd.conf
 Прописан LoadModule _1cws_module “opet/1cv8/x86_64/8.3.23.1739/wsap24.so”
 И прописан Alias на публикацию с default.vrd файлом. Как конкретно идет взаимодействие с кластером в документации не указано.
 1C по http имеет важное преимущество (по крайней мере в релизе 1С:Предприятие 8.3 (8.3.23.1739) ) – устойчивость к обрывам связи!
 Т.е. если все плохо выскакивает сообщение

1C по TCP наоборот зависает на 10 мин и только потом переподключается

Вывод 3. Предельным комфортным вариантом качества линии связи для работы тонкого клиента 1С является задержка 150-200 мс . При этом Request timeout быть не должно. Если вероятность Request timeout существует нужно однозначно использовать http\https протокол.
Результаты тестов можно посмотреть тут
В таблице зафиксированы миллисекунды. Последние 4 столбца показывают еще один странный эффект – если поставить в описании базы данных «низкую скорость соединения» вместо обычной результаты получаются хуже хотя на стабильность это не влияет. С чем это связано не знаю, но возможно какая то недоработка в клиенте 1С
До новых встреч на нашем канале t.me/Chat1CUnlimited , хороших Вам связей и связи.
Комментарии (13)
 - 1CUnlimited Автор19.11.2024 19:47- То есть простое открытие формы на достаточно неплохом пинге (150-160мс, это не очень, но и не критично) по HTTP в 1С - 9 секунд ? - Вы невнимательно читаете 150-160 мс это по проводам без timeout . Там открытие не более 1 сек. Если добавить задержку плохой мобильной связи c тайм аутами 40 50 мс это уже 200 мс с тайм аутами да уже открытие увеличивается в разы - Но чтобы сравнивать fusion с 1с нужно иметь тонкий клиент , который представляет не простенький веб как в демке, а rich gui application со сложными формами. - Плюс одинаково плохой канал. Иначе перезапросы не смоделировать - Я поэтому веб клиент 1с и не гонял поскольку там упрощённые формы под веб 
 - satoo19.11.2024 19:47- Почему апач указывается как безальтернативный вариант? Чем технически IIS плох, если без холивара?  - miroshnichenko_me19.11.2024 19:47- IIS не плох. Апач для меня хорош тем что она работает не только на windows. Как результат научившись раз могу работать с ним на разных платформах. 
  - 1CUnlimited Автор19.11.2024 19:47- Из за санкций. Его IiS только вне РФ можно использовать т.е. фактически скоро будет такой же экзотикой как 1с на db2  - satoo19.11.2024 19:47- Погодите, а почему при наличии санкций тут рассматривается rdp?  - 1CUnlimited Автор19.11.2024 19:47- ну потому что RDP это не только реализация Microsoft , а еще открытый для реализации стандарт [MS-RDPBCGR]: Remote Desktop Protocol: Basic Connectivity and Graphics Remoting | Microsoft Learn например в Linux есть xrdp к которому можно коннектится обычным microsoft rdp клиентом или любым другим. IIS насколько я знаю не вышел за рамки Windows, а в рф с этим банальная проблема - вы не можете купить новые лицензии. - С 1С, которая хорошо поддерживает связку Linux Postgres , проще развертывать новые экземляры или кластер (кстати она может на миксе Linux Win ) на Linux со всеми вытекающими. Санкции они надолго Прогноз на 2023 год. Когда ЭТО закончится. Что ждет нас в 2023 году. | 1CUnlimited | Дзен поэтому лучше бежать в будущее а не цепляться за прошлое 
 
 
 
 - nitro8019.11.2024 19:47- Недавно столкнулся с проблемой, которую до конца не мог победить. - Дано: компьютер, выполняющий роль эдакого сервера с 1с, базы файловые, бухгалтер работает на этом компьютере как обычно, в режиме толстого клиента, а вот ещё сотрудник, тот подключается уже через Apache. - И всё работало года 2 без претензий, а с весны начались проблемы: сотрудник не может подключиться к базе, т.е. запускает её и на этом всё, висит, пока не закроешь. - Чаще всего нужно просто перезагрузить Apache, но не всегда помогает. В журнале вебсервера в логах заметил только одно непонятное: - - допустим, одна база называется metal - - другая называется derevo - И если с соседнего компьютера запускать бд metal, то всё работает. А если запускать derevo - видно, что обращение к вебсерверу идёт по-прежнему к metal. - Переустановил вебсервер на свежую версию, не помогло. Перенастроил вебпубликацию, не помогло. Относительно помогло только на основном компьютере почистить кеш 1С. С тех пор пару месяцев только раз или два обращались с вопросом недоступности баз, но хотелось бы понять, что это и как вылечить. - ЗЫ: вебсервер банально установлен, распакован, httpd запущен как сервис и на этом вся настройка его закончена.  - 1CUnlimited Автор19.11.2024 19:47- Как понимаю список баз получается через файлики ibases.v8i из профиля локального ПК? а не через вебсервис. Тогда нужно мониторить строку соединения, может разные файлы с разной строкой или из общих файлов берутся. Т.е. если апач получает уже metal на вход значит он не виноват  - nitro8019.11.2024 19:47- Общий список баз (пользователи иногда из дома работают, через vpn), в нём адрес на базу http://pcname/metal и http://pcname/derevo  - 1CUnlimited Автор19.11.2024 19:47- Если у пользователя на локальном компе есть metal с таким же guid как и derevo будут приколы. Надо тогда вычищать профили если у них нет других баз там 
 
 
 
 
           
 
CrushBy
То есть простое открытие формы на достаточно неплохом пинге (150-160мс, это не очень, но и не критично) по HTTP в 1С - 9 секунд ? Ну-ну. Как говорится мыши плакали, кололись, но продолжали есть кактус. В lsFusion, я вот сейчас сижу на одном сервере с пингом 1000мс (с выпадающими пакетами), и формы открываются не 10 секунд... И даже, что-то делать в принципе можно. И тоже HTTP, если что...
Вот чисто ради интереса, можете попробовать на тех же каналах связи зайти на https://demo.lsfusion.org/mycompany-ru (там логин не требуется). Формы тоже будут по 10 секунд открываться ?