Имя: Пароль:
1C
 
Как из веб-сервера (Линукс) дернуть 1с?
0 Хосе
 
05.09.17
08:40
Веб-сервер должен оперативно передавать информацию в 1с о событиях.
Можно, конечно, прописать в 1с регламентное задание, которое будет часто дергать веб-сервер и запрашивать у него список накопленных событий и тут же их обрабатывать.

Но можно организовать по-другому - чтобы веб-сервер обращался к 1с?
Если бы сервер был на Винде, он мог бы создавать СОМ-соединение к 1с.
Но сервер на Линуксе.

Может быть на 1с поднять веб-сервис и веб-сервер будет дергать веб-сервис 1с?

Кстати, я правильно понимаю, что напрямую веб-сервис 1с дергать нельзя, т.к. там нужна авторизация и не анонимный вход, т.е. по сути веб-сервис из 1с - это как бы логин под определенным пользователем, расходуется лицензия и нельзя чтобы туда ломилось сразу много анонимных запросов. Ну много - это 1-5 в минуту, но в пике и до 10?
1 DrShad
 
05.09.17
08:44
может для начала почитать что есть веб-сервант и как происходит работа с сервисами?
2 Asmody
 
05.09.17
08:58
(0) Веб-сервис на стороне 1С. На стороне сайта – простенький SOAP-клиент. Все это общается через туннель или vpn.
3 Хосе
 
05.09.17
09:07
(2) каждое подключение к веб-сервису 1с расходует лицензию или нет? в общем с SOAP-клиентом понятно, пока писал вопрос, такая мысль и пришла.

А напрямую из браузера к веб-сервису 1с обращаться можно (через ту же java-script), или каждое такое обращение будет отъедать лицензию и требовать авторизации?
4 DrShad
 
05.09.17
09:09
(3) авторизацию можно передавать в запросе, на счет лицензии никогда не смотрел
5 Хосе
 
05.09.17
09:15
(4) в принципе интересует именно вопрос лицензий
потому что если в час пик обратятся много пользоателей, запросы будут не отработаны.
6 mehfk
 
05.09.17
09:24
(3) Файловая - да (с некоторыми оговорками), серверная использует только лицензию на сервер 1с предприятия.
7 Cyberhawk
 
05.09.17
09:26
Клиентские лицензии на сеансы веб-сервиса не тратятся
8 Юрий Лазаренко
 
05.09.17
09:37
>>  напрямую веб-сервис 1с дергать нельзя, т.к. там нужна авторизация и не анонимный вход
Пропиши логин и пароль в default.vrd и авторизация будет не нужна

>> расходуется лицензия и нельзя чтобы туда ломилось сразу много анонимных запросов
Лицензия расходуется при первом подключении первого пользователя, и далее используется только она за счет переиспользования сеансов. При ваших 10 запросах в минуту одной лицензии хватит с вероятностью 99,9%.

>>  много - это 1-5 в минуту, но в пике и до 10
Это не много, много - это 50 в секунду.
9 Хосе
 
05.09.17
09:42
(8) а что такое переиспользование, можно пару слов?
10 Юрий Лазаренко
 
05.09.17
09:44
(9) https://wonderland.v8.1c.ru/blog/povyshenie-proizvoditelnosti-veb-servisov/
Если платформа 8.3.9.1818 и новее, то оно там автоматически само подключается. Если кратко, созданный при первом подключении сеанс не закрывается, а какое время висит в кэше и если приходят запросы от других пользователей, то они обслуживаются этим же сеансом, что значительно ускоряет работу в целом.
11 Хосе
 
05.09.17
09:49
(10) спасибо
12 MM
 
05.09.17
10:13
(10) Но если запросы долгие, то это не поможет. Если придёт новый запрос, пока прошлый не обработан, то новую лицензию может съесть, а потом в пуле будут висеть два сеанса.
13 Юрий Лазаренко
 
05.09.17
10:32
(12) Все верно, я поэтому и написал не "100%", а "99,9%", так как особенностей запросов ТС мы не знаем. Естественно, если новый запрос приходит в момент, когда предыдущий еще не выполнился, то происходит попытка создания нового сеанса 1С. Если свободные лицензии есть, то он создается, иначе запрос ставится в очередь.
Поэтому основная заповедь 1Сника - по возможности уменьшать время выполнения запроса, а если нет возможность его уменьшить, то разбить один запрос на два-три-четыре: сначала отправить данные для запуска обработки запроса на сервере, а через какое-то время прийти за результатом. Через пару недель подробно расскажу об этом на Инфостарте.
14 Cyberhawk
 
05.09.17
15:05
(8) "Лицензия расходуется при первом подключении первого пользователя, и далее используется только она за счет переиспользования сеансов"
(13) "если новый запрос приходит в момент, когда предыдущий еще не выполнился, то происходит попытка создания нового сеанса 1С. Если свободные лицензии есть, то он создается, иначе запрос ставится в очередь"

Во-первых, ты что-то путаешься в показаниях: из второй цитаты следует, что если свободная лицензия для второго сеанса есть, то второй сеанс создастся, а лицензия отожрется. Итого отожрется две лицензии. Так? Тогда как с этим согласуется первая цитата?
Во-вторых, клиентская лицензия не используется на сеансы вида "WS-соединение".
15 Юрий Лазаренко
 
05.09.17
16:06
(14) Там разные особенности для файловой и серверной баз. У серверной вообще ничего не отжирается, только создается сеанс с видом "WS-соединение".
16 Cyberhawk
 
05.09.17
16:31
(15) Теперь Я на твой счет спокоен, благословляю тебя на ИС-ивент ))
17 Юрий Лазаренко
 
05.09.17
16:47
(16) Спасибо, Мастер )