powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Общение между приложениями на одном компьютере
25 сообщений из 66, страница 1 из 3
Общение между приложениями на одном компьютере
    #39592889
antox
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Подскажите, как можно реализовать передачу данных между приложениями, работающими на одном компьютере?
Одно приложение передает, второе получает и в ответ подтверждает корректность полученных данных.

Среда разработки Delphi 2010
...
Рейтинг: 0 / 0
Общение между приложениями на одном компьютере
    #39592890
Фотография wadman
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
TCP, mailslots, messages.
...
Рейтинг: 0 / 0
Общение между приложениями на одном компьютере
    #39592895
Фотография Квейд
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Общение между приложениями на одном компьютере
    #39592913
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
antoxкак можно реализовать передачу данных между приложениями, работающими на одном компьютере?

TCP я тоже рекомендую. Не будет проблем если в будущем понадобится не только "между
приложениями, работающими на одном компьютере".
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Общение между приложениями на одном компьютере
    #39592915
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovTCP я тоже рекомендую. Не будет проблем если в будущем понадобится не только "между приложениями, работающими на одном компьютере".
А я бы для начала спросил, насколько плотный обмен данными предполагается. Потому как tcp в рамках одного компьютера - чертовски медленная штука по сравнению с альтернативами.
...
Рейтинг: 0 / 0
Общение между приложениями на одном компьютере
    #39592920
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarertcp в рамках одного компьютера - чертовски медленная штука по сравнению с альтернативами.

На моём ноуте я разгонял обмен до 80 мегабайт в секунду в полном дуплексе. Это, конечно,
медленнее диска, но по-моему вполне достаточно для практически любого применения. А из
быстрейших альтернатив - только общая память. Или есть что-то ещё?..
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
Общение между приложениями на одном компьютере
    #39592921
alekcvp
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
wadmanTCP, mailslots, messages.
shared memory?..
...
Рейтинг: 0 / 0
Общение между приложениями на одном компьютере
    #39592922
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarer...Потому как tcp в рамках одного компьютера - чертовски медленная штука по сравнению с альтернативами.

Используем адрес 127.0.0.1 - и сразу же скорость становится сверхсветовой... :)
...
Рейтинг: 0 / 0
Общение между приложениями на одном компьютере
    #39592925
Фотография softwarer
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
чччДИспользуем адрес 127.0.0.1 - и сразу же скорость становится сверхсветовой... :)
Если бы. Тут ещё зависит от операционки - есть ли у неё специальная обработка для этого случая - но сколь помнится, в старых виндах скорость становится ещё хуже.
...
Рейтинг: 0 / 0
Общение между приложениями на одном компьютере
    #39592933
rgreat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
OLE
...
Рейтинг: 0 / 0
Общение между приложениями на одном компьютере
    #39592942
Соколинский Борис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovНа моём ноуте я разгонял обмен до 80 мегабайт в секунду в полном дуплексе. Это, конечно, медленнее диска, но по-моему вполне достаточно для практически любого применения.

Не для любого.
GigE-видеокамеры на сокетах адски тормозят, для них специальные фильтр-драйверы делают.

Dimitry Sibiryakov А из быстрейших альтернатив - только общая память. Или есть что-то ещё?.. Pipes.
...
Рейтинг: 0 / 0
Общение между приложениями на одном компьютере
    #39592950
Vizit0r
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
пайпы - вечный геморрой. Надоест очень быстро.

shared memory - отлично для передачи блоков данных

Я в итоге пришел к tcp - потери в скорости по сравнению с пайпами есть, но не критичные.
...
Рейтинг: 0 / 0
Общение между приложениями на одном компьютере
    #39592953
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
softwarerDimitry SibiryakovTCP я тоже рекомендую. Не будет проблем если в будущем понадобится не только "между приложениями, работающими на одном компьютере".
А я бы для начала спросил, насколько плотный обмен данными предполагается. Потому как tcp в рамках одного компьютера - чертовски медленная штука по сравнению с альтернативами.
Сейчас накидал простой тест, "zmq над tcp:"
При обмене блоками диной 1 байт - скорость 13 кбайт в секунду, увеличение длины пакета данных до килобайта-двух почти не влияет на время.
Получается примерно 6500 синхронных сеансов обмена в секунду, 0,15 миллисекунды на сеанс. Т.е., время получения ответа после короткого запроса - полторы миллисекунды.

...и чуть больше 100 мегабайт/сек при пересылка блоков по 16кБайт к серверу и обратно, последовательно (клиент отправил - ждет ответа, сервер получил - отправил ответ), тут уже время передачи самих данных играет роль.

Время первоначального коннекта не учитывалось (тоже, в общем, не особо и велико).
...
Рейтинг: 0 / 0
Общение между приложениями на одном компьютере
    #39592962
Соколинский Борис
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Vizit0rпайпы - вечный геморрой. Надоест очень быстро. Лет 10 как их пользую, пока не надоели.
Геморрой знаю только один: они не могут взаимодействовать если процессы запущены от имени разных пользователей. В этом плане tcp лучше.
...
Рейтинг: 0 / 0
Общение между приложениями на одном компьютере
    #39593005
kealon(Ruslan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
чччД,
Десктоп?

это фишка такая винды, переключение между процессами надо ускорять что бы работало быстрее
...
Рейтинг: 0 / 0
Общение между приложениями на одном компьютере
    #39593009
Vizit0r
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Соколинский БорисVizit0rпайпы - вечный геморрой. Надоест очень быстро. Лет 10 как их пользую, пока не надоели.
Геморрой знаю только один: они не могут взаимодействовать если процессы запущены от имени разных пользователей. В этом плане tcp лучше.

ну как бы если сразу со старта использовать асинхронные нормальные пайпы - то 90% отпадет.
А я собрал все грабли синхронных пайпов, только года полтора тому перешел на асинхронные.
...
Рейтинг: 0 / 0
Общение между приложениями на одном компьютере
    #39593010
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
kealon(Ruslan)...переключение между процессами надо ускорять что бы работало быстрее
Какое переключение, как именно "ускорять"?
...
Рейтинг: 0 / 0
Общение между приложениями на одном компьютере
    #39593014
AWSVladimir
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
чччДСейчас накидал простой тест, "zmq над tcp:"


У ТСР есть то ли параметр, то ли флаг, отправлять пакет по умолчанию или мгновенно.
Если по умолчанию, то винда ожидает какое то кол-во миллисекунд (вроде 200 мс), для отправки пакетов одной порцией.
Если поствить мгновенно, то пакет отправляется сразу.

Поставь мгновенную отправку, будет быстрее шуршать.
Где это выставляется не подскажу, лет 5 уже не залазил в ТСР.
...
Рейтинг: 0 / 0
Общение между приложениями на одном компьютере
    #39593018
Фотография X11
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
+1 за TCP
...
Рейтинг: 0 / 0
Общение между приложениями на одном компьютере
    #39593043
antox
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
X11,

А реализация через Indy ?
...
Рейтинг: 0 / 0
Общение между приложениями на одном компьютере
    #39593046
YuRock
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
antoxX11,

А реализация через Indy ?Зачем этого монстра тянуть? Проще разобраться с апи, там пяток функций, чем пытаться заставить хоть как-то работать эту поделку.
...
Рейтинг: 0 / 0
Общение между приложениями на одном компьютере
    #39593047
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
AWSVladimir,
Если бы 200 миллисекунд стояло, то мой тест показывал бы не лучше 5 сеансов обмена в секунду. Даже 2.5 сеанса в сек. (задержка на обоих сторонах была бы).
...
Рейтинг: 0 / 0
Общение между приложениями на одном компьютере
    #39593089
Zelius
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
...
Рейтинг: 0 / 0
Общение между приложениями на одном компьютере
    #39593090
чччД
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Zelius Алгоритм Нейгла

Угу
Does the ZeroMQ library disable the Nagle algorithm (TCP NODELAY)?

Yes.
...
Рейтинг: 0 / 0
Общение между приложениями на одном компьютере
    #39593102
kealon(Ruslan)
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
чччДkealon(Ruslan)...переключение между процессами надо ускорять что бы работало быстрее
Какое переключение, как именно "ускорять"?времени нет искать, вкратце

Проблема в следующем - пока процесс не переключится, естественно не будет отработан приём, отсюда и такая низкая скорость при передаче данных. Для качественной реализации такого пинг-понга по идее нужен механизм передачи управления конкретному процессу на уровне ОС.
...
Рейтинг: 0 / 0
25 сообщений из 66, страница 1 из 3
Форумы / Delphi [игнор отключен] [закрыт для гостей] / Общение между приложениями на одном компьютере
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]