|   |   | 
| 
 | COM-соединение VS Web-сервис в одной локальной сети | ☑ | ||
|---|---|---|---|---|
| 0
    
        NikitaObitaev 31.07.19✎ 16:02 | 
        В одной локальной сети находятся 3 конфигурации: ERP, ДО и третья самописная, которая общается с внешним миром через http сервисы. В зависимости от того, что запросили у третьей базы, она обращается либо к ERP, либо к ДО. Соответственно не могу определиться, что же лучше использовать для связи между конфигурациями веб-сервис или ком-соединение? Какие плюсы\минусы будут?
 Насколько помню из собственного опыта, ком-соединение дольше коннектит к базе приемнику, нежели обращение к веб-сервису. Но может это было конкретно в том случае. Еще из плюсов в сторону веб-сервисов, это, на мой взгляд, что их проще отлаживать. Ну и мелочи в виде требования к одинаковой платформе и вообще устаревшей технологии ком-соединения. Но может все таки я чего-то не знаю? ) | |||
| 1
    
        Garykom гуру 31.07.19✎ 16:10 | 
        У тебя лицензий то хватит?
 Представь что "запросили у третьей базы" одновременно аж 100 клиентов и "она обращается либо к ERP, либо к ДО" через COM. Вопрос: Сколько лицензий потребуется? | |||
| 2
    
        Nyoko 31.07.19✎ 16:12 | 
        ВЕБ! ептыть     | |||
| 3
    
        Garykom гуру 31.07.19✎ 16:15 | 
        Имхо надо опубликовать http сервисы все три базы и делать на них отдельные запросы "из внешнего мира".
 Для безопасности можно перед ними воткнуть nginx с авторизацией и чтобы только нужные запросы пропускал. И да он же может api запросов преобразовывать в нужные виды к разным базам. Например запрашивают /base/doc будет proxy_pass на ERP, /base/dir на ДО и т.д. | |||
| 4
    
        Garykom гуру 31.07.19✎ 16:16 | 
        А запросы между конфами по запросу извне это имхо изврат редкостный.
 Другое дело если данные нужны самописке в базу тогда дергать через сервисы другие конфы нормально. | |||
| 5
    
        NikitaObitaev 31.07.19✎ 16:23 | 
        (1) КОМ жрет лицензию, а веб-сервис не жрет?
 (3) Простое преобразование не подойдет, есть, например, запрос из вне, который должен в одной базе что-то найти, в зависимости от того, что нашел, записать что-то в другую базу и ответить во вне. Есть запросы, которые идут только в ЕРП или только в ДО. Короче проще вынести логику в третью базу, которая будет рулить запросами. | |||
| 6
    
        lodger 31.07.19✎ 16:29 | 
        ну так повесь http сервисы на до и ерп. пусть нетленка решает и долбается в до и ерп. с улицы запросы все в нетленку.     | |||
| 7
    
        NikitaObitaev 31.07.19✎ 16:42 | 
        (6) Так и будет, все запросы с улицы в нетленку. Вопрос в том, как лучше общаться нетленке с ДО и ЕРП - через ком соединение или через веб-сервисы?     | |||
| 8
    
        Garykom гуру 31.07.19✎ 16:49 | 
        (7) Тебе же сказали никак. Пусть снаружи сразу в ДО или ERP долбаются если нужны данные оттуда.
 Или через веб-сервисы данные перетаскивай в нетленку нужные и уже наружу отдавай, а двойной запрос это не будет нормально работать. | |||
| 9
    
        hhhh 31.07.19✎ 16:49 | 
        (7) там программы идентичны полностью, никаких отличий нет. Оформляешь процедуру например, которая всё это делает, и ее включаешь или туда или сюда. Всё одинаково. Отличия те которые в (0), ну и насчет лицензий, всё в пользу вебсервиса.     | |||
| 10
    
        ptiz 31.07.19✎ 17:13 | 
        (5) "веб-сервис не жрет" - не жрет     | |||
| 11
    
        ptiz 31.07.19✎ 17:14 | 
        (0) COM - это гарантированные пляски с бубном при обновлении платформы.     | |||
| 12
    
        Garykom гуру 31.07.19✎ 17:20 | 
        (5) >Простое преобразование не подойдет, есть, например, запрос из вне, который должен в одной базе что-то найти, в зависимости от того, что нашел, записать что-то в другую базу и ответить во вне. Есть запросы, которые идут только в ЕРП или только в ДО. Короче проще вынести логику в третью базу, которая будет рулить запросами.
 Слишком сложная логика упрощай и разноси операции. Если самописка периодически обращается к ДО/ERP это нормально, внешние запросы к самописке тоже нормально. Но разнеси обращение извне к самописке и самописка дергает ДО/ERP, это разные потоки/процессы должно быть. Т.е. внешний клиент дернул самописку, она нечто записала у себя. Затем самописка планово начинает обработку записанного, обращается к ДО/ERP сохраняет у себя. При следующем обращении клиента ему выдают данные. Принцип понятен? Если запрашивается некий отчет, то он сначала формируется и как будет готов уже можно скачивать. А не так что ждемс пока отчет сформируется. | |||
| 13
    
        NikitaObitaev 31.07.19✎ 18:37 | 
        (12) Так и делаю на очередях )     | |||
| 14
    
        Immortal 31.07.19✎ 19:07 | 
        Забудьте про ком     | |||
| 15
    
        NikitaObitaev 01.08.19✎ 09:20 | 
        А между базами есть какая-то принципиальная разница http или web сервис использовать? Не будет ли http быстрее, так как там нету авторизации на клиенте?     | |||
| 16
    
        NikitaObitaev 01.08.19✎ 11:58 | 
        http://v8.1c.ru/o7/201312http/
 По сравнению с имеющимися в платформе SOAP web-сервисами, HTTP-сервисы имеют ряд преимуществ: Простота программирования клиента таких сервисов; Потенциально меньший объем передаваемых данных; Потенциально меньшая вычислительная нагрузка; HTTP-сервисы ориентированы на «ресурсы», в то время как SOAP сервисы ориентированы на «действия». | |||
| 17
    
        NikitaObitaev 01.08.19✎ 12:03 | 
        (16) Что значит это загадочное "HTTP-сервисы ориентированы на «ресурсы», в то время как SOAP сервисы ориентированы на «действия»." ?     | |||
| 18
    
        breezee 01.08.19✎ 12:05 | 
        Делай веб-сервисы, полет нормальный     | |||
| 19
    
        Garykom гуру 01.08.19✎ 12:13 | 
        (17) HTTP это запрос текстом (внутри текста может быть и xml и json и бинарные данные в Base64) и ответ текстом.
 SOAP больше всего похоже на удаленное выполнение процедур/функций, вызов только разрешенных команд с передачей параметров и получение ответа. | |||
| 20
    
        Garykom гуру 01.08.19✎ 12:15 | 
        (19)+ Для разделения "команд" в простом HTTP придумали REST.
 Это когда GET/PUT/POST/DELETE и URL пути разные через / | |||
| 21
    
        NikitaObitaev 01.08.19✎ 12:17 | 
        (19) Ну так, что в веб-сервисе, что в хттп я могу вызвать только те процедуры и функции, которые объявлены. А параметры функций так же передаются простым текстом в POST запросе в случае веб-сервиса и POST либо GET, в случае хттп-сервиса     | |||
| 22
    
        Garykom гуру 01.08.19✎ 12:21 | 
        (21) Назначение одно, реализация разная.
 SOAP это строгий RPC. HTTP по REST это просто набор неких необязательных соглашений. | |||
| 23
    
        Garykom гуру 01.08.19✎ 12:22 | 
        https://habr.com/ru/post/75248/ для общего развития     | |||
| 24
    
        Leksus 01.08.19✎ 12:27 | 
        (0) Интерфейс OData не рассматриваете?     | |||
| 25
    
        Garykom гуру 01.08.19✎ 12:31 | 
        (24) ODATA это получение данных и их запись.
 Оно сложные запросы/отчеты не умеет же, один хрен писать на 1С HTTP или ВЕБ-сервису и публиковать. | |||
| 26
    
        SalavatUlaev 01.08.19✎ 12:35 | 
        (24) OData еще сырая у 1С. Права на все объекты, которые опубликованы будут доступны всем пользователям полностью.
 например есть Вася Пупкин, с правами на чтение одного справочника. Если он узнает адрес сервиса, он сможет зайти и записать все что хочешь в объекты, которые опубликованы | 
 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |