Можно создать дубликат:
best way to integrate erlang and pythonКак я могу назвать erlang из Python?
Чтобы использовать некоторые мощные функции Эрл, я должен позвонить Erlang программу из Python, как я могу это сделать? Спасибо ~
Можно создать дубликат:
best way to integrate erlang and pythonКак я могу назвать erlang из Python?
Чтобы использовать некоторые мощные функции Эрл, я должен позвонить Erlang программу из Python, как я могу это сделать? Спасибо ~
В Erlang вы можете общаться с внешним миром, используя порты, которые обеспечивают внешний интерфейс, ориентированный на байты.
Вы также можете посмотреть erlport, который представляет собой библиотеку python, реализующую протокол портов Erlang.
Я нашел способ вызвать python из erlang, но я не знаю, как назвать erlang fron python. Даже erlport выглядит только для того, чтобы вызвать python от erlang. – Suge
ОК. Еще одна вещь, которую вы можете попробовать, - запустить виртуальную машину Erlang в качестве демона с помощью команды «runerl». Это создаст два именованных канала в «/ tmp» для целей чтения и записи (erlang.pipe.1.r And erlang.pipe.1.w). Используя python, вы можете написать команду (как вы используете в командной строке erlang) для именованного канала, VM ее выполнит, и вы сможете получить результат из прочитанного именованного канала. Надеюсь, это то, что вам нужно. – Arunmu
Посмотрите на BERT-RPC. Он позволяет выполнять remote procedure calls и выполняет отбор, запрашивает данные (включая потоковое). Там вы найдете различные библиотеки для некоторых языков, включая Python.
В вашем случае вы можете просто установить сервер erlang с помощью ernie и связаться с ним через python-bertrpc клиент. Оба проекта документированы.
В основном мы используем JSON через HTTP для этого. В некоторых случаях вы можете использовать более надежный протокол обмена сообщениями (например, AMQP с RabbitMQ), но редко существует хорошая причина, по которой Python может напрямую говорить о протоколе распределения Erlang. Иногда мы используем erlport для сериализации вещей вместо JSON, когда производительность немного важнее.
Можете ли вы описать проблему, которую вы пытаетесь решить? Я изо всех сил пытаюсь думать о допустимом прецеденте для приложения Erlang, управляемого приложением Python. Какие мощные функции вы имеете в виду? – dsmith