Что означает «@» в конечной точке ZeroMQ? - PullRequest
0 голосов
/ 19 февраля 2019

Я просматривал документацию по ZeroMQ и не видел нигде указанного синтаксиса конечной точки.Мне было интересно, что в ZeroMQ означает что-то подобное:

socket.bind("ipc://@shared");

Я знаю, что IPC - это транспорт, но я не знаю, что означает "@".Остальное должно быть именем файла для Unix Domain Socket.Но я не вижу ни одного файла с таким именем.

Ответы [ 2 ]

0 голосов
/ 28 февраля 2019

Знак @ означает, что соединение должно использовать «Абстрактное пространство имен», а не файловую систему / путь к файлу.

Это устраняет необходимость наличия пути к файловой системе или проблем с разрешениями, имя глобально доступно для подключения / привязки и очищается при удалении всех ссылок.

Этотолько для Linux.

0 голосов
/ 19 февраля 2019

Указывает локальный путь, соответствующий этому IP.

Возьмем, к примеру, следующее.Допустим, вы пытаетесь привязать мой адрес, который находится где-то в сети. 192.168.0.0

Вы можете написать: socket.bind("192.168.0.0:@tkelly")

В качестве альтернативы, @ может означать определенный путь.Если вы используете ZMQ для других целей, таких как копирование файла, вы можете сделать что-то вроде scp <filea> tkelly@192.168.0.0

...