2013-06-14 4 views
2

У меня возникла проблема с созданием взаимодействия между процессами для моего приложения python. У меня есть два сценария python под рукой, скажем, A и B. A используется для открытия огромного файла, сохранения его в памяти и выполнения некоторой обработки, которую Mysql не может сделать, а B - процесс, используемый для запроса A очень часто.Inter-process communication for python

Поскольку файл A необходимо прочитать, действительно большой, я надеюсь его прочитать один раз и его повесьте там, ожидая моего запроса Bs '.

Что я делаю сейчас, я использую cherrypy для создания http-сервера. Тем не менее, я чувствую, что это неудобно делать, поскольку то, что я пытаюсь сделать, абсолютно локально. Итак, мне интересно, есть ли еще более органичный способ достичь этой цели?

Я не знаю много о TCP/socket и т. Д. По возможности, примеры игрушек были бы оценены (пожалуйста, включите часть для чтения файла).

ответ

3

Python имеет хорошую поддержку для ZeroMQ, что намного проще и надежнее, чем использование сырых сокетов.

Сайт ZeroMQ рассматривает Python как один из его основных языков и предлагает обширные примеры Python в своей документации. Действительно, пример в «Изучении основ» написан на Python.

+0

Thx! Я попробовал, и работает как шарм. На самом деле это так просто, что я просто проверил страницу: http://nichol.as/zeromq-an-introduction –