Имя: Пароль:
1C
1С v8
Многопоточное решение для файловой базы через веб (редиректор)
0 Chai Nic
 
19.12.13
15:50
"МикроСервер 1С" - бета версия, замечания и предложения приветствуются!
---
Программа выполняет ретрансляцию входящих tcp-соединений с указанного главного порта на один из портов, на которых запущен веб-сервер. Запуск экземпляров веб-сервера Apache происходит автоматически при старте программы. Для обеспечения этого программа предварительно создает временные конфигурационные файлы, которые использует при запуске экземпляров веб-сервера.

Ретрансляция соединений происходит следующим образом: Поступившее соединение проверяется по таблице активных трансляций. Если трансляция от ip-адреса источника уже существует, то используется экземпляр веб-сервера, связанный с этой трансляцией и соединение ретранслируется на соответствующий порт Apache. Если же поступившее соединение в таблице трансляций не найдено — то оно направляется на экземпляр веб-сервера с наименьшим (или нулевым) количеством активных трансляций, при этом информация об этом сохраняется в таблице трансляций. Трансляции, время жизни которых превысило таймаут сессии (20 минут + 5 минут запас), считаются неактивными и удаляются из таблицы трансляций. Экземпляры веб-сервера перезапускаются автоматически в фоновом режиме таким образом, чтобы минимизировать время недоступности сервиса. Перезапуск веб-серверов позволяет освободить память, занятую данными приложения 1с, и повысить скорость работы прикладных решений.



Необходимо особо отметить следующие нюансы



С рабочим процессом веб-сервера ассоциируется именно клиентский компьютер, а не клиентский сеанс 1С:Предприятия. Соответственно, если с одного компьютера будет несколько подключений, даже к разным информационным базам — они все будут обслуживаться одним веб-сервером, соответственно, одним потоком серверных вызовов. Однако, это более эффективно, чем работа всех пользователей всей локальной сети в одном серверном процессе.

Для сервера терминалов данное решение неприменимо по причине, указанной выше. Все соединения с сервера терминалов будут идти от одного IP-адреса, соответственно, они будут транслироваться на один рабочий процесс веб-сервера. При использовании сервера терминалов может потребоваться распределение клиентов по портам вручную, с использованием другого решения (cmd-скрипт по созданию рабочих серверов для 1с http://infostart.ru/public/239498/) .

Необходимо отключать использование прокси-сервера в клиентских приложениях, поскольку в этом случае все клиенты будут подключаться к программе от адреса прокси-сервера.. При использовании тонкого клиента это решается ключом запуска /NoProxy, при использовании веб-клиента — через настройки браузера.

Данное решение ни в коей мере не затрагивает лицензирование 1с, оно не увеличивает и не уменьшает потребностей в клиентских лицензиях.

http://infostart.ru/public/242527/
1 shamannk
 
19.12.13
15:54
Нахрена МикроСервер 1С нужна? (чет не нашел)
2 dk
 
19.12.13
16:01
реклама?
3 IamAlexy
 
19.12.13
16:04
(0) и смысл этой программы?
просто в апаче сразу нужный порт настроить несудьба?

или это мультипликатор который 1000 конектов к этому "микросерверу" переадресует на 1 конект к 1С ?
4 acsent
 
19.12.13
16:05
(3) чтобы параллельность получить
5 Chai Nic
 
19.12.13
16:06
(1) Для работы в файловом режиме через веб-сервер без тормозов, связанных с однопоточностью wsap22.dll.

(2) Информирование

(3) Суть в том, что эта программа сама запускает кучу апачей, разделяя тем самым пользователей по ним.
6 shamannk
 
19.12.13
16:13
(5) В этом посте больше инфы чем в сабже.
7 Chai Nic
 
19.12.13
16:14
(6) Вся инфа есть в публикации на ИС. Не копипастить же сюда 3 страницы..
8 Chai Nic
 
19.12.13
16:15
(+7) МикроСервер - это промежуточный сервер, который принимает запросы от тонких клиентов и веб-клиентов 1с и распределяет их между автоматически созданными процессами веб-сервера. Решение позволяет решить проблему однопоточности файловой компоненты модуля веб-сервера 1с в большинстве случаев.
9 shamannk
 
19.12.13
16:17
(7) Нет самого важного какие цели решает. Есть куча как она это делает
10 IamAlexy
 
19.12.13
16:18
(5) а сразу так нельзя было написать блин

стока всякой куеты..

блин, всю статью в одно предложение уложил.

молоток, обязательно потестю на клиентах
11 IamAlexy
 
19.12.13
16:18
(9) работу 7ми пользователей в маленькой организации без сервера 1С
12 Chai Nic
 
19.12.13
16:19
(9) Про цели написано в преамбуле
13 acsent
 
19.12.13
16:39
Цена то не указана
14 Fragster
 
гуру
19.12.13
16:41
(13) такое можно самому сделать занедорого
15 Chai Nic
 
19.12.13
16:42
(13) Да пока бета-версия.. её продавать как-то неприлично.
(14) Ну разумеется, только до сих пор никто не сделал.
16 Питерский_
Никола
 
19.12.13
16:44
(12) На практике, какой прирост или в чем там профит измеряется ?
17 Fragster
 
гуру
19.12.13
16:45
(15) ну да. для 7-10 человек я бы руками сделал несколько экземпляров и у юзеров поменял строки соединения. а больше - что таким способом, что в терминале на файловой смысла не имеют
18 Chai Nic
 
19.12.13
16:46
(16) На практике, попробуй в управляемом приложении создать обработку, в которой на сервере запускается длительная процедура - ну хоть банальный пустой цикл длиной в пару минут. Тогда все остальные пользователи "зависнут". А с разделением на веб-сервисы они все продолжат работать. Блокировки данных при этом сохраняются - проверено.
19 mistеr
 
19.12.13
16:56
(18) Если попадут на тот же экземпляр (а если их много, часть попадет точно) - зависнут. Получается, поставленную задачу программа не решает.
20 mistеr
 
19.12.13
16:59
(18) Кроме того, если не ошибаюсь, получается неподдерживаемый 1С режим работы: с одной базой работают несколько независимых серверов (не в кластере)
21 Chai Nic
 
19.12.13
16:59
(19) Вероятность снижается)
Можно поставить экземпляров апачей с запасом..
22 Chai Nic
 
19.12.13
17:00
(20) Сервера от 1с тут никаким боком.. это файловая база
23 mistеr
 
19.12.13
17:00
(22) Ах, да.
24 Chai Nic
 
19.12.13
17:01
Разумеется, цель программы не в том, чтобы конкурировать с клиент-серверной версией.. цель - дать возможность уйти от нехорошего режима файл-серверного доступа к файловой базе..
Чтобы обнаруживать ошибки, программист должен иметь ум, которому доставляет удовольствие находить изъяны там, где, казалось, царят красота и совершенство. Фредерик Брукс-младший