zmq 예제

참고: 아래 예제는 일반적으로 동시에 실행되는 응용 프로그램으로 구성됩니다. 예를 들어 클라이언트/서버 설정이 작동하려면 클라이언트와 서버 응용 프로그램이 함께 실행되어 있어야 합니다. 이 작업을 수행하는 방법 중 하나는 도구 리눅스 화면을 사용하는 것입니다. 그것에 대해 자세히 알아보려면이 디지털 오션 튜토리얼을 확인하십시오. CentOS 시스템에 화면을 설치하려면 간단하게 실행할 수 있습니다 기억하십시오 : yum 설치 -y 화면. 또한 ZMQ를 사용하면 서로 독립적으로 실행되는 프로세스 간에 정보를 교환할 수 있습니다. 예를 들어 데이터를 분석하기 위해 매우 강력한 컴퓨터에서 프로세스를 실행할 수 있습니다. 그러나 실험에서 데이터를 수집하는 컴퓨터는 덜 강력할 수 있습니다. ZMQ와 같은 라이브러리 덕분에 네트워크를 통해 데이터를 공유하는 것이 점점 더 쉬워지고 있습니다. 동일한 컴퓨터에서 실행되는 프로세스 간에 정보를 교환하는 또 다른 패턴도 있습니다.

이 튜토리얼은 후자에 초점을 맞출 것이다, 그러나 아이디어를 적응하는 것은 상대적으로 쉬워야한다. 참고 : 우리는 우리의 예에서 파이썬 언어와 고전적인 인터프리터 (파이썬 C 인터프리터)와 함께 작업 할 것입니다. 필요한 언어 바인딩을 설치한 후에는 코드를 번역하고 문제 없이 즐겨찾기를 사용할 수 있습니다. CentOS VPS에 파이썬을 설치하는 방법에 대해 알고 싶다면 CentOS 6.4 자습서에서 파이썬 2.7을 설정하는 방법을 확인하십시오. 지금 실행할 수 있으며 메시지가 구독자로 바로 흐르기 시작하는 것을 볼 수 있습니다. 중지하고 다시 시작할 수 있으며 게시자가 프레임 후 프레임 스트리밍을 문제 없이 실행중임을 알 수 있습니다. 두 명의 구독자(또는 그 이상)를 시작하면 어떤 일이 발생하는지 확인할 수 있습니다. 당신은 그들이 모두 동일한 정보를 얻을 것을 알 수 있습니다. HDf5를 사용하여 하드 드라이브에 데이터를 저장하는 방법에 대한 간단한 예제를 살펴보겠습니다.

새 구독자인 subscriber_2.py를 다음과 같은 예제와 함께 만들어 보겠습니다. 우리가 달성하고자하는 것은 3 프로세스를 가지고하는 것입니다. 카메라에서 지속적으로 획득하여 프레임을 게시하는 것입니다. 우리가 전에했던 것처럼, 서로 독립적 인 두 개의 프로세스, 하나는 우리가 전에했던 것처럼 다른 하나는 HDF5 파일에 이미지를 저장합니다. 이 마지막 예제에서는 inproc 전송을 통해 전용 쌍 소켓에 의해 연결된 세 단계 프로세스가 만들어집니다. 단계는 이전 단계에서 READY 신호를 기다리는 역순으로 만들어집니다. 다시 현실 세계에서이 대략 분산 시스템의 이질적인 부분을 연결하는 소켓과 패턴의 구색을 제공하는 것으로 변환합니다. 이들은 당신의 실행-의-더-밀 소켓 당신을 마음, 그래서 그것은 생각의 그들의 방법 주위에 당신의 마음을 포장 하는 데 시간이 걸릴 거 야, 하지만 난 시간과 노력 가치가 발견 했습니다. 기본 구현은 C/C++에 있으며 Java 및 .Net을 포함한 일부 20개 이상의 다른 언어와 기본 구현에 대한 바인딩이 있습니다. 이 게시물에서 는 ZeroMQ에서 발견 된 주요 메시징 패턴의 각각에 대한 빠른 살펴 다음 스콧 로직에서 여기에 사용되는 눈에 띄는 언어의 일부에 대한 설치를 통해 당신을 걸을 수 있습니다. 이 게시물은 우수한 ZeroMQ 가이드에서 정보, 예제 및 다이어그램을 자유롭게 purloined했습니다. 일단 당신이 이것을 읽으면, 그것은 쉽게 내가 읽은 최고의 문서 / 튜토리얼입니다.

예제 코드의 대부분은 내 배경이기 때문에 C #에 있을 것입니다. 자바와 Node.js, 전장에서 싸우지 않은 언어의 예도 있으므로 가난한 프로그래밍 스타일에 대해 미리 사과할 것입니다. 제목은 매우 길어졌지만 아이디어는 그렇게 복잡하지 않을 것입니다. 위의 예에서는 클라이언트가 이미지를 요청한 후 이미지를 캡처했습니다. 이제 이미지 목록을 생성하고 100을 가정해 보겠습니다.

0saves
If you enjoyed this post, please consider leaving a comment or subscribing to the RSS feed to have future articles delivered to your feed reader.

Comments are closed.