[javascript] 자바스크립트에서 프로세스간 통신을 위한 바이너리 데이터 전송하기

다음은 Node.js 환경에서 두 프로세스 간에 바이너리 데이터를 전송하는 예제 코드입니다.

이 예제에서는 child_process 모듈을 사용하여 프로세스 간 통신을 시뮬레이션합니다. 또한 바이너리 데이터 전송을 위해 Buffer 클래스를 사용합니다.

const { spawn } = require('child_process');

// 부모 프로세스
const parent = spawn('node', ['child.js']);

// 바이너리 데이터 생성
const bufferData = Buffer.from('Hello, World!', 'utf-8');

// 데이터를 자식 프로세스로 전송
parent.stdin.write(bufferData);

자식 프로세스에서는 process.stdin을 통해 데이터를 받을 수 있습니다.

// child.js
process.stdin.on('data', (data) => {
  console.log('Received data in child process:', data.toString('utf-8'));
});

위 코드는 부모 프로세스에서 spawn으로 자식 프로세스를 생성하고 바이너리 데이터를 생성하여 자식 프로세스로 전송하는 예제입니다. 자식 프로세스에서는 process.stdin을 사용하여 데이터를 받고 콘솔에 출력합니다.

이와 같은 방식을 사용하여 바이너리 데이터를 프로세스 간에 전송할 수 있습니다. 이외에도 웹 소켓이나 원격 프로시저 호출(RPC)과 같은 기술을 사용하여 프로세스 간 통신을 구현할 수도 있습니다.

더 자세한 정보를 원하시면 아래 Node.js 공식 문서를 참고하세요. https://nodejs.org/api/child_process.html#child_process_options_stdio