|
Проброска OLE|COM-соединения по сети lan/инет | ☑ | ||
---|---|---|---|---|
0
Garykom
гуру
10.09.15
✎
16:31
|
Собственно возникла тупейшая/гениальная идея.
Хочется удобный механизм онлайн обмена (передачи данных) между базами расположенными на разных компах. Связь по сети или через инет есть. Каким бы способом сделать сабж? Т.е. вызывается из 1С базы1 (комп1) COM-соединение к базе2 (комп2). И причем комп1 доступа к файловой или серверной базе2 не имеет. Это нечто вроде проброски обычных портов. |
|||
1
Garykom
гуру
10.09.15
✎
16:32
|
(0)+ удобство в том что не нужно в обоих базах обмен настраивать, только в одной достаточно (неважно источнике или приемнике)
|
|||
2
DmitrO
10.09.15
✎
16:35
|
:)
комп1 не имеет, а кто имеет, кто то же должен иметь, не бывает так чтобы никто нас не имел? ) |
|||
3
vde69
10.09.15
✎
16:36
|
эта технология называется DCOM
|
|||
4
TormozIT
гуру
10.09.15
✎
16:36
|
Нужно обеспечить RPC коммуникации и поднять на одном из компьютеров COM+ приложение с нелокальной (удаленной) активацией. Дальше создаем удаленный COM Объект и используем принцип "Минимизация количества COM-вызовов"
КомСоединитель = Новый COMОбъект(“V83.ComConnector”, ИмяКомпьютера); ВнешнееСоединение = КомСоединитель.Connect(СтрокаСоединения); http://catalog.mista.ru/public/387577/ |
|||
5
DmitrO
10.09.15
✎
16:37
|
(3)щас она уже называется COM+, службы компонентов.
(3)так кто имеет-то? |
|||
6
TormozIT
гуру
10.09.15
✎
16:38
|
(5) COM+ и DCOM - разные вещи.
|
|||
7
Serginio1
10.09.15
✎
16:39
|
DCOM + VPN
|
|||
8
Garykom
гуру
10.09.15
✎
16:43
|
(4) очень неплохо
а не под Windows Server на удаленной машинке оно пашет? |
|||
9
Garykom
гуру
10.09.15
✎
16:45
|
Как бы хочется то немного не того.
Некая программка которая запускается на обоих компах, настраивается на связь по сети (простым образом) и все. Можно делать вызовы COM соединений к локальному (этой нашей программе) а они автоматом транслируются на удаленные вызовы нужные |
|||
10
Garikk
10.09.15
✎
16:49
|
не под Windows server в смысле под линух? DCOM во всех виндах актуальных есть (и XP в т.ч.)
|
|||
11
Garykom
гуру
10.09.15
✎
16:52
|
(10) да между двумя Win7 можно штатно проброску настроить?
|
|||
12
Serginio1
10.09.15
✎
17:03
|
(9) В Delphi была такая Приблуда как TSocketConnection.
Она как раз выполняла то, что ты хочешь. |
|||
13
TormozIT
гуру
10.09.15
✎
17:08
|
(9) Ты как раз описал proxy-COM-object из технологии DCOM.
|
|||
14
mistеr
10.09.15
✎
17:14
|
DCOM в настройке и администрировании тот еще геморрой. Кроме того через него лезут всякие вирусы, поэтому по умолчанию в Винде его давно отключают. Плюс еще настройка VPN, если узлы удаленные. В обшем простым решением его назвать никак нельзя.
Да и ненадежная схема получится, если связь через интернет. |
|||
15
TormozIT
гуру
10.09.15
✎
17:15
|
С пингом до 150мс DCOM отлично работает. Дальше начинаются редкие сбои. После 200мс сбои становятся уже частыми и использовать его становится неразумно.
|
|||
16
igork1966
10.09.15
✎
17:16
|
(0) Можно через Web-сервис организовать. По крайней мере будет работать когда не винда.
|
|||
17
Garykom
гуру
10.09.15
✎
17:30
|
(16) удаленную базу менять низзя, даже отдельный сеанс не запустить ибо лицух нету
COM соединение к этой базе можно, они не лицензируются собственно в этом и проблема что один фиг лисапед писать в виде некой прокладки которая будет на удаленном компе крутиться и транслировать данные База2 (комп2) <> COM <> Прокладка (комп2) <> что угодно инет <> База1 (комп1) |
|||
18
TormozIT
гуру
10.09.15
✎
17:37
|
DCOM для внешнего соединения 1С выглядит так
[Процесс COM-клиента (proxy-object внешнее соединение 1C)] <RPC-канал> [(stub-object внешнее соединение 1C) Процесс COM- сервера] <tcp-канал> [rphost.exe] |
|||
19
igork1966
10.09.15
✎
17:38
|
(17) http://v8.1c.ru/o7/201312rest/index.htm
вот это не подойдет? |
|||
20
Garykom
гуру
10.09.15
✎
17:48
|
(19) эта Х только на платформе 1С 8.2 работает, сервер этой защиты
так что все методы прочие далеко идут |
|||
21
DmitrO
10.09.15
✎
18:41
|
Кажется именно по этой технологии и работал сервер 1С Предприятия 8.0 )
|
|||
22
TormozIT
гуру
10.09.15
✎
19:21
|
(21) Верно. Сервер 1с 8.0 работал через COM+ приложение
|
|||
23
mistеr
11.09.15
✎
08:59
|
(17) Е-мае, оказывается столько гемморроя из-за копечной жадности! Твое время на написание прокладки стоит в несколько раз больше. Или оно бесплатно?
|
|||
24
Garykom
гуру
11.09.15
✎
11:18
|
(23) к сожалению жадность то не копеечная
мало того что лицухи нужны дополнительные если робота держать постоянно запущенного так еще и в 2 местах писать код, вместо одного причем что то изобретать придется все равно для обмена по сети стандартный обмен через файлы не очень подходит, много лишнего тут больше похоже на дисконтный сервер (запрос статуса карты, кол-во накопленных покупок и продаж, начисление/списание баллов) |
|||
25
TormozIT
гуру
11.09.15
✎
11:31
|
В статье (4) рассмотрены основные проблемы при использовании COM-связи между базами 1С через медленные каналы. Сначала отладь обмен между локальными базами, потом уже включай его через DCOM. Думаю ничего проще здесь не придумаешь.
|
|||
26
Serginio1
11.09.15
✎
11:36
|
(24) На самом деле через файлы по схеме самое то.
Лишнее прекрасно сжимается. Зато Можно работать по Tcp/IP, Вэб сервисы итд. Ну и если знаком с другими языками то Можно использовать protobuf, WCF итд |
|||
27
Garykom
гуру
11.09.15
✎
11:42
|
(26) да все можно, способов прекрасно знаю что туча
думал самым простейшим обойтись если бы можно было легко (и надежно) пробросить com соединение |
|||
28
Serginio1
11.09.15
✎
12:45
|
(27) Сом как раз самый сложный.
Например в .Net давно уже отказались от COM в пользу WCF |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |